avantgate 1.1.2 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/adapters/custom-adapter.d.ts +50 -0
- package/dist/agent/adapters/custom-adapter.d.ts.map +1 -0
- package/dist/agent/adapters/index.d.ts +6 -0
- package/dist/agent/adapters/index.d.ts.map +1 -0
- package/dist/agent/adapters/memory-adapter.d.ts +34 -0
- package/dist/agent/adapters/memory-adapter.d.ts.map +1 -0
- package/dist/agent/adapters/platform-adapter.d.ts +32 -0
- package/dist/agent/adapters/platform-adapter.d.ts.map +1 -0
- package/dist/agent/adapters/prisma-adapter.d.ts +55 -0
- package/dist/agent/adapters/prisma-adapter.d.ts.map +1 -0
- package/dist/agent/adapters/sqlite-adapter.d.ts +31 -0
- package/dist/agent/adapters/sqlite-adapter.d.ts.map +1 -0
- package/dist/agent/dto.d.ts +32 -0
- package/dist/agent/dto.d.ts.map +1 -0
- package/dist/agent/errors.d.ts +50 -0
- package/dist/agent/errors.d.ts.map +1 -0
- package/dist/agent/factory.d.ts +21 -0
- package/dist/agent/factory.d.ts.map +1 -0
- package/dist/agent/guardrails.d.ts +14 -0
- package/dist/agent/guardrails.d.ts.map +1 -0
- package/dist/agent/index.d.ts +17 -742
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/agent/index.js +203 -18
- package/dist/agent/index.mjs +202 -18
- package/dist/agent/isolated-tool.d.ts +9 -0
- package/dist/agent/isolated-tool.d.ts.map +1 -0
- package/dist/agent/registry.d.ts +71 -0
- package/dist/agent/registry.d.ts.map +1 -0
- package/dist/agent/step-runner.d.ts +12 -0
- package/dist/agent/step-runner.d.ts.map +1 -0
- package/dist/agent/strategy.d.ts +37 -0
- package/dist/agent/strategy.d.ts.map +1 -0
- package/dist/agent/telemetry/http-exporter.d.ts +24 -0
- package/dist/agent/telemetry/http-exporter.d.ts.map +1 -0
- package/dist/agent/telemetry/index.d.ts +3 -0
- package/dist/agent/telemetry/index.d.ts.map +1 -0
- package/dist/agent/telemetry/types.d.ts +92 -0
- package/dist/agent/telemetry/types.d.ts.map +1 -0
- package/dist/agent/tool-invoker.d.ts +17 -0
- package/dist/agent/tool-invoker.d.ts.map +1 -0
- package/dist/agent/tool-state.d.ts +7 -0
- package/dist/agent/tool-state.d.ts.map +1 -0
- package/dist/agent/types.d.ts +243 -0
- package/dist/agent/types.d.ts.map +1 -0
- package/dist/control-layer.d.ts +49 -0
- package/dist/control-layer.d.ts.map +1 -0
- package/dist/finance/factory.d.ts +11 -0
- package/dist/finance/factory.d.ts.map +1 -0
- package/dist/finance/index.d.ts +9 -76
- package/dist/finance/index.d.ts.map +1 -0
- package/dist/finance/normalizer.d.ts +19 -0
- package/dist/finance/normalizer.d.ts.map +1 -0
- package/dist/finance/strategies/french-pcg.strategy.d.ts +10 -0
- package/dist/finance/strategies/french-pcg.strategy.d.ts.map +1 -0
- package/dist/finance/strategies/international.strategy.d.ts +10 -0
- package/dist/finance/strategies/international.strategy.d.ts.map +1 -0
- package/dist/finance/strategies/swiss-co.strategy.d.ts +10 -0
- package/dist/finance/strategies/swiss-co.strategy.d.ts.map +1 -0
- package/dist/finance/strategies/uk-ifrs.strategy.d.ts +10 -0
- package/dist/finance/strategies/uk-ifrs.strategy.d.ts.map +1 -0
- package/dist/finance/strategies/us-gaap.strategy.d.ts +10 -0
- package/dist/finance/strategies/us-gaap.strategy.d.ts.map +1 -0
- package/dist/{strategy.interface-CB4_ZAuk.d.ts → finance/strategy.interface.d.ts} +5 -6
- package/dist/finance/strategy.interface.d.ts.map +1 -0
- package/dist/index.d.ts +9 -390
- package/dist/index.d.ts.map +1 -0
- package/dist/input-guard.d.ts +13 -0
- package/dist/input-guard.d.ts.map +1 -0
- package/dist/pricing.d.ts +49 -0
- package/dist/pricing.d.ts.map +1 -0
- package/dist/prompts/index.d.ts +5 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/prompt-builder.d.ts +31 -0
- package/dist/prompts/prompt-builder.d.ts.map +1 -0
- package/dist/prompts/prompt-registry.d.ts +13 -0
- package/dist/prompts/prompt-registry.d.ts.map +1 -0
- package/dist/prompts/prompt-template.d.ts +17 -0
- package/dist/prompts/prompt-template.d.ts.map +1 -0
- package/dist/prompts/types.d.ts +39 -0
- package/dist/prompts/types.d.ts.map +1 -0
- package/dist/providers/http-client.d.ts +18 -0
- package/dist/providers/http-client.d.ts.map +1 -0
- package/dist/response-validator.d.ts +18 -0
- package/dist/response-validator.d.ts.map +1 -0
- package/dist/sanitizer.d.ts +11 -0
- package/dist/sanitizer.d.ts.map +1 -0
- package/dist/types.d.ts +146 -0
- package/dist/types.d.ts.map +1 -0
- package/package.json +3 -3
- package/dist/agent/index.d.mts +0 -743
- package/dist/finance/index.d.mts +0 -76
- package/dist/index.d.mts +0 -390
- package/dist/strategy.interface-CB4_ZAuk.d.mts +0 -16
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { RegisteredTool, ToolDescriptor, VercelAiCoreTool } from "./types";
|
|
2
|
+
export interface ToRecordOptions {
|
|
3
|
+
anonymize?: boolean;
|
|
4
|
+
domain?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface ToolDescriptorFilter {
|
|
7
|
+
domain?: string;
|
|
8
|
+
role?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Centralized catalog for managing and filtering tools with permissions, domains and metadata.
|
|
12
|
+
* Supports O(1) Key-Value lookup by technical ID and by public alias.
|
|
13
|
+
*/
|
|
14
|
+
export declare class ToolRegistry {
|
|
15
|
+
private readonly toolsById;
|
|
16
|
+
private readonly toolsByPublicName;
|
|
17
|
+
/**
|
|
18
|
+
* Registers a new tool in the registry.
|
|
19
|
+
*/
|
|
20
|
+
register(toolDef: RegisteredTool | VercelAiCoreTool): this;
|
|
21
|
+
/**
|
|
22
|
+
* Registers multiple tools in batch.
|
|
23
|
+
*/
|
|
24
|
+
registerMany(tools: (RegisteredTool | VercelAiCoreTool)[]): this;
|
|
25
|
+
/**
|
|
26
|
+
* Retrieves a tool by its ID or public name/alias.
|
|
27
|
+
*/
|
|
28
|
+
get(idOrName: string): RegisteredTool | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* Retrieves a tool strictly by its immutable technical ID (O(1)).
|
|
31
|
+
*/
|
|
32
|
+
getById(id: string): RegisteredTool | undefined;
|
|
33
|
+
/**
|
|
34
|
+
* Retrieves a tool by its public alias seen by the LLM (O(1)).
|
|
35
|
+
*/
|
|
36
|
+
getByPublicName(publicName: string): RegisteredTool | undefined;
|
|
37
|
+
/**
|
|
38
|
+
* Checks if a tool is registered by ID or public name.
|
|
39
|
+
*/
|
|
40
|
+
has(idOrName: string): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Returns all registered tools without duplicates.
|
|
43
|
+
*/
|
|
44
|
+
getAll(): RegisteredTool[];
|
|
45
|
+
/**
|
|
46
|
+
* Filters tools belonging to a specific business domain.
|
|
47
|
+
*/
|
|
48
|
+
getByDomain(domain: string): RegisteredTool[];
|
|
49
|
+
/**
|
|
50
|
+
* Filters tools matching a specific workflow phase.
|
|
51
|
+
*/
|
|
52
|
+
getByPhase(phase: string): RegisteredTool[];
|
|
53
|
+
/**
|
|
54
|
+
* Filters tools matching the user's roles (RBAC).
|
|
55
|
+
*/
|
|
56
|
+
filterByRoles(userRoles: string[]): RegisteredTool[];
|
|
57
|
+
/**
|
|
58
|
+
* Exports headless technical descriptors without UI rendering coupling.
|
|
59
|
+
*/
|
|
60
|
+
getDescriptors(filter?: ToolDescriptorFilter): ToolDescriptor[];
|
|
61
|
+
/**
|
|
62
|
+
* Converts instance registered tools to the record map format required by Vercel AI SDK.
|
|
63
|
+
*/
|
|
64
|
+
toRecord(options?: ToRecordOptions): Record<string, VercelAiCoreTool>;
|
|
65
|
+
/**
|
|
66
|
+
* Converts a list of registered tools to the record map format required by Vercel AI SDK.
|
|
67
|
+
* If anonymize is true, uses alias (if defined) as dictionary key instead of technical name.
|
|
68
|
+
*/
|
|
69
|
+
static toRecord(tools: RegisteredTool[], options?: ToRecordOptions): Record<string, VercelAiCoreTool>;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/agent/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhF,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAoED;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqC;IAC/D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqC;IAEvE;;OAEG;IACI,QAAQ,CAAC,OAAO,EAAE,cAAc,GAAG,gBAAgB,GAAG,IAAI;IASjE;;OAEG;IACI,YAAY,CAAC,KAAK,EAAE,CAAC,cAAc,GAAG,gBAAgB,CAAC,EAAE,GAAG,IAAI;IAOvE;;OAEG;IACI,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAIxD;;OAEG;IACI,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAItD;;OAEG;IACI,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAItE;;OAEG;IACI,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIrC;;OAEG;IACI,MAAM,IAAI,cAAc,EAAE;IAIjC;;OAEG;IACI,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE;IAIpD;;OAEG;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,EAAE;IASlD;;OAEG;IACI,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE;IAW3D;;OAEG;IACI,cAAc,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,cAAc,EAAE;IAWtE;;OAEG;IACI,QAAQ,CAAC,OAAO,GAAE,eAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAIhF;;;OAGG;WACW,QAAQ,CACpB,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,GAAE,eAAoB,GAC5B,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC;CAYpC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { StepRunnerConfig, StepRunnerContext, StepStorageAdapter } from "./types";
|
|
2
|
+
export interface StepRunnerInstance extends StepRunnerContext {
|
|
3
|
+
storage: StepStorageAdapter;
|
|
4
|
+
approveStep<T = unknown>(stepId: string, approvalData?: T): Promise<void>;
|
|
5
|
+
rejectStep(stepId: string, reason?: string): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Creates a serverless durable step runner for stateful multi-step agent execution
|
|
9
|
+
* with automatic idempotence and Human-in-the-Loop approval capability.
|
|
10
|
+
*/
|
|
11
|
+
export declare function createStepRunner(config: StepRunnerConfig): StepRunnerInstance;
|
|
12
|
+
//# sourceMappingURL=step-runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-runner.d.ts","sourceRoot":"","sources":["../../src/agent/step-runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAGV,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,OAAO,EAAE,kBAAkB,CAAC;IAC5B,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1E,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AAkGD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,kBAAkB,CA0B7E"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { RegisteredTool, ToolContext, ToolSelectionStrategy, VercelAiCoreTool } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* Strategy selecting tools that match the current workflow phase.
|
|
4
|
+
*/
|
|
5
|
+
export declare class PhaseBasedToolStrategy implements ToolSelectionStrategy {
|
|
6
|
+
selectTools(tools: RegisteredTool[], context: ToolContext): RegisteredTool[];
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Strategy selecting tools permitted for the user's role (RBAC).
|
|
10
|
+
*/
|
|
11
|
+
export declare class RoleBasedToolStrategy implements ToolSelectionStrategy {
|
|
12
|
+
selectTools(tools: RegisteredTool[], context: ToolContext): RegisteredTool[];
|
|
13
|
+
}
|
|
14
|
+
export interface AccessControlToolStrategyOptions {
|
|
15
|
+
allowedDomains?: string[];
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Unified strategy evaluating role, permissions and allowed business domains in a single pass.
|
|
19
|
+
*/
|
|
20
|
+
export declare class AccessControlToolStrategy implements ToolSelectionStrategy {
|
|
21
|
+
private readonly allowedDomains?;
|
|
22
|
+
constructor(options?: AccessControlToolStrategyOptions);
|
|
23
|
+
selectTools(tools: RegisteredTool[], context: ToolContext): RegisteredTool[];
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Composite strategy applying multiple selection strategies sequentially (intersection).
|
|
27
|
+
*/
|
|
28
|
+
export declare class CompositeToolStrategy implements ToolSelectionStrategy {
|
|
29
|
+
private readonly strategies;
|
|
30
|
+
constructor(strategies: ToolSelectionStrategy[]);
|
|
31
|
+
selectTools(tools: RegisteredTool[], context: ToolContext): Promise<RegisteredTool[]>;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Convenience helper to execute a strategy and convert selected tools to Vercel AI SDK format.
|
|
35
|
+
*/
|
|
36
|
+
export declare function applyToolStrategy(tools: RegisteredTool[], strategy: ToolSelectionStrategy, context: ToolContext): Promise<Record<string, VercelAiCoreTool>>;
|
|
37
|
+
//# sourceMappingURL=strategy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strategy.d.ts","sourceRoot":"","sources":["../../src/agent/strategy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,qBAAqB,EACrB,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,qBAAa,sBAAuB,YAAW,qBAAqB;IAC3D,WAAW,CAChB,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,EAAE,WAAW,GACnB,cAAc,EAAE;CAYpB;AAED;;GAEG;AACH,qBAAa,qBAAsB,YAAW,qBAAqB;IAC1D,WAAW,CAChB,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,EAAE,WAAW,GACnB,cAAc,EAAE;CAgBpB;AAED,MAAM,WAAW,gCAAgC;IAC/C,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAmCD;;GAEG;AACH,qBAAa,yBAA0B,YAAW,qBAAqB;IACrE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAc;gBAElC,OAAO,CAAC,EAAE,gCAAgC;IAM/C,WAAW,CAChB,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,EAAE,WAAW,GACnB,cAAc,EAAE;CAQpB;AAED;;GAEG;AACH,qBAAa,qBAAsB,YAAW,qBAAqB;IACjE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA0B;gBAEzC,UAAU,EAAE,qBAAqB,EAAE;IAIlC,WAAW,CACtB,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,EAAE,CAAC;CAO7B;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,cAAc,EAAE,EACvB,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAG3C"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { HttpTelemetryExporterOptions, TelemetryEvent, TelemetryUsageSummary } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* Asynchronous, zero-dependency HTTP Telemetry Exporter for the avantGate platform.
|
|
4
|
+
* Batches events in memory and sends them in background without blocking agent execution.
|
|
5
|
+
*/
|
|
6
|
+
export declare class HttpTelemetryExporter {
|
|
7
|
+
private readonly apiKey;
|
|
8
|
+
private readonly endpoint;
|
|
9
|
+
private readonly agentName?;
|
|
10
|
+
private readonly batchIntervalMs;
|
|
11
|
+
private readonly maxBatchSize;
|
|
12
|
+
private readonly maxQueueSize;
|
|
13
|
+
private readonly fetchFn;
|
|
14
|
+
private readonly onError?;
|
|
15
|
+
private queue;
|
|
16
|
+
private timer;
|
|
17
|
+
private isFlushing;
|
|
18
|
+
constructor(options: HttpTelemetryExporterOptions);
|
|
19
|
+
private startTimer;
|
|
20
|
+
enqueue(runId: string, event: TelemetryEvent, usage?: TelemetryUsageSummary): void;
|
|
21
|
+
flush(): Promise<void>;
|
|
22
|
+
shutdown(): Promise<void>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=http-exporter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-exporter.d.ts","sourceRoot":"","sources":["../../../src/agent/telemetry/http-exporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,4BAA4B,EAC5B,cAAc,EAEd,qBAAqB,EACtB,MAAM,SAAS,CAAC;AA6EjB;;;GAGG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAyB;IAElD,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,UAAU,CAAS;gBAEf,OAAO,EAAE,4BAA4B;IAajD,OAAO,CAAC,UAAU;IAWX,OAAO,CACZ,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,cAAc,EACrB,KAAK,CAAC,EAAE,qBAAqB,GAC5B,IAAI;IAWM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BtB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAOvC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agent/telemetry/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supported telemetry event types for the avantGate observability platform.
|
|
3
|
+
*/
|
|
4
|
+
export type TelemetryEventType = "STEP_START" | "STEP_COMPLETED" | "STEP_FAILED" | "STEP_APPROVAL_REQUEST" | "TOOL_EXECUTION";
|
|
5
|
+
/**
|
|
6
|
+
* Base properties shared across all telemetry events.
|
|
7
|
+
*/
|
|
8
|
+
export interface BaseTelemetryEvent {
|
|
9
|
+
type: TelemetryEventType;
|
|
10
|
+
timestamp: string;
|
|
11
|
+
}
|
|
12
|
+
export interface StepStartEvent extends BaseTelemetryEvent {
|
|
13
|
+
type: "STEP_START";
|
|
14
|
+
stepName: string;
|
|
15
|
+
metadata?: Record<string, unknown>;
|
|
16
|
+
}
|
|
17
|
+
export interface StepCompletedEvent extends BaseTelemetryEvent {
|
|
18
|
+
type: "STEP_COMPLETED";
|
|
19
|
+
stepName: string;
|
|
20
|
+
durationMs?: number;
|
|
21
|
+
piiDetectedCount?: number;
|
|
22
|
+
resultSummary?: unknown;
|
|
23
|
+
metadata?: Record<string, unknown>;
|
|
24
|
+
}
|
|
25
|
+
export interface StepFailedEvent extends BaseTelemetryEvent {
|
|
26
|
+
type: "STEP_FAILED";
|
|
27
|
+
stepName: string;
|
|
28
|
+
durationMs?: number;
|
|
29
|
+
error: string;
|
|
30
|
+
}
|
|
31
|
+
export interface StepApprovalRequestEvent extends BaseTelemetryEvent {
|
|
32
|
+
type: "STEP_APPROVAL_REQUEST";
|
|
33
|
+
stepName: string;
|
|
34
|
+
actionType?: string;
|
|
35
|
+
payloadSummary?: unknown;
|
|
36
|
+
}
|
|
37
|
+
export interface ToolExecutionTelemetryEvent extends BaseTelemetryEvent {
|
|
38
|
+
type: "TOOL_EXECUTION";
|
|
39
|
+
toolId: string;
|
|
40
|
+
toolName: string;
|
|
41
|
+
aliasUsed?: string;
|
|
42
|
+
durationMs: number;
|
|
43
|
+
success: boolean;
|
|
44
|
+
parentToolId?: string;
|
|
45
|
+
depth?: number;
|
|
46
|
+
llmSummary?: unknown;
|
|
47
|
+
piiFilteredCount?: number;
|
|
48
|
+
tokenCount?: number;
|
|
49
|
+
tokens?: {
|
|
50
|
+
promptTokens?: number;
|
|
51
|
+
completionTokens?: number;
|
|
52
|
+
totalTokens?: number;
|
|
53
|
+
};
|
|
54
|
+
costUsd?: number;
|
|
55
|
+
cached?: boolean;
|
|
56
|
+
error?: string;
|
|
57
|
+
}
|
|
58
|
+
export type TelemetryEvent = StepStartEvent | StepCompletedEvent | StepFailedEvent | StepApprovalRequestEvent | ToolExecutionTelemetryEvent;
|
|
59
|
+
/**
|
|
60
|
+
* Consolidates token usage and FinOps metrics for a batch or run.
|
|
61
|
+
*/
|
|
62
|
+
export interface TelemetryUsageSummary {
|
|
63
|
+
model?: string;
|
|
64
|
+
promptTokens?: number;
|
|
65
|
+
completionTokens?: number;
|
|
66
|
+
totalTokens?: number;
|
|
67
|
+
costUsd?: number;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Payload schema ingested by POST /api/v1/ingest/events according to DESIGN-005 §5.1.
|
|
71
|
+
*/
|
|
72
|
+
export interface TelemetryIngestPayload {
|
|
73
|
+
runId: string;
|
|
74
|
+
agentName?: string;
|
|
75
|
+
timestamp: string;
|
|
76
|
+
events: TelemetryEvent[];
|
|
77
|
+
usage?: TelemetryUsageSummary;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Configuration options for the HTTP Telemetry Exporter.
|
|
81
|
+
*/
|
|
82
|
+
export interface HttpTelemetryExporterOptions {
|
|
83
|
+
apiKey: string;
|
|
84
|
+
endpoint?: string;
|
|
85
|
+
agentName?: string;
|
|
86
|
+
batchIntervalMs?: number;
|
|
87
|
+
maxBatchSize?: number;
|
|
88
|
+
maxQueueSize?: number;
|
|
89
|
+
fetchFn?: typeof fetch;
|
|
90
|
+
onError?: (error: Error) => void;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agent/telemetry/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ToolRegistry } from "./registry";
|
|
2
|
+
import type { StepStorageAdapter, ToolExecutionContext } from "./types";
|
|
3
|
+
export interface ToolInvokerOptions {
|
|
4
|
+
maxDepth?: number;
|
|
5
|
+
maxTotalSubCalls?: number;
|
|
6
|
+
workflowId?: string;
|
|
7
|
+
stepId?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface ToolInvoker {
|
|
10
|
+
invokeTool<TResult = unknown>(toolId: string, args: unknown, context?: ToolExecutionContext): Promise<TResult>;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Creates an intelligent, concurrency-safe tool invoker with cycle detection,
|
|
14
|
+
* depth guard, result caching, and database execution tracing.
|
|
15
|
+
*/
|
|
16
|
+
export declare function createToolInvoker(registry: ToolRegistry, storage?: StepStorageAdapter, options?: ToolInvokerOptions): ToolInvoker;
|
|
17
|
+
//# sourceMappingURL=tool-invoker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-invoker.d.ts","sourceRoot":"","sources":["../../src/agent/tool-invoker.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EAErB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,OAAO,GAAG,OAAO,EAC1B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB;AA0CD;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,YAAY,EACtB,OAAO,CAAC,EAAE,kBAAkB,EAC5B,OAAO,GAAE,kBAAuB,GAC/B,WAAW,CAqHb"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { StepStorageAdapter, ToolSharedState } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* Creates a shared blackboard state instance for inter-tool data sharing.
|
|
4
|
+
* Backed by the persistent storage adapter if available, otherwise runs in-memory.
|
|
5
|
+
*/
|
|
6
|
+
export declare function createToolSharedState(storage?: StepStorageAdapter): ToolSharedState;
|
|
7
|
+
//# sourceMappingURL=tool-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-state.d.ts","sourceRoot":"","sources":["../../src/agent/tool-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAOnE;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,eAAe,CAgDjB"}
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import type { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* Lifecycle status for durable agent workflow steps.
|
|
4
|
+
*/
|
|
5
|
+
export type StepStatus = "PENDING" | "RUNNING" | "COMPLETED" | "FAILED" | "WAITING_APPROVAL";
|
|
6
|
+
/**
|
|
7
|
+
* Token usage metrics for LLM calls and tool executions.
|
|
8
|
+
*/
|
|
9
|
+
export interface TokenUsage {
|
|
10
|
+
promptTokens?: number;
|
|
11
|
+
completionTokens?: number;
|
|
12
|
+
totalTokens?: number;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Record representing a durable step stored in persistence.
|
|
16
|
+
*/
|
|
17
|
+
export interface StepRecord<TResult = unknown> {
|
|
18
|
+
workflowId: string;
|
|
19
|
+
stepId: string;
|
|
20
|
+
runId?: string;
|
|
21
|
+
status: StepStatus;
|
|
22
|
+
result?: TResult;
|
|
23
|
+
error?: string;
|
|
24
|
+
piiDetectedCount?: number;
|
|
25
|
+
tokens?: TokenUsage;
|
|
26
|
+
costUsd?: number;
|
|
27
|
+
metadata?: Record<string, unknown>;
|
|
28
|
+
createdAt: string;
|
|
29
|
+
updatedAt: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Record representing a durable tool execution stored in persistence for hierarchical tracing.
|
|
33
|
+
*/
|
|
34
|
+
export interface ToolExecutionRecord {
|
|
35
|
+
executionId: string;
|
|
36
|
+
workflowId?: string;
|
|
37
|
+
stepId?: string;
|
|
38
|
+
runId?: string;
|
|
39
|
+
toolId: string;
|
|
40
|
+
parentToolId?: string;
|
|
41
|
+
aliasUsed?: string;
|
|
42
|
+
depth: number;
|
|
43
|
+
inputArgs?: unknown;
|
|
44
|
+
outputSummary?: unknown;
|
|
45
|
+
durationMs: number;
|
|
46
|
+
status: "SUCCESS" | "FAILED";
|
|
47
|
+
error?: string;
|
|
48
|
+
cached?: boolean;
|
|
49
|
+
piiFilteredCount?: number;
|
|
50
|
+
tokens?: TokenUsage;
|
|
51
|
+
costUsd?: number;
|
|
52
|
+
createdAt: string;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Shared Blackboard state interface enabling inter-tool data exchange without context pollution.
|
|
56
|
+
*/
|
|
57
|
+
export interface ToolSharedState {
|
|
58
|
+
get<T = unknown>(key: string): Promise<T | null>;
|
|
59
|
+
set<T = unknown>(key: string, value: T, ttlSeconds?: number): Promise<void>;
|
|
60
|
+
delete(key: string): Promise<void>;
|
|
61
|
+
clear?(): Promise<void>;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Hexagonal Port Interface: Pure abstract storage contract.
|
|
65
|
+
* Any storage backend (Prisma, Drizzle, Kysely, SQLite, Mongo, Redis, Supabase)
|
|
66
|
+
* can plug into avantgate/agent by implementing this contract.
|
|
67
|
+
*/
|
|
68
|
+
export interface StepStorageAdapter {
|
|
69
|
+
getStep<T = unknown>(workflowId: string, stepId: string): Promise<StepRecord<T> | null>;
|
|
70
|
+
saveStep<T = unknown>(step: StepRecord<T>): Promise<void>;
|
|
71
|
+
updateStepStatus<T = unknown>(workflowId: string, stepId: string, status: StepStatus, patch?: Partial<StepRecord<T>>): Promise<void>;
|
|
72
|
+
listSteps(workflowId: string): Promise<StepRecord[]>;
|
|
73
|
+
saveToolExecution?(record: ToolExecutionRecord): Promise<void>;
|
|
74
|
+
listToolExecutions?(workflowId?: string, stepId?: string): Promise<ToolExecutionRecord[]>;
|
|
75
|
+
getCachedToolResult?<T = unknown>(cacheKey: string): Promise<T | null>;
|
|
76
|
+
setCachedToolResult?<T = unknown>(cacheKey: string, result: T, ttlSeconds: number): Promise<void>;
|
|
77
|
+
getStateValue?<T = unknown>(key: string): Promise<T | null>;
|
|
78
|
+
setStateValue?<T = unknown>(key: string, value: T, ttlSeconds?: number): Promise<void>;
|
|
79
|
+
deleteStateValue?(key: string): Promise<void>;
|
|
80
|
+
clearStateValues?(): Promise<void>;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Options for step approval in Human-in-the-Loop workflows.
|
|
84
|
+
*/
|
|
85
|
+
export interface StepApprovalOptions<T = unknown> {
|
|
86
|
+
prompt?: string;
|
|
87
|
+
metadata?: Record<string, unknown>;
|
|
88
|
+
defaultResult?: T;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Execution context passed to workflow handlers.
|
|
92
|
+
*/
|
|
93
|
+
export interface StepRunnerContext {
|
|
94
|
+
workflowId: string;
|
|
95
|
+
run<T>(stepId: string, executeFn: () => Promise<T>): Promise<T>;
|
|
96
|
+
waitForApproval<T = unknown>(stepId: string, options?: StepApprovalOptions<T>): Promise<T>;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Configuration options for creating a durable step runner.
|
|
100
|
+
*/
|
|
101
|
+
export interface StepRunnerConfig {
|
|
102
|
+
workflowId: string;
|
|
103
|
+
runId?: string;
|
|
104
|
+
storage?: StepStorageAdapter;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Context received by tool execution, supporting inter-tool chaining and shared state.
|
|
108
|
+
*/
|
|
109
|
+
export interface ToolExecutionContext {
|
|
110
|
+
toolCallId?: string;
|
|
111
|
+
messages?: unknown[];
|
|
112
|
+
abortSignal?: AbortSignal;
|
|
113
|
+
workflowId?: string;
|
|
114
|
+
runId?: string;
|
|
115
|
+
stepId?: string;
|
|
116
|
+
callChain?: readonly string[];
|
|
117
|
+
callTool?: <TResult = unknown>(toolId: string, args: unknown) => Promise<TResult>;
|
|
118
|
+
state?: ToolSharedState;
|
|
119
|
+
storage?: StepStorageAdapter;
|
|
120
|
+
tokens?: TokenUsage;
|
|
121
|
+
costUsd?: number;
|
|
122
|
+
onInvalidationTags?: (tags: string[]) => void | Promise<void>;
|
|
123
|
+
[key: string]: unknown;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* User and environment context injected into tools.
|
|
127
|
+
*/
|
|
128
|
+
export interface ToolContext {
|
|
129
|
+
userId?: string;
|
|
130
|
+
tenantId?: string;
|
|
131
|
+
role?: string;
|
|
132
|
+
roles?: string[];
|
|
133
|
+
permissions?: string[];
|
|
134
|
+
phase?: string;
|
|
135
|
+
metadata?: Record<string, unknown>;
|
|
136
|
+
[key: string]: unknown;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Projection function converting raw tool result, input arguments and execution context
|
|
140
|
+
* into a safe, minimal LLM DTO.
|
|
141
|
+
*/
|
|
142
|
+
export type LLMDtoMapper<TArgs = any, TResult = any, TLLMDto = unknown> = (result: TResult, args: TArgs, context?: ToolExecutionContext) => TLLMDto | Promise<TLLMDto>;
|
|
143
|
+
/**
|
|
144
|
+
* Out-of-band callback streaming raw or rich tool data directly to the client UI.
|
|
145
|
+
*/
|
|
146
|
+
export type ClientDtoCallback<TResult = unknown> = (data: TResult) => void | Promise<void>;
|
|
147
|
+
/**
|
|
148
|
+
* Universal resource invalidation tags generator (string[] or function).
|
|
149
|
+
*/
|
|
150
|
+
export type InvalidationTagsResolver<TArgs = any, TResult = any> = string[] | ((args: TArgs, result?: TResult) => string[] | Promise<string[]>);
|
|
151
|
+
/**
|
|
152
|
+
* Guardrail hook for data access control (anti-IDOR) executed prior to tool execution.
|
|
153
|
+
*/
|
|
154
|
+
export type DataAccessGuard<TArgs = any> = (args: TArgs, context?: ToolExecutionContext) => boolean | Promise<boolean>;
|
|
155
|
+
/**
|
|
156
|
+
* Configuration for creating an isolated tool with PII protection, Dual-Channel DTO,
|
|
157
|
+
* access governance, stable ID, aliasing and caching.
|
|
158
|
+
*/
|
|
159
|
+
export interface IsolatedToolConfig<TArgs = any, TResult = any, TLLMDto = unknown, TClientDto = TResult> {
|
|
160
|
+
id?: string;
|
|
161
|
+
name: string;
|
|
162
|
+
alias?: string;
|
|
163
|
+
description: string;
|
|
164
|
+
domain?: string;
|
|
165
|
+
resource?: string;
|
|
166
|
+
roles?: string[];
|
|
167
|
+
permissions?: string[];
|
|
168
|
+
requireApproval?: boolean;
|
|
169
|
+
dataAccessGuard?: DataAccessGuard<TArgs>;
|
|
170
|
+
invalidationTags?: InvalidationTagsResolver<TArgs, TResult>;
|
|
171
|
+
parameters: z.ZodType<TArgs> | unknown;
|
|
172
|
+
cacheTTL?: number;
|
|
173
|
+
execute: (args: TArgs, context?: ToolExecutionContext) => Promise<TResult>;
|
|
174
|
+
llmDto?: LLMDtoMapper<TArgs, TResult, TLLMDto>;
|
|
175
|
+
clientDto?: ClientDtoCallback<TClientDto>;
|
|
176
|
+
llmDtoSchema?: z.ZodType<TLLMDto>;
|
|
177
|
+
sanitizePii?: boolean;
|
|
178
|
+
throwOnPii?: boolean;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Standard tool contract compatible with Vercel AI SDK (ai) tool definition.
|
|
182
|
+
*/
|
|
183
|
+
export interface VercelAiCoreTool<TArgs = any, TResult = any> {
|
|
184
|
+
description: string;
|
|
185
|
+
parameters: any;
|
|
186
|
+
execute: (args: TArgs, context?: ToolExecutionContext) => Promise<TResult>;
|
|
187
|
+
/**
|
|
188
|
+
* Internal identifiers and metadata.
|
|
189
|
+
*/
|
|
190
|
+
readonly _toolId: string;
|
|
191
|
+
readonly _toolName: string;
|
|
192
|
+
readonly _toolAlias?: string;
|
|
193
|
+
readonly _isIsolated: boolean;
|
|
194
|
+
readonly _cacheTTL?: number;
|
|
195
|
+
readonly _domain?: string;
|
|
196
|
+
readonly _resource?: string;
|
|
197
|
+
readonly _roles?: readonly string[];
|
|
198
|
+
readonly _permissions?: readonly string[];
|
|
199
|
+
readonly _requireApproval?: boolean;
|
|
200
|
+
_lastPiiFilteredCount?: number;
|
|
201
|
+
_lastInvalidationTags?: string[];
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Metadata and descriptor for registered tools in the registry.
|
|
205
|
+
*/
|
|
206
|
+
export interface RegisteredTool<TArgs = any, TResult = any> {
|
|
207
|
+
id: string;
|
|
208
|
+
name: string;
|
|
209
|
+
alias?: string;
|
|
210
|
+
description: string;
|
|
211
|
+
domain?: string;
|
|
212
|
+
resource?: string;
|
|
213
|
+
roles?: string[];
|
|
214
|
+
permissions?: string[];
|
|
215
|
+
phases?: string[];
|
|
216
|
+
requiredRoles?: string[];
|
|
217
|
+
tags?: string[];
|
|
218
|
+
requireApproval?: boolean;
|
|
219
|
+
tool: VercelAiCoreTool<TArgs, TResult>;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Pure technical descriptor exportable to client applications without UI coupling.
|
|
223
|
+
*/
|
|
224
|
+
export interface ToolDescriptor {
|
|
225
|
+
id: string;
|
|
226
|
+
name: string;
|
|
227
|
+
alias?: string;
|
|
228
|
+
description: string;
|
|
229
|
+
domain?: string;
|
|
230
|
+
resource?: string;
|
|
231
|
+
roles?: string[];
|
|
232
|
+
permissions?: string[];
|
|
233
|
+
requireApproval?: boolean;
|
|
234
|
+
cacheTTL?: number;
|
|
235
|
+
tags?: string[];
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Strategy interface for dynamically selecting a subset of tools for LLM prompts.
|
|
239
|
+
*/
|
|
240
|
+
export interface ToolSelectionStrategy {
|
|
241
|
+
selectTools(tools: RegisteredTool[], context: ToolContext): RegisteredTool[] | Promise<RegisteredTool[]>;
|
|
242
|
+
}
|
|
243
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/agent/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { ControlLayerConfig, ExecutionResult, StructuredExecutionResult, GenerateStructuredOutputOptions, LLMProviderPort } from "./types";
|
|
3
|
+
export declare class AvantGateControlLayer {
|
|
4
|
+
private config;
|
|
5
|
+
private cachedPricingAdapter?;
|
|
6
|
+
constructor(config: ControlLayerConfig);
|
|
7
|
+
private resolveProviderConfig;
|
|
8
|
+
private findProviderConfig;
|
|
9
|
+
private calculateCost;
|
|
10
|
+
private applySecurityGuards;
|
|
11
|
+
private checkPreflightBudget;
|
|
12
|
+
private checkPostExecutionBudget;
|
|
13
|
+
private buildMessages;
|
|
14
|
+
private resolveTokens;
|
|
15
|
+
private getProviderChain;
|
|
16
|
+
private executeSimulation;
|
|
17
|
+
private executeOverrideProvider;
|
|
18
|
+
private executeProviderPipeline;
|
|
19
|
+
private assembleResult;
|
|
20
|
+
private notifyAuditSink;
|
|
21
|
+
/**
|
|
22
|
+
* Exécute une requête avec garde d'entrée, masquage PII, garde pré-vol et calcul des coûts.
|
|
23
|
+
*/
|
|
24
|
+
execute(options: {
|
|
25
|
+
userQuery: string;
|
|
26
|
+
systemPrompt?: string;
|
|
27
|
+
temperature?: number;
|
|
28
|
+
providerOverride?: LLMProviderPort;
|
|
29
|
+
}): Promise<ExecutionResult>;
|
|
30
|
+
/**
|
|
31
|
+
* Exécute une requête et valide/répare le résultat selon un schéma Zod.
|
|
32
|
+
*/
|
|
33
|
+
executeStructured<T>(options: {
|
|
34
|
+
userQuery: string;
|
|
35
|
+
systemPrompt?: string;
|
|
36
|
+
schema: z.ZodType<T>;
|
|
37
|
+
temperature?: number;
|
|
38
|
+
providerOverride?: LLMProviderPort;
|
|
39
|
+
}): Promise<StructuredExecutionResult<T>>;
|
|
40
|
+
/**
|
|
41
|
+
* Méthode unifiée de premier niveau pour l'extraction structurée sans code boilerplate.
|
|
42
|
+
* Gère le failover multi-fournisseurs, les retries, la validation Zod et la normalisation financière.
|
|
43
|
+
*/
|
|
44
|
+
generateStructuredOutput<T>(options: GenerateStructuredOutputOptions<T>): Promise<StructuredExecutionResult<T>>;
|
|
45
|
+
}
|
|
46
|
+
export declare function createLLMControlLayer(config: ControlLayerConfig): AvantGateControlLayer;
|
|
47
|
+
export declare const createAvantGate: typeof createLLMControlLayer;
|
|
48
|
+
export { AvantGateControlLayer as ZenLLMControlLayer };
|
|
49
|
+
//# sourceMappingURL=control-layer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"control-layer.d.ts","sourceRoot":"","sources":["../src/control-layer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,yBAAyB,EACzB,+BAA+B,EAC/B,eAAe,EAIhB,MAAM,SAAS,CAAC;AAgBjB,qBAAa,qBAAqB;IAChC,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,oBAAoB,CAAC,CAAuB;gBAExC,MAAM,EAAE,kBAAkB;IAgBtC,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,mBAAmB;IAiB3B,OAAO,CAAC,oBAAoB;IAgC5B,OAAO,CAAC,wBAAwB;IAahC,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,iBAAiB;YAmBX,uBAAuB;YAqBvB,uBAAuB;IAiCrC,OAAO,CAAC,cAAc;YAsBR,eAAe;IAe7B;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,gBAAgB,CAAC,EAAE,eAAe,CAAC;KACpC,GAAG,OAAO,CAAC,eAAe,CAAC;IA6B5B;;OAEG;IACG,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAAE;QAClC,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,gBAAgB,CAAC,EAAE,eAAe,CAAC;KACpC,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;IA2BzC;;;OAGG;IACG,wBAAwB,CAAC,CAAC,EAC9B,OAAO,EAAE,+BAA+B,CAAC,CAAC,CAAC,GAC1C,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;CAsHzC;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,kBAAkB,GAAG,qBAAqB,CAEvF;AAED,eAAO,MAAM,eAAe,8BAAwB,CAAC;AACrD,OAAO,EAAE,qBAAqB,IAAI,kBAAkB,EAAE,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { IAccountingStrategy, FinancialJurisdictionCode } from "./strategy.interface";
|
|
2
|
+
export declare class AccountingFactory {
|
|
3
|
+
private static strategies;
|
|
4
|
+
private static detectionOrder;
|
|
5
|
+
private static initDefaults;
|
|
6
|
+
static registerStrategy(strategy: IAccountingStrategy): void;
|
|
7
|
+
static getStrategy(code?: FinancialJurisdictionCode): IAccountingStrategy;
|
|
8
|
+
static detectStrategy(documentText: string): IAccountingStrategy;
|
|
9
|
+
static resetDefaults(): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/finance/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,sBAAsB,CAAC;AAO9B,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAC,UAAU,CAAkE;IAC3F,OAAO,CAAC,MAAM,CAAC,cAAc,CAA6B;IAM1D,OAAO,CAAC,MAAM,CAAC,YAAY;WAcb,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;WASrD,WAAW,CAAC,IAAI,CAAC,EAAE,yBAAyB,GAAG,mBAAmB;WAWlE,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,mBAAmB;WASzD,aAAa,IAAI,IAAI;CAKpC"}
|