veryfront 0.1.878 → 0.1.879

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.
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import type { ParsedArgs } from "../../shared/types.js";
5
5
  export declare const parseGenerateArgs: (args: ParsedArgs) => import("../../shared/args.js").SafeParseResult<import("../../../src/extensions/schema/schema-validator.js").InferShape<{
6
- type: import("../../../src/internal-agents/schema.js").Schema<"prompt" | "page" | "api" | "agent" | "layout" | "resource" | "component" | "task" | "tool" | "integration" | "skill" | "workflow" | undefined>;
6
+ type: import("../../../src/internal-agents/schema.js").Schema<"prompt" | "page" | "api" | "agent" | "layout" | "resource" | "component" | "task" | "tool" | "integration" | "workflow" | "skill" | undefined>;
7
7
  name: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
8
8
  }>>;
9
9
  export declare function handleGenerateCommand(args: ParsedArgs): Promise<void>;
@@ -5,7 +5,7 @@ import type { InferSchema } from "../../../src/extensions/schema/index.js";
5
5
  import type { MCPTool } from "../tools.js";
6
6
  import { type ScaffoldResult } from "../../scaffold/engine.js";
7
7
  declare const getScaffoldInput: () => import("../../../src/internal-agents/schema.js").Schema<import("../../../src/extensions/schema/schema-validator.js").InferShape<{
8
- type: import("../../../src/internal-agents/schema.js").Schema<"prompt" | "page" | "api" | "agent" | "layout" | "resource" | "component" | "task" | "tool" | "skill" | "workflow">;
8
+ type: import("../../../src/internal-agents/schema.js").Schema<"prompt" | "page" | "api" | "agent" | "layout" | "resource" | "component" | "task" | "tool" | "workflow" | "skill">;
9
9
  name: import("../../../src/internal-agents/schema.js").Schema<string>;
10
10
  methods: import("../../../src/internal-agents/schema.js").Schema<string[] | undefined>;
11
11
  projectPath: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
package/esm/deno.d.ts CHANGED
@@ -61,6 +61,7 @@ declare namespace _default {
61
61
  "./extensions/compat": string;
62
62
  "./extensions/css": string;
63
63
  "./extensions/database": string;
64
+ "./extensions/eval": string;
64
65
  "./extensions/parser": string;
65
66
  "./extensions/sandbox": string;
66
67
  "./extensions/schema": string;
@@ -152,6 +153,7 @@ declare namespace _default {
152
153
  "veryfront/extensions/contracts": string;
153
154
  "veryfront/extensions/css": string;
154
155
  "veryfront/extensions/database": string;
156
+ "veryfront/extensions/eval": string;
155
157
  "veryfront/extensions/parser": string;
156
158
  "veryfront/extensions/sandbox": string;
157
159
  "veryfront/extensions/schema": string;
@@ -174,6 +176,7 @@ declare namespace _default {
174
176
  "#veryfront/errors": string;
175
177
  "#veryfront/eval": string;
176
178
  "#veryfront/eval/agent-service": string;
179
+ "#veryfront/extensions/eval": string;
177
180
  "#veryfront/html": string;
178
181
  "#veryfront/mcp": string;
179
182
  "#veryfront/middleware": string;
package/esm/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.878",
3
+ "version": "0.1.879",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "minimumDependencyAge": {
@@ -116,6 +116,7 @@ export default {
116
116
  "./extensions/compat": "./src/extensions/compat/index.ts",
117
117
  "./extensions/css": "./src/extensions/css/index.ts",
118
118
  "./extensions/database": "./src/extensions/database/index.ts",
119
+ "./extensions/eval": "./src/extensions/eval/index.ts",
119
120
  "./extensions/parser": "./src/extensions/parser/index.ts",
120
121
  "./extensions/sandbox": "./src/extensions/sandbox/index.ts",
121
122
  "./extensions/schema": "./src/extensions/schema/index.ts",
@@ -207,6 +208,7 @@ export default {
207
208
  "veryfront/extensions/contracts": "./src/extensions/contracts.ts",
208
209
  "veryfront/extensions/css": "./src/extensions/css/index.ts",
209
210
  "veryfront/extensions/database": "./src/extensions/database/index.ts",
211
+ "veryfront/extensions/eval": "./src/extensions/eval/index.ts",
210
212
  "veryfront/extensions/parser": "./src/extensions/parser/index.ts",
211
213
  "veryfront/extensions/sandbox": "./src/extensions/sandbox/index.ts",
212
214
  "veryfront/extensions/schema": "./src/extensions/schema/index.ts",
@@ -229,6 +231,7 @@ export default {
229
231
  "#veryfront/errors": "./src/errors/index.ts",
230
232
  "#veryfront/eval": "./src/eval/index.ts",
231
233
  "#veryfront/eval/agent-service": "./src/eval/agent-service.ts",
234
+ "#veryfront/extensions/eval": "./src/extensions/eval/index.ts",
232
235
  "#veryfront/html": "./src/html/index.ts",
233
236
  "#veryfront/mcp": "./src/mcp/index.ts",
234
237
  "#veryfront/middleware": "./src/middleware/index.ts",
@@ -11,20 +11,20 @@ export declare const CONTROL_PLANE_RUN_STREAM_PATH = "/api/control-plane/runs/:r
11
11
  /** Allowed control-plane surfaces — source of truth for the schema and {@link ControlPlaneSurface}. */
12
12
  export declare const CONTROL_PLANE_SURFACES: readonly ["studio", "channels", "a2a", "mcp"];
13
13
  /** Zod schema for get control plane surface. */
14
- export declare const getControlPlaneSurfaceSchema: () => Schema<"mcp" | "studio" | "channels" | "a2a">;
14
+ export declare const getControlPlaneSurfaceSchema: () => Schema<"mcp" | "channels" | "studio" | "a2a">;
15
15
  /** Zod schema for control plane surface. */
16
- export declare const ControlPlaneSurfaceSchema: Schema<"mcp" | "studio" | "channels" | "a2a">;
16
+ export declare const ControlPlaneSurfaceSchema: Schema<"mcp" | "channels" | "studio" | "a2a">;
17
17
  /** Zod schema for get control plane agents list request. */
18
18
  export declare const getControlPlaneAgentsListRequestSchema: () => Schema<import("../extensions/schema/schema-validator.js").InferShape<{
19
19
  requestId: Schema<string>;
20
20
  projectId: Schema<string>;
21
- surface: Schema<"mcp" | "studio" | "channels" | "a2a">;
21
+ surface: Schema<"mcp" | "channels" | "studio" | "a2a">;
22
22
  }>>;
23
23
  /** Zod schema for control plane agents list request. */
24
24
  export declare const ControlPlaneAgentsListRequestSchema: Schema<import("../extensions/schema/schema-validator.js").InferShape<{
25
25
  requestId: Schema<string>;
26
26
  projectId: Schema<string>;
27
- surface: Schema<"mcp" | "studio" | "channels" | "a2a">;
27
+ surface: Schema<"mcp" | "channels" | "studio" | "a2a">;
28
28
  }>>;
29
29
  /** Zod schema for get runtime agent skill. */
30
30
  export declare const getRuntimeAgentSkillSchema: () => Schema<import("../extensions/schema/schema-validator.js").InferShape<{
@@ -232,7 +232,7 @@ declare const getControlPlaneClaimsSchema: () => Schema<import("../extensions/sc
232
232
  iss: Schema<string>;
233
233
  aud: Schema<string>;
234
234
  sub: Schema<string>;
235
- surface: Schema<"mcp" | "studio" | "channels" | "a2a">;
235
+ surface: Schema<"mcp" | "channels" | "studio" | "a2a">;
236
236
  project_id: Schema<string>;
237
237
  request_hash: Schema<string>;
238
238
  iat: Schema<number>;
@@ -139,7 +139,7 @@ export declare const getAgUiSnapshotMessageSchema: () => import("../internal-age
139
139
  encryptedValue: import("../internal-agents/schema.js").Schema<string | undefined>;
140
140
  }>>;
141
141
  /** Zod schema for get AG-UI wire event name. */
142
- export declare const getAgUiWireEventNameSchema: () => import("../internal-agents/schema.js").Schema<"ToolCallArgs" | "ToolCallEnd" | "ToolCallResult" | "Custom" | "ReasoningMessageStart" | "ReasoningMessageContent" | "ReasoningMessageEnd" | "TextMessageStart" | "TextMessageContent" | "TextMessageEnd" | "ToolCallStart" | "RunError" | "RunFinished" | "RunStarted" | "ToolCallChunk" | "StateSnapshot" | "MessagesSnapshot" | "StateDelta">;
142
+ export declare const getAgUiWireEventNameSchema: () => import("../internal-agents/schema.js").Schema<"ToolCallArgs" | "ToolCallEnd" | "ToolCallResult" | "Custom" | "ReasoningMessageStart" | "ReasoningMessageContent" | "ReasoningMessageEnd" | "TextMessageStart" | "TextMessageContent" | "TextMessageEnd" | "ToolCallStart" | "RunError" | "RunFinished" | "RunStarted" | "StateSnapshot" | "MessagesSnapshot" | "ToolCallChunk" | "StateDelta">;
143
143
  /** Map AG-UI runtime messages to chat UI messages. */
144
144
  export declare function mapAgUiRuntimeMessagesToChatUiMessages(messages: AgUiRuntimeMessage[]): ChatUiMessage[];
145
145
  /** Zod schema for get AG-UI wire event. */
@@ -33,7 +33,7 @@ export declare const getEvalSourceDatasetSchema: () => import("../internal-agent
33
33
  /** Schema for an Eval metric in Studio source documents. */
34
34
  export declare const getEvalSourceMetricSchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
35
35
  name: import("../internal-agents/schema.js").Schema<string>;
36
- family: import("../internal-agents/schema.js").Schema<"agent" | "check" | "answer" | "ops" | "judge">;
36
+ family: import("../internal-agents/schema.js").Schema<"agent" | "answer" | "ops" | "judge" | "check">;
37
37
  severity: import("../internal-agents/schema.js").Schema<"gate" | "soft" | "budget">;
38
38
  threshold: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
39
39
  min: import("../internal-agents/schema.js").Schema<number | undefined>;
@@ -70,7 +70,7 @@ export declare const getEvalSourceDocumentSchema: () => import("../internal-agen
70
70
  }>>;
71
71
  metrics: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
72
72
  name: import("../internal-agents/schema.js").Schema<string>;
73
- family: import("../internal-agents/schema.js").Schema<"agent" | "check" | "answer" | "ops" | "judge">;
73
+ family: import("../internal-agents/schema.js").Schema<"agent" | "answer" | "ops" | "judge" | "check">;
74
74
  severity: import("../internal-agents/schema.js").Schema<"gate" | "soft" | "budget">;
75
75
  threshold: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
76
76
  min: import("../internal-agents/schema.js").Schema<number | undefined>;
@@ -117,7 +117,7 @@ export declare const getEvalSourcePatchSchema: () => import("../internal-agents/
117
117
  metadata: import("../internal-agents/schema.js").Schema<Record<string, unknown> | undefined>;
118
118
  metrics: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
119
119
  name: import("../internal-agents/schema.js").Schema<string>;
120
- family: import("../internal-agents/schema.js").Schema<"agent" | "check" | "answer" | "ops" | "judge">;
120
+ family: import("../internal-agents/schema.js").Schema<"agent" | "answer" | "ops" | "judge" | "check">;
121
121
  severity: import("../internal-agents/schema.js").Schema<"gate" | "soft" | "budget">;
122
122
  threshold: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
123
123
  min: import("../internal-agents/schema.js").Schema<number | undefined>;
@@ -134,7 +134,7 @@ export declare const getEvalRunSchema: () => import("../internal-agents/schema.j
134
134
  kind: import("../internal-agents/schema.js").Schema<"eval-run">;
135
135
  runId: import("../internal-agents/schema.js").Schema<string>;
136
136
  evalId: import("../internal-agents/schema.js").Schema<string>;
137
- status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
137
+ status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
138
138
  targetKind: import("../internal-agents/schema.js").Schema<"agent">;
139
139
  target: import("../internal-agents/schema.js").Schema<string>;
140
140
  source: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
@@ -1,5 +1,7 @@
1
1
  import type { ResolvedExtension } from "./types.js";
2
+ import type { EvalReportExporterRegistry } from "./eval/index.js";
2
3
  import type { LLMProviderRegistry } from "./llm/index.js";
4
+ export declare function ensureBuiltinEvalReportExporterRegistry(): EvalReportExporterRegistry;
3
5
  export declare function ensureBuiltinLLMProviders(): LLMProviderRegistry;
4
6
  export declare function ensureBuiltinSchemaValidator(): void;
5
7
  export declare function createBuiltinExtensions(): ResolvedExtension[];
@@ -1 +1 @@
1
- {"version":3,"file":"builtin-extensions.d.ts","sourceRoot":"","sources":["../../../src/src/extensions/builtin-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,KAAK,EAAe,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AA0DvE,wBAAgB,yBAAyB,IAAI,mBAAmB,CAM/D;AAED,wBAAgB,4BAA4B,IAAI,IAAI,CAInD;AAoCD,wBAAgB,uBAAuB,IAAI,iBAAiB,EAAE,CAoD7D"}
1
+ {"version":3,"file":"builtin-extensions.d.ts","sourceRoot":"","sources":["../../../src/src/extensions/builtin-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAElE,OAAO,KAAK,EAAe,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAiDvE,wBAAgB,uCAAuC,IAAI,0BAA0B,CAOpF;AAWD,wBAAgB,yBAAyB,IAAI,mBAAmB,CAM/D;AAED,wBAAgB,4BAA4B,IAAI,IAAI,CAInD;AAoCD,wBAAgB,uBAAuB,IAAI,iBAAiB,EAAE,CAoD7D"}
@@ -1,4 +1,5 @@
1
1
  import { register, tryResolve } from "./contracts.js";
2
+ import { createEvalReportExporterRegistry, EvalReportExporterRegistryName } from "./eval/index.js";
2
3
  import { createLLMProviderRegistry, LLMProviderRegistryName } from "./llm/index.js";
3
4
  import { OpenAIProvider } from "../../extensions/ext-llm-openai/src/index.js";
4
5
  import { AnthropicProvider } from "../../extensions/ext-llm-anthropic/src/index.js";
@@ -38,6 +39,14 @@ function getOrCreateLLMProviderRegistry() {
38
39
  register(LLMProviderRegistryName, registry);
39
40
  return registry;
40
41
  }
42
+ export function ensureBuiltinEvalReportExporterRegistry() {
43
+ const existing = tryResolve(EvalReportExporterRegistryName);
44
+ if (existing)
45
+ return existing;
46
+ const registry = createEvalReportExporterRegistry();
47
+ register(EvalReportExporterRegistryName, registry);
48
+ return registry;
49
+ }
41
50
  function registerBuiltinLLMProvider(registry, provider) {
42
51
  if (registry.has(provider.id))
43
52
  return false;
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Eval report exporter extension contract.
3
+ *
4
+ * A single `EvalReportExporterRegistry` implementation lives in the contract
5
+ * registry under {@link EvalReportExporterRegistryName}. Vendor extensions
6
+ * resolve that registry during setup() and register one exporter each.
7
+ *
8
+ * @module extensions/eval/eval-report-exporter
9
+ */
10
+ import type { EvalReport } from "../../eval/index.js";
11
+ type EvalReportExportMaybePromise<T> = T | Promise<T>;
12
+ /** Contract name used for `resolve()` / `provide()`. */
13
+ export declare const EvalReportExporterRegistryName: "EvalReportExporterRegistry";
14
+ /** Sentinel used when record payload fields are removed for external export. */
15
+ export declare const EvalReportRedactedValue: "[redacted]";
16
+ /** Redaction policy applied before reports leave the process. */
17
+ export interface EvalReportExportRedaction {
18
+ /** Include dataset input payloads. Defaults to false. */
19
+ includeInputs?: boolean;
20
+ /** Include target output payloads. Defaults to false. */
21
+ includeOutputs?: boolean;
22
+ /** Include reference answer payloads. Defaults to false. */
23
+ includeReferences?: boolean;
24
+ /** Include trace events and tool-call metadata. Defaults to false. */
25
+ includeTraces?: boolean;
26
+ /** Include metric/check explanations. Defaults to false. */
27
+ includeMetricExplanations?: boolean;
28
+ /** Include metric/check evidence payloads. Defaults to false. */
29
+ includeMetricEvidence?: boolean;
30
+ /** Record metadata keys that can be exported. Defaults to none. */
31
+ metadataAllowlist?: string[];
32
+ }
33
+ /** Trace correlation fields that connect eval exports to runtime spans. */
34
+ export interface EvalReportExportTraceContext {
35
+ traceId?: string;
36
+ spanId?: string;
37
+ parentSpanId?: string;
38
+ }
39
+ /** Context passed to eval report exporters. */
40
+ export interface EvalReportExportContext {
41
+ projectId?: string;
42
+ projectReference?: string;
43
+ evalId?: string;
44
+ sourcePath?: string;
45
+ reportPath?: string;
46
+ environment?: string;
47
+ branch?: string;
48
+ commitSha?: string;
49
+ runUrl?: string;
50
+ tags?: string[];
51
+ metadata?: Record<string, unknown>;
52
+ trace?: EvalReportExportTraceContext;
53
+ redaction?: EvalReportExportRedaction;
54
+ }
55
+ /** Optional receipt returned by a vendor exporter. */
56
+ export interface EvalReportExportReceipt {
57
+ externalRunId?: string;
58
+ url?: string;
59
+ metadata?: Record<string, unknown>;
60
+ }
61
+ /** Vendor or backend implementation that receives sanitized eval reports. */
62
+ export interface EvalReportExporter {
63
+ /** Stable exporter id, for example `braintrust`, `langfuse`, or `langsmith`. */
64
+ readonly id: string;
65
+ export(report: EvalReport, context: EvalReportExportContext): EvalReportExportMaybePromise<EvalReportExportReceipt | void>;
66
+ }
67
+ /** Successful exporter result. */
68
+ export interface EvalReportExportSuccess {
69
+ exporterId: string;
70
+ ok: true;
71
+ receipt?: EvalReportExportReceipt;
72
+ }
73
+ /** Failed exporter result. Failures are captured so later exporters still run. */
74
+ export interface EvalReportExportFailure {
75
+ exporterId: string;
76
+ ok: false;
77
+ error: string;
78
+ }
79
+ /** Result for one exporter invocation. */
80
+ export type EvalReportExportResult = EvalReportExportSuccess | EvalReportExportFailure;
81
+ /** Registry contract. Single impl created at bootstrap. */
82
+ export interface EvalReportExporterRegistry {
83
+ register(exporter: EvalReportExporter): void;
84
+ unregister(id: string): void;
85
+ get(id: string): EvalReportExporter | undefined;
86
+ require(id: string): EvalReportExporter;
87
+ list(): EvalReportExporter[];
88
+ has(id: string): boolean;
89
+ export(report: EvalReport, context?: EvalReportExportContext): Promise<EvalReportExportResult[]>;
90
+ }
91
+ /** Create an eval report copy with external-export redaction applied. */
92
+ export declare function redactEvalReportForExport(report: EvalReport, redaction?: EvalReportExportRedaction): EvalReport;
93
+ /** Create an eval report exporter registry. */
94
+ export declare function createEvalReportExporterRegistry(): EvalReportExporterRegistry;
95
+ export {};
96
+ //# sourceMappingURL=eval-report-exporter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eval-report-exporter.d.ts","sourceRoot":"","sources":["../../../../src/src/extensions/eval/eval-report-exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAgC,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEpF,KAAK,4BAA4B,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAEtD,wDAAwD;AACxD,eAAO,MAAM,8BAA8B,EAAG,4BAAqC,CAAC;AAEpF,gFAAgF;AAChF,eAAO,MAAM,uBAAuB,EAAG,YAAqB,CAAC;AAE7D,iEAAiE;AACjE,MAAM,WAAW,yBAAyB;IACxC,yDAAyD;IACzD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,yDAAyD;IACzD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,sEAAsE;IACtE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,4DAA4D;IAC5D,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,iEAAiE;IACjE,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mEAAmE;IACnE,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,2EAA2E;AAC3E,MAAM,WAAW,4BAA4B;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,+CAA+C;AAC/C,MAAM,WAAW,uBAAuB;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,4BAA4B,CAAC;IACrC,SAAS,CAAC,EAAE,yBAAyB,CAAC;CACvC;AAED,sDAAsD;AACtD,MAAM,WAAW,uBAAuB;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,6EAA6E;AAC7E,MAAM,WAAW,kBAAkB;IACjC,gFAAgF;IAChF,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,MAAM,CACJ,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,uBAAuB,GAC/B,4BAA4B,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAC;CACjE;AAED,kCAAkC;AAClC,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,IAAI,CAAC;IACT,OAAO,CAAC,EAAE,uBAAuB,CAAC;CACnC;AAED,kFAAkF;AAClF,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;CACf;AAED,0CAA0C;AAC1C,MAAM,MAAM,sBAAsB,GAC9B,uBAAuB,GACvB,uBAAuB,CAAC;AAE5B,2DAA2D;AAC3D,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC7C,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAAC;IAChD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,CAAC;IACxC,IAAI,IAAI,kBAAkB,EAAE,CAAC;IAC7B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,MAAM,CACJ,MAAM,EAAE,UAAU,EAClB,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;CACtC;AAkDD,yEAAyE;AACzE,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,UAAU,EAClB,SAAS,GAAE,yBAA8B,GACxC,UAAU,CAMZ;AAmED,+CAA+C;AAC/C,wBAAgB,gCAAgC,IAAI,0BAA0B,CAE7E"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Eval report exporter extension contract.
3
+ *
4
+ * A single `EvalReportExporterRegistry` implementation lives in the contract
5
+ * registry under {@link EvalReportExporterRegistryName}. Vendor extensions
6
+ * resolve that registry during setup() and register one exporter each.
7
+ *
8
+ * @module extensions/eval/eval-report-exporter
9
+ */
10
+ /** Contract name used for `resolve()` / `provide()`. */
11
+ export const EvalReportExporterRegistryName = "EvalReportExporterRegistry";
12
+ /** Sentinel used when record payload fields are removed for external export. */
13
+ export const EvalReportRedactedValue = "[redacted]";
14
+ function filterMetadata(metadata, allowlist) {
15
+ if (!allowlist || allowlist.length === 0)
16
+ return {};
17
+ const allowed = new Set(allowlist);
18
+ return Object.fromEntries(Object.entries(metadata).filter(([key]) => allowed.has(key)));
19
+ }
20
+ function redactRecord(record, redaction) {
21
+ const redacted = {
22
+ ...record,
23
+ input: redaction.includeInputs ? record.input : EvalReportRedactedValue,
24
+ output: redaction.includeOutputs ? record.output : EvalReportRedactedValue,
25
+ metadata: filterMetadata(record.metadata, redaction.metadataAllowlist),
26
+ trace: redaction.includeTraces ? record.trace : { events: [], toolCalls: [] },
27
+ ...(record.metrics ? { metrics: redactMetricResults(record.metrics, redaction) } : {}),
28
+ ...(record.checks ? { checks: redactMetricResults(record.checks, redaction) } : {}),
29
+ };
30
+ if (Object.hasOwn(record, "reference")) {
31
+ redacted.reference = redaction.includeReferences ? record.reference : EvalReportRedactedValue;
32
+ }
33
+ return redacted;
34
+ }
35
+ function redactMetricResults(results, redaction) {
36
+ return results.map((result) => {
37
+ const redacted = { ...result };
38
+ if (!redaction.includeMetricExplanations) {
39
+ delete redacted.explanation;
40
+ }
41
+ if (!redaction.includeMetricEvidence) {
42
+ delete redacted.evidence;
43
+ }
44
+ return redacted;
45
+ });
46
+ }
47
+ /** Create an eval report copy with external-export redaction applied. */
48
+ export function redactEvalReportForExport(report, redaction = {}) {
49
+ const cloned = structuredClone(report);
50
+ return {
51
+ ...cloned,
52
+ records: cloned.records.map((record) => redactRecord(record, redaction)),
53
+ };
54
+ }
55
+ function errorMessage(error) {
56
+ return error instanceof Error ? error.message : String(error);
57
+ }
58
+ class EvalReportExporterRegistryImpl {
59
+ exporters = new Map();
60
+ register(exporter) {
61
+ if (this.exporters.has(exporter.id)) {
62
+ return;
63
+ }
64
+ this.exporters.set(exporter.id, exporter);
65
+ }
66
+ unregister(id) {
67
+ this.exporters.delete(id);
68
+ }
69
+ get(id) {
70
+ return this.exporters.get(id);
71
+ }
72
+ require(id) {
73
+ const exporter = this.exporters.get(id);
74
+ if (exporter)
75
+ return exporter;
76
+ const known = [...this.exporters.keys()].join(", ") || "(none)";
77
+ throw new Error(`No EvalReportExporter registered for "${id}". Known exporters: ${known}.`);
78
+ }
79
+ has(id) {
80
+ return this.exporters.has(id);
81
+ }
82
+ list() {
83
+ return [...this.exporters.values()];
84
+ }
85
+ async export(report, context = {}) {
86
+ const results = [];
87
+ for (const exporter of this.exporters.values()) {
88
+ try {
89
+ const sanitizedReport = redactEvalReportForExport(report, context.redaction);
90
+ const receipt = await exporter.export(sanitizedReport, context);
91
+ const result = { exporterId: exporter.id, ok: true };
92
+ if (receipt !== undefined)
93
+ result.receipt = receipt;
94
+ results.push(result);
95
+ }
96
+ catch (error) {
97
+ results.push({
98
+ exporterId: exporter.id,
99
+ ok: false,
100
+ error: errorMessage(error),
101
+ });
102
+ }
103
+ }
104
+ return results;
105
+ }
106
+ }
107
+ /** Create an eval report exporter registry. */
108
+ export function createEvalReportExporterRegistry() {
109
+ return new EvalReportExporterRegistryImpl();
110
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Eval category barrel: eval report exporter contracts.
3
+ *
4
+ * @module extensions/eval
5
+ */
6
+ import "../../../_dnt.polyfills.js";
7
+ export { createEvalReportExporterRegistry, EvalReportExporterRegistryName, EvalReportRedactedValue, redactEvalReportForExport, } from "./eval-report-exporter.js";
8
+ export type { EvalReportExportContext, EvalReportExporter, EvalReportExporterRegistry, EvalReportExportFailure, EvalReportExportReceipt, EvalReportExportRedaction, EvalReportExportResult, EvalReportExportSuccess, EvalReportExportTraceContext, } from "./eval-report-exporter.js";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/extensions/eval/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,4BAA4B,CAAC;AAGpC,OAAO,EACL,gCAAgC,EAChC,8BAA8B,EAC9B,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,uBAAuB,EACvB,kBAAkB,EAClB,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,EACzB,sBAAsB,EACtB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Eval category barrel: eval report exporter contracts.
3
+ *
4
+ * @module extensions/eval
5
+ */
6
+ import "../../../_dnt.polyfills.js";
7
+ export { createEvalReportExporterRegistry, EvalReportExporterRegistryName, EvalReportRedactedValue, redactEvalReportForExport, } from "./eval-report-exporter.js";
@@ -1,7 +1,7 @@
1
1
  import type { InferSchema } from "../extensions/schema/index.js";
2
- export declare const getIntegrationNameSchema: () => import("../internal-agents/schema.js").Schema<"close" | "render" | "openai" | "cohere" | "github" | "cloudflare" | "square" | "anthropic" | "polygon" | "mistral" | "segment" | "zoom" | "twitter" | "azure" | "linear" | "gmail" | "slack" | "calendar" | "jira" | "notion" | "servicenow" | "confluence" | "gitlab" | "outlook" | "teams" | "figma" | "sap" | "sheets" | "airtable" | "supabase" | "neon" | "sharepoint" | "stripe" | "salesforce" | "onedrive" | "bitbucket" | "sentry" | "posthog" | "persona" | "zendesk" | "asana" | "harvest" | "hubspot" | "monday" | "trello" | "box" | "shopify" | "clickup" | "intercom" | "pipedrive" | "mailchimp" | "webex" | "freshdesk" | "quickbooks" | "xero" | "drive" | "docs-google" | "snowflake" | "mixpanel" | "twilio" | "aws" | "todoist" | "calendly" | "google-analytics" | "klaviyo" | "datadog" | "paypal" | "activecampaign" | "algolia" | "amplitude" | "apollo" | "ashby" | "attio" | "basecamp" | "brevo" | "circleci" | "coda" | "dialpad" | "digitalocean" | "exa" | "fathom" | "firecrawl" | "fireflies" | "folk" | "gemini" | "gong" | "google-chat" | "gusto" | "jotform" | "lever" | "metabase" | "pagerduty" | "perplexity" | "productboard" | "razorpay" | "resend" | "salesflare" | "sendgrid" | "shortcut" | "tavily" | "typeform" | "apify" | "assemblyai" | "axiom" | "betterstack" | "browserbase" | "buildkite" | "checkly" | "clickhouse" | "deepgram" | "elevenlabs" | "fal" | "fireworks-ai" | "fly-io" | "grafana-cloud" | "groq" | "heroku" | "huggingface" | "langfuse" | "langsmith" | "launchdarkly" | "mongodb-atlas" | "netlify" | "new-relic" | "openrouter" | "pinecone" | "planetscale" | "qdrant" | "railway" | "redis-cloud" | "replicate" | "snyk" | "stability-ai" | "together-ai" | "vercel" | "weaviate" | "bamboohr" | "cal-com" | "customer-io" | "discord" | "docusign" | "gocardless" | "google-bigquery" | "google-contacts" | "help-scout" | "telegram" | "whatsapp" | "woocommerce" | "zoho-crm" | "adyen" | "azure-blob-storage" | "bigcommerce" | "brave-search" | "chargebee" | "databricks" | "deel" | "front" | "google-cloud-storage" | "google-forms" | "gorgias" | "greenhouse" | "guru" | "mollie" | "paddle" | "pandadoc" | "personio" | "portkey" | "power-bi" | "ramp" | "rippling" | "serpapi" | "shopware" | "surveymonkey" | "tally" | "wix" | "workable" | "azure-document-intelligence" | "billbee" | "cleverreach" | "datev" | "factorial" | "finapi" | "gcp" | "hetzner" | "ionos" | "klarna" | "lexoffice" | "mindee" | "moss" | "neo4j" | "north-data" | "qonto" | "sendcloud" | "sevdesk" | "skribble" | "stackit" | "trusted-shops" | "unstructured" | "unzer" | "voyage-ai" | "xentral" | "alphavantage" | "daytona" | "e2b" | "sprites">;
2
+ export declare const getIntegrationNameSchema: () => import("../internal-agents/schema.js").Schema<"close" | "render" | "openai" | "cohere" | "github" | "cloudflare" | "square" | "anthropic" | "linear" | "gmail" | "slack" | "calendar" | "jira" | "notion" | "servicenow" | "confluence" | "gitlab" | "outlook" | "teams" | "figma" | "sap" | "sheets" | "airtable" | "supabase" | "neon" | "sharepoint" | "stripe" | "salesforce" | "twitter" | "onedrive" | "bitbucket" | "sentry" | "posthog" | "persona" | "zendesk" | "asana" | "harvest" | "hubspot" | "monday" | "zoom" | "trello" | "box" | "shopify" | "clickup" | "intercom" | "pipedrive" | "mailchimp" | "webex" | "freshdesk" | "quickbooks" | "xero" | "drive" | "docs-google" | "snowflake" | "mixpanel" | "twilio" | "aws" | "todoist" | "calendly" | "google-analytics" | "klaviyo" | "datadog" | "paypal" | "activecampaign" | "algolia" | "amplitude" | "apollo" | "ashby" | "attio" | "basecamp" | "brevo" | "circleci" | "coda" | "dialpad" | "digitalocean" | "exa" | "fathom" | "firecrawl" | "fireflies" | "folk" | "gemini" | "gong" | "google-chat" | "gusto" | "jotform" | "lever" | "metabase" | "mistral" | "pagerduty" | "perplexity" | "productboard" | "razorpay" | "resend" | "salesflare" | "segment" | "sendgrid" | "shortcut" | "tavily" | "typeform" | "apify" | "assemblyai" | "axiom" | "betterstack" | "browserbase" | "buildkite" | "checkly" | "clickhouse" | "deepgram" | "elevenlabs" | "fal" | "fireworks-ai" | "fly-io" | "grafana-cloud" | "groq" | "heroku" | "huggingface" | "langfuse" | "langsmith" | "launchdarkly" | "mongodb-atlas" | "netlify" | "new-relic" | "openrouter" | "pinecone" | "planetscale" | "qdrant" | "railway" | "redis-cloud" | "replicate" | "snyk" | "stability-ai" | "together-ai" | "vercel" | "weaviate" | "bamboohr" | "cal-com" | "customer-io" | "discord" | "docusign" | "gocardless" | "google-bigquery" | "google-contacts" | "help-scout" | "telegram" | "whatsapp" | "woocommerce" | "zoho-crm" | "adyen" | "azure-blob-storage" | "bigcommerce" | "brave-search" | "chargebee" | "databricks" | "deel" | "front" | "google-cloud-storage" | "google-forms" | "gorgias" | "greenhouse" | "guru" | "mollie" | "paddle" | "pandadoc" | "personio" | "portkey" | "power-bi" | "ramp" | "rippling" | "serpapi" | "shopware" | "surveymonkey" | "tally" | "wix" | "workable" | "azure" | "azure-document-intelligence" | "billbee" | "cleverreach" | "datev" | "factorial" | "finapi" | "gcp" | "hetzner" | "ionos" | "klarna" | "lexoffice" | "mindee" | "moss" | "neo4j" | "north-data" | "qonto" | "sendcloud" | "sevdesk" | "skribble" | "stackit" | "trusted-shops" | "unstructured" | "unzer" | "voyage-ai" | "xentral" | "alphavantage" | "daytona" | "e2b" | "polygon" | "sprites">;
3
3
  /** Zod schema for integration name. */
4
- export declare const IntegrationNameSchema: import("../internal-agents/schema.js").Schema<"close" | "render" | "openai" | "cohere" | "github" | "cloudflare" | "square" | "anthropic" | "polygon" | "mistral" | "segment" | "zoom" | "twitter" | "azure" | "linear" | "gmail" | "slack" | "calendar" | "jira" | "notion" | "servicenow" | "confluence" | "gitlab" | "outlook" | "teams" | "figma" | "sap" | "sheets" | "airtable" | "supabase" | "neon" | "sharepoint" | "stripe" | "salesforce" | "onedrive" | "bitbucket" | "sentry" | "posthog" | "persona" | "zendesk" | "asana" | "harvest" | "hubspot" | "monday" | "trello" | "box" | "shopify" | "clickup" | "intercom" | "pipedrive" | "mailchimp" | "webex" | "freshdesk" | "quickbooks" | "xero" | "drive" | "docs-google" | "snowflake" | "mixpanel" | "twilio" | "aws" | "todoist" | "calendly" | "google-analytics" | "klaviyo" | "datadog" | "paypal" | "activecampaign" | "algolia" | "amplitude" | "apollo" | "ashby" | "attio" | "basecamp" | "brevo" | "circleci" | "coda" | "dialpad" | "digitalocean" | "exa" | "fathom" | "firecrawl" | "fireflies" | "folk" | "gemini" | "gong" | "google-chat" | "gusto" | "jotform" | "lever" | "metabase" | "pagerduty" | "perplexity" | "productboard" | "razorpay" | "resend" | "salesflare" | "sendgrid" | "shortcut" | "tavily" | "typeform" | "apify" | "assemblyai" | "axiom" | "betterstack" | "browserbase" | "buildkite" | "checkly" | "clickhouse" | "deepgram" | "elevenlabs" | "fal" | "fireworks-ai" | "fly-io" | "grafana-cloud" | "groq" | "heroku" | "huggingface" | "langfuse" | "langsmith" | "launchdarkly" | "mongodb-atlas" | "netlify" | "new-relic" | "openrouter" | "pinecone" | "planetscale" | "qdrant" | "railway" | "redis-cloud" | "replicate" | "snyk" | "stability-ai" | "together-ai" | "vercel" | "weaviate" | "bamboohr" | "cal-com" | "customer-io" | "discord" | "docusign" | "gocardless" | "google-bigquery" | "google-contacts" | "help-scout" | "telegram" | "whatsapp" | "woocommerce" | "zoho-crm" | "adyen" | "azure-blob-storage" | "bigcommerce" | "brave-search" | "chargebee" | "databricks" | "deel" | "front" | "google-cloud-storage" | "google-forms" | "gorgias" | "greenhouse" | "guru" | "mollie" | "paddle" | "pandadoc" | "personio" | "portkey" | "power-bi" | "ramp" | "rippling" | "serpapi" | "shopware" | "surveymonkey" | "tally" | "wix" | "workable" | "azure-document-intelligence" | "billbee" | "cleverreach" | "datev" | "factorial" | "finapi" | "gcp" | "hetzner" | "ionos" | "klarna" | "lexoffice" | "mindee" | "moss" | "neo4j" | "north-data" | "qonto" | "sendcloud" | "sevdesk" | "skribble" | "stackit" | "trusted-shops" | "unstructured" | "unzer" | "voyage-ai" | "xentral" | "alphavantage" | "daytona" | "e2b" | "sprites">;
4
+ export declare const IntegrationNameSchema: import("../internal-agents/schema.js").Schema<"close" | "render" | "openai" | "cohere" | "github" | "cloudflare" | "square" | "anthropic" | "linear" | "gmail" | "slack" | "calendar" | "jira" | "notion" | "servicenow" | "confluence" | "gitlab" | "outlook" | "teams" | "figma" | "sap" | "sheets" | "airtable" | "supabase" | "neon" | "sharepoint" | "stripe" | "salesforce" | "twitter" | "onedrive" | "bitbucket" | "sentry" | "posthog" | "persona" | "zendesk" | "asana" | "harvest" | "hubspot" | "monday" | "zoom" | "trello" | "box" | "shopify" | "clickup" | "intercom" | "pipedrive" | "mailchimp" | "webex" | "freshdesk" | "quickbooks" | "xero" | "drive" | "docs-google" | "snowflake" | "mixpanel" | "twilio" | "aws" | "todoist" | "calendly" | "google-analytics" | "klaviyo" | "datadog" | "paypal" | "activecampaign" | "algolia" | "amplitude" | "apollo" | "ashby" | "attio" | "basecamp" | "brevo" | "circleci" | "coda" | "dialpad" | "digitalocean" | "exa" | "fathom" | "firecrawl" | "fireflies" | "folk" | "gemini" | "gong" | "google-chat" | "gusto" | "jotform" | "lever" | "metabase" | "mistral" | "pagerduty" | "perplexity" | "productboard" | "razorpay" | "resend" | "salesflare" | "segment" | "sendgrid" | "shortcut" | "tavily" | "typeform" | "apify" | "assemblyai" | "axiom" | "betterstack" | "browserbase" | "buildkite" | "checkly" | "clickhouse" | "deepgram" | "elevenlabs" | "fal" | "fireworks-ai" | "fly-io" | "grafana-cloud" | "groq" | "heroku" | "huggingface" | "langfuse" | "langsmith" | "launchdarkly" | "mongodb-atlas" | "netlify" | "new-relic" | "openrouter" | "pinecone" | "planetscale" | "qdrant" | "railway" | "redis-cloud" | "replicate" | "snyk" | "stability-ai" | "together-ai" | "vercel" | "weaviate" | "bamboohr" | "cal-com" | "customer-io" | "discord" | "docusign" | "gocardless" | "google-bigquery" | "google-contacts" | "help-scout" | "telegram" | "whatsapp" | "woocommerce" | "zoho-crm" | "adyen" | "azure-blob-storage" | "bigcommerce" | "brave-search" | "chargebee" | "databricks" | "deel" | "front" | "google-cloud-storage" | "google-forms" | "gorgias" | "greenhouse" | "guru" | "mollie" | "paddle" | "pandadoc" | "personio" | "portkey" | "power-bi" | "ramp" | "rippling" | "serpapi" | "shopware" | "surveymonkey" | "tally" | "wix" | "workable" | "azure" | "azure-document-intelligence" | "billbee" | "cleverreach" | "datev" | "factorial" | "finapi" | "gcp" | "hetzner" | "ionos" | "klarna" | "lexoffice" | "mindee" | "moss" | "neo4j" | "north-data" | "qonto" | "sendcloud" | "sevdesk" | "skribble" | "stackit" | "trusted-shops" | "unstructured" | "unzer" | "voyage-ai" | "xentral" | "alphavantage" | "daytona" | "e2b" | "polygon" | "sprites">;
5
5
  /**
6
6
  * Every registered integration name. The single source of truth for catalog
7
7
  * surfaces (CLI validation, MCP listings) — derive from this instead of
@@ -529,7 +529,7 @@ export declare const IntegrationPromptSchema: import("../internal-agents/schema.
529
529
  icon: import("../internal-agents/schema.js").Schema<string | undefined>;
530
530
  }>>;
531
531
  export declare const getIntegrationConfigSchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
532
- name: import("../internal-agents/schema.js").Schema<"close" | "render" | "openai" | "cohere" | "github" | "cloudflare" | "square" | "anthropic" | "polygon" | "mistral" | "segment" | "zoom" | "twitter" | "azure" | "linear" | "gmail" | "slack" | "calendar" | "jira" | "notion" | "servicenow" | "confluence" | "gitlab" | "outlook" | "teams" | "figma" | "sap" | "sheets" | "airtable" | "supabase" | "neon" | "sharepoint" | "stripe" | "salesforce" | "onedrive" | "bitbucket" | "sentry" | "posthog" | "persona" | "zendesk" | "asana" | "harvest" | "hubspot" | "monday" | "trello" | "box" | "shopify" | "clickup" | "intercom" | "pipedrive" | "mailchimp" | "webex" | "freshdesk" | "quickbooks" | "xero" | "drive" | "docs-google" | "snowflake" | "mixpanel" | "twilio" | "aws" | "todoist" | "calendly" | "google-analytics" | "klaviyo" | "datadog" | "paypal" | "activecampaign" | "algolia" | "amplitude" | "apollo" | "ashby" | "attio" | "basecamp" | "brevo" | "circleci" | "coda" | "dialpad" | "digitalocean" | "exa" | "fathom" | "firecrawl" | "fireflies" | "folk" | "gemini" | "gong" | "google-chat" | "gusto" | "jotform" | "lever" | "metabase" | "pagerduty" | "perplexity" | "productboard" | "razorpay" | "resend" | "salesflare" | "sendgrid" | "shortcut" | "tavily" | "typeform" | "apify" | "assemblyai" | "axiom" | "betterstack" | "browserbase" | "buildkite" | "checkly" | "clickhouse" | "deepgram" | "elevenlabs" | "fal" | "fireworks-ai" | "fly-io" | "grafana-cloud" | "groq" | "heroku" | "huggingface" | "langfuse" | "langsmith" | "launchdarkly" | "mongodb-atlas" | "netlify" | "new-relic" | "openrouter" | "pinecone" | "planetscale" | "qdrant" | "railway" | "redis-cloud" | "replicate" | "snyk" | "stability-ai" | "together-ai" | "vercel" | "weaviate" | "bamboohr" | "cal-com" | "customer-io" | "discord" | "docusign" | "gocardless" | "google-bigquery" | "google-contacts" | "help-scout" | "telegram" | "whatsapp" | "woocommerce" | "zoho-crm" | "adyen" | "azure-blob-storage" | "bigcommerce" | "brave-search" | "chargebee" | "databricks" | "deel" | "front" | "google-cloud-storage" | "google-forms" | "gorgias" | "greenhouse" | "guru" | "mollie" | "paddle" | "pandadoc" | "personio" | "portkey" | "power-bi" | "ramp" | "rippling" | "serpapi" | "shopware" | "surveymonkey" | "tally" | "wix" | "workable" | "azure-document-intelligence" | "billbee" | "cleverreach" | "datev" | "factorial" | "finapi" | "gcp" | "hetzner" | "ionos" | "klarna" | "lexoffice" | "mindee" | "moss" | "neo4j" | "north-data" | "qonto" | "sendcloud" | "sevdesk" | "skribble" | "stackit" | "trusted-shops" | "unstructured" | "unzer" | "voyage-ai" | "xentral" | "alphavantage" | "daytona" | "e2b" | "sprites">;
532
+ name: import("../internal-agents/schema.js").Schema<"close" | "render" | "openai" | "cohere" | "github" | "cloudflare" | "square" | "anthropic" | "linear" | "gmail" | "slack" | "calendar" | "jira" | "notion" | "servicenow" | "confluence" | "gitlab" | "outlook" | "teams" | "figma" | "sap" | "sheets" | "airtable" | "supabase" | "neon" | "sharepoint" | "stripe" | "salesforce" | "twitter" | "onedrive" | "bitbucket" | "sentry" | "posthog" | "persona" | "zendesk" | "asana" | "harvest" | "hubspot" | "monday" | "zoom" | "trello" | "box" | "shopify" | "clickup" | "intercom" | "pipedrive" | "mailchimp" | "webex" | "freshdesk" | "quickbooks" | "xero" | "drive" | "docs-google" | "snowflake" | "mixpanel" | "twilio" | "aws" | "todoist" | "calendly" | "google-analytics" | "klaviyo" | "datadog" | "paypal" | "activecampaign" | "algolia" | "amplitude" | "apollo" | "ashby" | "attio" | "basecamp" | "brevo" | "circleci" | "coda" | "dialpad" | "digitalocean" | "exa" | "fathom" | "firecrawl" | "fireflies" | "folk" | "gemini" | "gong" | "google-chat" | "gusto" | "jotform" | "lever" | "metabase" | "mistral" | "pagerduty" | "perplexity" | "productboard" | "razorpay" | "resend" | "salesflare" | "segment" | "sendgrid" | "shortcut" | "tavily" | "typeform" | "apify" | "assemblyai" | "axiom" | "betterstack" | "browserbase" | "buildkite" | "checkly" | "clickhouse" | "deepgram" | "elevenlabs" | "fal" | "fireworks-ai" | "fly-io" | "grafana-cloud" | "groq" | "heroku" | "huggingface" | "langfuse" | "langsmith" | "launchdarkly" | "mongodb-atlas" | "netlify" | "new-relic" | "openrouter" | "pinecone" | "planetscale" | "qdrant" | "railway" | "redis-cloud" | "replicate" | "snyk" | "stability-ai" | "together-ai" | "vercel" | "weaviate" | "bamboohr" | "cal-com" | "customer-io" | "discord" | "docusign" | "gocardless" | "google-bigquery" | "google-contacts" | "help-scout" | "telegram" | "whatsapp" | "woocommerce" | "zoho-crm" | "adyen" | "azure-blob-storage" | "bigcommerce" | "brave-search" | "chargebee" | "databricks" | "deel" | "front" | "google-cloud-storage" | "google-forms" | "gorgias" | "greenhouse" | "guru" | "mollie" | "paddle" | "pandadoc" | "personio" | "portkey" | "power-bi" | "ramp" | "rippling" | "serpapi" | "shopware" | "surveymonkey" | "tally" | "wix" | "workable" | "azure" | "azure-document-intelligence" | "billbee" | "cleverreach" | "datev" | "factorial" | "finapi" | "gcp" | "hetzner" | "ionos" | "klarna" | "lexoffice" | "mindee" | "moss" | "neo4j" | "north-data" | "qonto" | "sendcloud" | "sevdesk" | "skribble" | "stackit" | "trusted-shops" | "unstructured" | "unzer" | "voyage-ai" | "xentral" | "alphavantage" | "daytona" | "e2b" | "polygon" | "sprites">;
533
533
  displayName: import("../internal-agents/schema.js").Schema<string>;
534
534
  icon: import("../internal-agents/schema.js").Schema<string | undefined>;
535
535
  description: import("../internal-agents/schema.js").Schema<string>;
@@ -693,7 +693,7 @@ export declare const getIntegrationConfigSchema: () => import("../internal-agent
693
693
  }>>;
694
694
  /** Zod schema for integration config. */
695
695
  export declare const IntegrationConfigSchema: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
696
- name: import("../internal-agents/schema.js").Schema<"close" | "render" | "openai" | "cohere" | "github" | "cloudflare" | "square" | "anthropic" | "polygon" | "mistral" | "segment" | "zoom" | "twitter" | "azure" | "linear" | "gmail" | "slack" | "calendar" | "jira" | "notion" | "servicenow" | "confluence" | "gitlab" | "outlook" | "teams" | "figma" | "sap" | "sheets" | "airtable" | "supabase" | "neon" | "sharepoint" | "stripe" | "salesforce" | "onedrive" | "bitbucket" | "sentry" | "posthog" | "persona" | "zendesk" | "asana" | "harvest" | "hubspot" | "monday" | "trello" | "box" | "shopify" | "clickup" | "intercom" | "pipedrive" | "mailchimp" | "webex" | "freshdesk" | "quickbooks" | "xero" | "drive" | "docs-google" | "snowflake" | "mixpanel" | "twilio" | "aws" | "todoist" | "calendly" | "google-analytics" | "klaviyo" | "datadog" | "paypal" | "activecampaign" | "algolia" | "amplitude" | "apollo" | "ashby" | "attio" | "basecamp" | "brevo" | "circleci" | "coda" | "dialpad" | "digitalocean" | "exa" | "fathom" | "firecrawl" | "fireflies" | "folk" | "gemini" | "gong" | "google-chat" | "gusto" | "jotform" | "lever" | "metabase" | "pagerduty" | "perplexity" | "productboard" | "razorpay" | "resend" | "salesflare" | "sendgrid" | "shortcut" | "tavily" | "typeform" | "apify" | "assemblyai" | "axiom" | "betterstack" | "browserbase" | "buildkite" | "checkly" | "clickhouse" | "deepgram" | "elevenlabs" | "fal" | "fireworks-ai" | "fly-io" | "grafana-cloud" | "groq" | "heroku" | "huggingface" | "langfuse" | "langsmith" | "launchdarkly" | "mongodb-atlas" | "netlify" | "new-relic" | "openrouter" | "pinecone" | "planetscale" | "qdrant" | "railway" | "redis-cloud" | "replicate" | "snyk" | "stability-ai" | "together-ai" | "vercel" | "weaviate" | "bamboohr" | "cal-com" | "customer-io" | "discord" | "docusign" | "gocardless" | "google-bigquery" | "google-contacts" | "help-scout" | "telegram" | "whatsapp" | "woocommerce" | "zoho-crm" | "adyen" | "azure-blob-storage" | "bigcommerce" | "brave-search" | "chargebee" | "databricks" | "deel" | "front" | "google-cloud-storage" | "google-forms" | "gorgias" | "greenhouse" | "guru" | "mollie" | "paddle" | "pandadoc" | "personio" | "portkey" | "power-bi" | "ramp" | "rippling" | "serpapi" | "shopware" | "surveymonkey" | "tally" | "wix" | "workable" | "azure-document-intelligence" | "billbee" | "cleverreach" | "datev" | "factorial" | "finapi" | "gcp" | "hetzner" | "ionos" | "klarna" | "lexoffice" | "mindee" | "moss" | "neo4j" | "north-data" | "qonto" | "sendcloud" | "sevdesk" | "skribble" | "stackit" | "trusted-shops" | "unstructured" | "unzer" | "voyage-ai" | "xentral" | "alphavantage" | "daytona" | "e2b" | "sprites">;
696
+ name: import("../internal-agents/schema.js").Schema<"close" | "render" | "openai" | "cohere" | "github" | "cloudflare" | "square" | "anthropic" | "linear" | "gmail" | "slack" | "calendar" | "jira" | "notion" | "servicenow" | "confluence" | "gitlab" | "outlook" | "teams" | "figma" | "sap" | "sheets" | "airtable" | "supabase" | "neon" | "sharepoint" | "stripe" | "salesforce" | "twitter" | "onedrive" | "bitbucket" | "sentry" | "posthog" | "persona" | "zendesk" | "asana" | "harvest" | "hubspot" | "monday" | "zoom" | "trello" | "box" | "shopify" | "clickup" | "intercom" | "pipedrive" | "mailchimp" | "webex" | "freshdesk" | "quickbooks" | "xero" | "drive" | "docs-google" | "snowflake" | "mixpanel" | "twilio" | "aws" | "todoist" | "calendly" | "google-analytics" | "klaviyo" | "datadog" | "paypal" | "activecampaign" | "algolia" | "amplitude" | "apollo" | "ashby" | "attio" | "basecamp" | "brevo" | "circleci" | "coda" | "dialpad" | "digitalocean" | "exa" | "fathom" | "firecrawl" | "fireflies" | "folk" | "gemini" | "gong" | "google-chat" | "gusto" | "jotform" | "lever" | "metabase" | "mistral" | "pagerduty" | "perplexity" | "productboard" | "razorpay" | "resend" | "salesflare" | "segment" | "sendgrid" | "shortcut" | "tavily" | "typeform" | "apify" | "assemblyai" | "axiom" | "betterstack" | "browserbase" | "buildkite" | "checkly" | "clickhouse" | "deepgram" | "elevenlabs" | "fal" | "fireworks-ai" | "fly-io" | "grafana-cloud" | "groq" | "heroku" | "huggingface" | "langfuse" | "langsmith" | "launchdarkly" | "mongodb-atlas" | "netlify" | "new-relic" | "openrouter" | "pinecone" | "planetscale" | "qdrant" | "railway" | "redis-cloud" | "replicate" | "snyk" | "stability-ai" | "together-ai" | "vercel" | "weaviate" | "bamboohr" | "cal-com" | "customer-io" | "discord" | "docusign" | "gocardless" | "google-bigquery" | "google-contacts" | "help-scout" | "telegram" | "whatsapp" | "woocommerce" | "zoho-crm" | "adyen" | "azure-blob-storage" | "bigcommerce" | "brave-search" | "chargebee" | "databricks" | "deel" | "front" | "google-cloud-storage" | "google-forms" | "gorgias" | "greenhouse" | "guru" | "mollie" | "paddle" | "pandadoc" | "personio" | "portkey" | "power-bi" | "ramp" | "rippling" | "serpapi" | "shopware" | "surveymonkey" | "tally" | "wix" | "workable" | "azure" | "azure-document-intelligence" | "billbee" | "cleverreach" | "datev" | "factorial" | "finapi" | "gcp" | "hetzner" | "ionos" | "klarna" | "lexoffice" | "mindee" | "moss" | "neo4j" | "north-data" | "qonto" | "sendcloud" | "sevdesk" | "skribble" | "stackit" | "trusted-shops" | "unstructured" | "unzer" | "voyage-ai" | "xentral" | "alphavantage" | "daytona" | "e2b" | "polygon" | "sprites">;
697
697
  displayName: import("../internal-agents/schema.js").Schema<string>;
698
698
  icon: import("../internal-agents/schema.js").Schema<string | undefined>;
699
699
  description: import("../internal-agents/schema.js").Schema<string>;
@@ -12,7 +12,7 @@ export declare function verifyControlPlaneRequest(req: Request, ctx: HandlerCont
12
12
  iss: import("./schema.js").Schema<string>;
13
13
  aud: import("./schema.js").Schema<string>;
14
14
  sub: import("./schema.js").Schema<string>;
15
- surface: import("./schema.js").Schema<"mcp" | "studio" | "channels" | "a2a">;
15
+ surface: import("./schema.js").Schema<"mcp" | "channels" | "studio" | "a2a">;
16
16
  project_id: import("./schema.js").Schema<string>;
17
17
  request_hash: import("./schema.js").Schema<string>;
18
18
  iat: import("./schema.js").Schema<number>;
@@ -1,6 +1,6 @@
1
1
  import type { InferSchema } from "../extensions/schema/index.js";
2
2
  export declare const getRunKindSchema: () => import("../internal-agents/schema.js").Schema<"eval" | "agent" | "task" | "workflow">;
3
- export declare const getRunStatusSchema: () => import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
3
+ export declare const getRunStatusSchema: () => import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
4
4
  export declare const getRunOwnerSchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
5
5
  kind: import("../internal-agents/schema.js").Schema<"project" | "conversation">;
6
6
  id: import("../internal-agents/schema.js").Schema<string>;
@@ -15,7 +15,7 @@ export declare const getRunExecutionErrorSchema: () => import("../internal-agent
15
15
  export declare const getRunSchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
16
16
  run_id: import("../internal-agents/schema.js").Schema<string>;
17
17
  kind: import("../internal-agents/schema.js").Schema<"eval" | "agent" | "task" | "workflow">;
18
- status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
18
+ status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
19
19
  owner: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
20
20
  kind: import("../internal-agents/schema.js").Schema<"project" | "conversation">;
21
21
  id: import("../internal-agents/schema.js").Schema<string>;
@@ -60,7 +60,7 @@ export declare const getCreateRunResponseSchema: () => import("../internal-agent
60
60
  run: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
61
61
  run_id: import("../internal-agents/schema.js").Schema<string>;
62
62
  kind: import("../internal-agents/schema.js").Schema<"eval" | "agent" | "task" | "workflow">;
63
- status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
63
+ status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
64
64
  owner: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
65
65
  kind: import("../internal-agents/schema.js").Schema<"project" | "conversation">;
66
66
  id: import("../internal-agents/schema.js").Schema<string>;
@@ -105,7 +105,7 @@ export declare const getCancelRunResponseSchema: () => import("../internal-agent
105
105
  run: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
106
106
  run_id: import("../internal-agents/schema.js").Schema<string>;
107
107
  kind: import("../internal-agents/schema.js").Schema<"eval" | "agent" | "task" | "workflow">;
108
- status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
108
+ status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
109
109
  owner: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
110
110
  kind: import("../internal-agents/schema.js").Schema<"project" | "conversation">;
111
111
  id: import("../internal-agents/schema.js").Schema<string>;
@@ -175,7 +175,7 @@ export declare const getRunListSchema: () => import("../internal-agents/schema.j
175
175
  data: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
176
176
  run_id: import("../internal-agents/schema.js").Schema<string>;
177
177
  kind: import("../internal-agents/schema.js").Schema<"eval" | "agent" | "task" | "workflow">;
178
- status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
178
+ status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
179
179
  owner: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
180
180
  kind: import("../internal-agents/schema.js").Schema<"project" | "conversation">;
181
181
  id: import("../internal-agents/schema.js").Schema<string>;
@@ -225,7 +225,7 @@ export declare const getRunListSchema: () => import("../internal-agents/schema.j
225
225
  export declare const RunSchema: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
226
226
  run_id: import("../internal-agents/schema.js").Schema<string>;
227
227
  kind: import("../internal-agents/schema.js").Schema<"eval" | "agent" | "task" | "workflow">;
228
- status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
228
+ status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
229
229
  owner: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
230
230
  kind: import("../internal-agents/schema.js").Schema<"project" | "conversation">;
231
231
  id: import("../internal-agents/schema.js").Schema<string>;
@@ -271,7 +271,7 @@ export declare const CreateRunResponseSchema: import("../internal-agents/schema.
271
271
  run: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
272
272
  run_id: import("../internal-agents/schema.js").Schema<string>;
273
273
  kind: import("../internal-agents/schema.js").Schema<"eval" | "agent" | "task" | "workflow">;
274
- status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
274
+ status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
275
275
  owner: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
276
276
  kind: import("../internal-agents/schema.js").Schema<"project" | "conversation">;
277
277
  id: import("../internal-agents/schema.js").Schema<string>;
@@ -317,7 +317,7 @@ export declare const CancelRunResponseSchema: import("../internal-agents/schema.
317
317
  run: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
318
318
  run_id: import("../internal-agents/schema.js").Schema<string>;
319
319
  kind: import("../internal-agents/schema.js").Schema<"eval" | "agent" | "task" | "workflow">;
320
- status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
320
+ status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
321
321
  owner: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
322
322
  kind: import("../internal-agents/schema.js").Schema<"project" | "conversation">;
323
323
  id: import("../internal-agents/schema.js").Schema<string>;
@@ -384,7 +384,7 @@ export declare const RunListSchema: import("../internal-agents/schema.js").Schem
384
384
  data: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
385
385
  run_id: import("../internal-agents/schema.js").Schema<string>;
386
386
  kind: import("../internal-agents/schema.js").Schema<"eval" | "agent" | "task" | "workflow">;
387
- status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
387
+ status: import("../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
388
388
  owner: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
389
389
  kind: import("../internal-agents/schema.js").Schema<"project" | "conversation">;
390
390
  id: import("../internal-agents/schema.js").Schema<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/src/server/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAM1D,OAAO,EAAE,KAAK,eAAe,EAAqC,MAAM,wBAAwB,CAAC;AAqDjG,MAAM,WAAW,eAAe;IAC9B,8DAA8D;IAC9D,OAAO,EAAE,cAAc,CAAC;IAExB,2BAA2B;IAC3B,MAAM,EAAE,eAAe,CAAC;IAExB,wCAAwC;IACxC,cAAc,EAAE,OAAO,CAAC;IAExB,+BAA+B;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,eAAe,EAAE,eAAe,CAAC;IAEjC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAgHD;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,EAC3C,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,GAClC,OAAO,CAAC,eAAe,CAAC,CAO1B;AAkDD,wBAAsB,SAAS,CAC7B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CA8K1B;AAED,wBAAsB,YAAY,CAChC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CAa1B;AAED,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CAyB1B"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/src/server/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAM1D,OAAO,EAAE,KAAK,eAAe,EAAqC,MAAM,wBAAwB,CAAC;AAyDjG,MAAM,WAAW,eAAe;IAC9B,8DAA8D;IAC9D,OAAO,EAAE,cAAc,CAAC;IAExB,2BAA2B;IAC3B,MAAM,EAAE,eAAe,CAAC;IAExB,wCAAwC;IACxC,cAAc,EAAE,OAAO,CAAC;IAExB,+BAA+B;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,eAAe,EAAE,eAAe,CAAC;IAEjC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAuHD;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,EAC3C,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,GAClC,OAAO,CAAC,eAAe,CAAC,CAO1B;AAkDD,wBAAsB,SAAS,CAC7B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CA8K1B;AAED,wBAAsB,YAAY,CAChC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CAa1B;AAED,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CAyB1B"}
@@ -1,5 +1,6 @@
1
1
  import { clearConfigCache, getConfig } from "../config/index.js";
2
2
  import { orchestrateExtensions, tryResolve } from "../extensions/index.js";
3
+ import { createEvalReportExporterRegistry, EvalReportExporterRegistryName, } from "../extensions/eval/index.js";
3
4
  import { createLLMProviderRegistry, LLMProviderRegistryName, } from "../extensions/llm/index.js";
4
5
  import { createBuiltinExtensions, ensureBuiltinSchemaValidator, } from "../extensions/builtin-extensions.js";
5
6
  import { MISSING_EXTENSION_ERROR } from "../extensions/errors.js";
@@ -62,6 +63,12 @@ function wireTracingShim() {
62
63
  bootstrapLog.debug("[bootstrap] no TracingExporter extension — using no-op tracer");
63
64
  }
64
65
  }
66
+ function createBootstrapPrimeContracts() {
67
+ return {
68
+ [LLMProviderRegistryName]: createLLMProviderRegistry(),
69
+ [EvalReportExporterRegistryName]: createEvalReportExporterRegistry(),
70
+ };
71
+ }
65
72
  const DEFAULT_FILE_LOG_PATH = ".veryfront/logs/server.log";
66
73
  const DEFAULT_FILE_LOG_MAX_SIZE = "10mb";
67
74
  const DEFAULT_FILE_LOG_MAX_FILES = 5;
@@ -194,7 +201,7 @@ export async function bootstrap(projectDir, adapter) {
194
201
  projectDir,
195
202
  config,
196
203
  logger: bootstrapLog,
197
- primeContracts: { [LLMProviderRegistryName]: createLLMProviderRegistry() },
204
+ primeContracts: createBootstrapPrimeContracts(),
198
205
  builtinExtensions: createBuiltinExtensions(),
199
206
  setupTimeoutMs: getEnvironmentConfig().extensionSetupTimeoutMs,
200
207
  });
@@ -236,7 +243,7 @@ export async function bootstrap(projectDir, adapter) {
236
243
  projectDir,
237
244
  config,
238
245
  logger: bootstrapLog,
239
- primeContracts: { [LLMProviderRegistryName]: createLLMProviderRegistry() },
246
+ primeContracts: createBootstrapPrimeContracts(),
240
247
  builtinExtensions: createBuiltinExtensions(),
241
248
  setupTimeoutMs: getEnvironmentConfig().extensionSetupTimeoutMs,
242
249
  });
@@ -300,7 +307,7 @@ export async function bootstrap(projectDir, adapter) {
300
307
  projectDir,
301
308
  config,
302
309
  logger: bootstrapLog,
303
- primeContracts: { [LLMProviderRegistryName]: createLLMProviderRegistry() },
310
+ primeContracts: createBootstrapPrimeContracts(),
304
311
  builtinExtensions: createBuiltinExtensions(),
305
312
  setupTimeoutMs: getEnvironmentConfig().extensionSetupTimeoutMs,
306
313
  }), fsDispose);
@@ -1,3 +1,3 @@
1
1
  /** Shared version value. */
2
- export declare const VERSION = "0.1.878";
2
+ export declare const VERSION = "0.1.879";
3
3
  //# sourceMappingURL=version-constant.d.ts.map
@@ -1,4 +1,4 @@
1
1
  // Keep in sync with deno.json version.
2
2
  // scripts/release.ts updates this constant during releases.
3
3
  /** Shared version value. */
4
- export const VERSION = "0.1.878";
4
+ export const VERSION = "0.1.879";
@@ -7,15 +7,15 @@ import type { InferSchema } from "../../extensions/schema/index.js";
7
7
  /**
8
8
  * Workflow status schema
9
9
  */
10
- export declare const getWorkflowStatusSchema: () => import("../../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
10
+ export declare const getWorkflowStatusSchema: () => import("../../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
11
11
  /**
12
12
  * Node status schema
13
13
  */
14
- export declare const getNodeStatusSchema: () => import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "running" | "skipped">;
14
+ export declare const getNodeStatusSchema: () => import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "skipped" | "running">;
15
15
  /**
16
16
  * Workflow node type schema
17
17
  */
18
- export declare const getWorkflowNodeTypeSchema: () => import("../../internal-agents/schema.js").Schema<"map" | "branch" | "step" | "wait" | "parallel" | "subWorkflow" | "loop">;
18
+ export declare const getWorkflowNodeTypeSchema: () => import("../../internal-agents/schema.js").Schema<"map" | "branch" | "step" | "parallel" | "wait" | "subWorkflow" | "loop">;
19
19
  /**
20
20
  * Backoff strategy schema
21
21
  */
@@ -44,7 +44,7 @@ export declare const getLoopExecutionContextSchema: () => import("../../internal
44
44
  */
45
45
  export declare const getNodeStateSchema: () => import("../../internal-agents/schema.js").Schema<import("../../extensions/schema/schema-validator.js").InferShape<{
46
46
  nodeId: import("../../internal-agents/schema.js").Schema<string>;
47
- status: import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "running" | "skipped">;
47
+ status: import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "skipped" | "running">;
48
48
  input: import("../../internal-agents/schema.js").Schema<unknown>;
49
49
  output: import("../../internal-agents/schema.js").Schema<unknown>;
50
50
  error: import("../../internal-agents/schema.js").Schema<string | undefined>;
@@ -70,7 +70,7 @@ export declare const getCheckpointSchema: () => import("../../internal-agents/sc
70
70
  } & Record<string, unknown>>;
71
71
  nodeStates: import("../../internal-agents/schema.js").Schema<Record<string, import("../../extensions/schema/schema-validator.js").InferShape<{
72
72
  nodeId: import("../../internal-agents/schema.js").Schema<string>;
73
- status: import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "running" | "skipped">;
73
+ status: import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "skipped" | "running">;
74
74
  input: import("../../internal-agents/schema.js").Schema<unknown>;
75
75
  output: import("../../internal-agents/schema.js").Schema<unknown>;
76
76
  error: import("../../internal-agents/schema.js").Schema<string | undefined>;
@@ -82,7 +82,7 @@ export declare const getCheckpointSchema: () => import("../../internal-agents/sc
82
82
  /**
83
83
  * Approval status schema
84
84
  */
85
- export declare const getApprovalStatusSchema: () => import("../../internal-agents/schema.js").Schema<"rejected" | "pending" | "expired" | "approved">;
85
+ export declare const getApprovalStatusSchema: () => import("../../internal-agents/schema.js").Schema<"rejected" | "pending" | "approved" | "expired">;
86
86
  /**
87
87
  * Pending approval schema
88
88
  */
@@ -94,7 +94,7 @@ export declare const getPendingApprovalSchema: () => import("../../internal-agen
94
94
  approvers: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
95
95
  requestedAt: import("../../internal-agents/schema.js").Schema<Date>;
96
96
  expiresAt: import("../../internal-agents/schema.js").Schema<Date | undefined>;
97
- status: import("../../internal-agents/schema.js").Schema<"rejected" | "pending" | "expired" | "approved">;
97
+ status: import("../../internal-agents/schema.js").Schema<"rejected" | "pending" | "approved" | "expired">;
98
98
  decidedBy: import("../../internal-agents/schema.js").Schema<string | undefined>;
99
99
  decidedAt: import("../../internal-agents/schema.js").Schema<Date | undefined>;
100
100
  comment: import("../../internal-agents/schema.js").Schema<string | undefined>;
@@ -130,7 +130,7 @@ export declare const getWorkflowQueueItemSchema: () => import("../../internal-ag
130
130
  */
131
131
  export declare const getRunFilterSchema: () => import("../../internal-agents/schema.js").Schema<import("../../extensions/schema/schema-validator.js").InferShape<{
132
132
  workflowId: import("../../internal-agents/schema.js").Schema<string | undefined>;
133
- status: import("../../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running" | ("waiting" | "failed" | "completed" | "pending" | "cancelled" | "running")[] | undefined>;
133
+ status: import("../../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled" | ("waiting" | "failed" | "completed" | "pending" | "running" | "cancelled")[] | undefined>;
134
134
  createdAfter: import("../../internal-agents/schema.js").Schema<Date | undefined>;
135
135
  createdBefore: import("../../internal-agents/schema.js").Schema<Date | undefined>;
136
136
  limit: import("../../internal-agents/schema.js").Schema<number | undefined>;
@@ -144,9 +144,9 @@ export declare const getParallelStrategySchema: () => import("../../internal-age
144
144
  * Wait type schema
145
145
  */
146
146
  export declare const getWaitTypeSchema: () => import("../../internal-agents/schema.js").Schema<"event" | "approval">;
147
- export declare const WorkflowStatusSchema: import("../../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running">;
148
- export declare const NodeStatusSchema: import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "running" | "skipped">;
149
- export declare const WorkflowNodeTypeSchema: import("../../internal-agents/schema.js").Schema<"map" | "branch" | "step" | "wait" | "parallel" | "subWorkflow" | "loop">;
147
+ export declare const WorkflowStatusSchema: import("../../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled">;
148
+ export declare const NodeStatusSchema: import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "skipped" | "running">;
149
+ export declare const WorkflowNodeTypeSchema: import("../../internal-agents/schema.js").Schema<"map" | "branch" | "step" | "parallel" | "wait" | "subWorkflow" | "loop">;
150
150
  export declare const BackoffStrategySchema: import("../../internal-agents/schema.js").Schema<"fixed" | "linear" | "exponential">;
151
151
  export declare const RetryConfigSchema: import("../../internal-agents/schema.js").Schema<import("../../extensions/schema/schema-validator.js").InferShape<{
152
152
  maxAttempts: import("../../internal-agents/schema.js").Schema<number | undefined>;
@@ -163,7 +163,7 @@ export declare const LoopExecutionContextSchema: import("../../internal-agents/s
163
163
  }>>;
164
164
  export declare const NodeStateSchema: import("../../internal-agents/schema.js").Schema<import("../../extensions/schema/schema-validator.js").InferShape<{
165
165
  nodeId: import("../../internal-agents/schema.js").Schema<string>;
166
- status: import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "running" | "skipped">;
166
+ status: import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "skipped" | "running">;
167
167
  input: import("../../internal-agents/schema.js").Schema<unknown>;
168
168
  output: import("../../internal-agents/schema.js").Schema<unknown>;
169
169
  error: import("../../internal-agents/schema.js").Schema<string | undefined>;
@@ -183,7 +183,7 @@ export declare const CheckpointSchema: import("../../internal-agents/schema.js")
183
183
  } & Record<string, unknown>>;
184
184
  nodeStates: import("../../internal-agents/schema.js").Schema<Record<string, import("../../extensions/schema/schema-validator.js").InferShape<{
185
185
  nodeId: import("../../internal-agents/schema.js").Schema<string>;
186
- status: import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "running" | "skipped">;
186
+ status: import("../../internal-agents/schema.js").Schema<"failed" | "completed" | "pending" | "skipped" | "running">;
187
187
  input: import("../../internal-agents/schema.js").Schema<unknown>;
188
188
  output: import("../../internal-agents/schema.js").Schema<unknown>;
189
189
  error: import("../../internal-agents/schema.js").Schema<string | undefined>;
@@ -192,7 +192,7 @@ export declare const CheckpointSchema: import("../../internal-agents/schema.js")
192
192
  completedAt: import("../../internal-agents/schema.js").Schema<Date | undefined>;
193
193
  }>>>;
194
194
  }>>;
195
- export declare const ApprovalStatusSchema: import("../../internal-agents/schema.js").Schema<"rejected" | "pending" | "expired" | "approved">;
195
+ export declare const ApprovalStatusSchema: import("../../internal-agents/schema.js").Schema<"rejected" | "pending" | "approved" | "expired">;
196
196
  export declare const PendingApprovalSchema: import("../../internal-agents/schema.js").Schema<import("../../extensions/schema/schema-validator.js").InferShape<{
197
197
  id: import("../../internal-agents/schema.js").Schema<string>;
198
198
  nodeId: import("../../internal-agents/schema.js").Schema<string>;
@@ -201,7 +201,7 @@ export declare const PendingApprovalSchema: import("../../internal-agents/schema
201
201
  approvers: import("../../internal-agents/schema.js").Schema<string[] | undefined>;
202
202
  requestedAt: import("../../internal-agents/schema.js").Schema<Date>;
203
203
  expiresAt: import("../../internal-agents/schema.js").Schema<Date | undefined>;
204
- status: import("../../internal-agents/schema.js").Schema<"rejected" | "pending" | "expired" | "approved">;
204
+ status: import("../../internal-agents/schema.js").Schema<"rejected" | "pending" | "approved" | "expired">;
205
205
  decidedBy: import("../../internal-agents/schema.js").Schema<string | undefined>;
206
206
  decidedAt: import("../../internal-agents/schema.js").Schema<Date | undefined>;
207
207
  comment: import("../../internal-agents/schema.js").Schema<string | undefined>;
@@ -225,7 +225,7 @@ export declare const WorkflowQueueItemSchema: import("../../internal-agents/sche
225
225
  }>>;
226
226
  export declare const RunFilterSchema: import("../../internal-agents/schema.js").Schema<import("../../extensions/schema/schema-validator.js").InferShape<{
227
227
  workflowId: import("../../internal-agents/schema.js").Schema<string | undefined>;
228
- status: import("../../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "cancelled" | "running" | ("waiting" | "failed" | "completed" | "pending" | "cancelled" | "running")[] | undefined>;
228
+ status: import("../../internal-agents/schema.js").Schema<"waiting" | "failed" | "completed" | "pending" | "running" | "cancelled" | ("waiting" | "failed" | "completed" | "pending" | "running" | "cancelled")[] | undefined>;
229
229
  createdAfter: import("../../internal-agents/schema.js").Schema<Date | undefined>;
230
230
  createdBefore: import("../../internal-agents/schema.js").Schema<Date | undefined>;
231
231
  limit: import("../../internal-agents/schema.js").Schema<number | undefined>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "veryfront",
3
- "version": "0.1.878",
3
+ "version": "0.1.879",
4
4
  "description": "The simplest way to build AI-powered apps",
5
5
  "keywords": [
6
6
  "react",
@@ -225,6 +225,10 @@
225
225
  "import": "./esm/src/extensions/database/index.js",
226
226
  "types": "./esm/src/extensions/database/index.d.ts"
227
227
  },
228
+ "./extensions/eval": {
229
+ "import": "./esm/src/extensions/eval/index.js",
230
+ "types": "./esm/src/extensions/eval/index.d.ts"
231
+ },
228
232
  "./extensions/parser": {
229
233
  "import": "./esm/src/extensions/parser/index.js",
230
234
  "types": "./esm/src/extensions/parser/index.d.ts"