@sogni-ai/sogni-intelligence-client 2.4.3 → 3.0.0-alpha.10
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/index.d.ts +5 -0
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/agent/index.js +38 -0
- package/dist/agent/index.js.map +1 -0
- package/dist/agent/intentInput.d.ts +106 -0
- package/dist/agent/intentInput.d.ts.map +1 -0
- package/dist/agent/intentInput.js +410 -0
- package/dist/agent/intentInput.js.map +1 -0
- package/dist/agent/toolMetadata.d.ts +37 -0
- package/dist/agent/toolMetadata.d.ts.map +1 -0
- package/dist/agent/toolMetadata.js +146 -0
- package/dist/agent/toolMetadata.js.map +1 -0
- package/dist/agent/turnAnalysis.d.ts +34 -0
- package/dist/agent/turnAnalysis.d.ts.map +1 -0
- package/dist/agent/turnAnalysis.js +155 -0
- package/dist/agent/turnAnalysis.js.map +1 -0
- package/dist/agent/turnPlan.d.ts +40 -0
- package/dist/agent/turnPlan.d.ts.map +1 -0
- package/dist/agent/turnPlan.js +187 -0
- package/dist/agent/turnPlan.js.map +1 -0
- package/dist/artifacts/graph.d.ts +92 -0
- package/dist/artifacts/graph.d.ts.map +1 -0
- package/dist/artifacts/graph.js +484 -0
- package/dist/artifacts/graph.js.map +1 -0
- package/dist/artifacts/index.d.ts +3 -0
- package/dist/artifacts/index.d.ts.map +1 -0
- package/dist/artifacts/index.js +28 -0
- package/dist/artifacts/index.js.map +1 -0
- package/dist/artifacts/queries.d.ts +7 -0
- package/dist/artifacts/queries.d.ts.map +1 -0
- package/dist/artifacts/queries.js +85 -0
- package/dist/artifacts/queries.js.map +1 -0
- package/dist/billing/index.d.ts +3 -0
- package/dist/billing/index.d.ts.map +1 -0
- package/dist/billing/index.js +27 -0
- package/dist/billing/index.js.map +1 -0
- package/dist/billing/spendGate.d.ts +72 -0
- package/dist/billing/spendGate.d.ts.map +1 -0
- package/dist/billing/spendGate.js +344 -0
- package/dist/billing/spendGate.js.map +1 -0
- package/dist/billing/workflowAuthorization.d.ts +56 -0
- package/dist/billing/workflowAuthorization.d.ts.map +1 -0
- package/dist/billing/workflowAuthorization.js +270 -0
- package/dist/billing/workflowAuthorization.js.map +1 -0
- package/dist/contracts/data/promptContracts.d.ts.map +1 -1
- package/dist/contracts/data/promptContracts.js +48 -36
- package/dist/contracts/data/promptContracts.js.map +1 -1
- package/dist/contracts/data/toolPermissions.d.ts +2 -0
- package/dist/contracts/data/toolPermissions.d.ts.map +1 -1
- package/dist/contracts/data/toolPermissions.js +2 -13
- package/dist/contracts/data/toolPermissions.js.map +1 -1
- package/dist/contracts/index.d.ts +2 -2
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +5 -3
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/toolGatingPolicy.d.ts.map +1 -1
- package/dist/contracts/toolGatingPolicy.js +6 -2
- package/dist/contracts/toolGatingPolicy.js.map +1 -1
- package/dist/contracts/toolSurface.d.ts +1 -0
- package/dist/contracts/toolSurface.d.ts.map +1 -1
- package/dist/contracts/toolSurface.js +12 -5
- package/dist/contracts/toolSurface.js.map +1 -1
- package/dist/contracts/turnPolicy.d.ts +2 -1
- package/dist/contracts/turnPolicy.d.ts.map +1 -1
- package/dist/contracts/turnPolicy.js +14 -0
- package/dist/contracts/turnPolicy.js.map +1 -1
- package/dist/events/index.d.ts +2 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +12 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/runEvent.d.ts +31 -0
- package/dist/events/runEvent.d.ts.map +1 -0
- package/dist/events/runEvent.js +161 -0
- package/dist/events/runEvent.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +26 -1
- package/dist/index.js.map +1 -1
- package/dist/public-skill-runtime/index.d.ts +1 -1
- package/dist/public-skill-runtime/index.d.ts.map +1 -1
- package/dist/public-skill-runtime/index.js +229 -119
- package/dist/public-skill-runtime/index.js.map +1 -1
- package/dist/schemas/agent/intent-input.schema.json +128 -0
- package/dist/schemas/agent/turn-analysis.schema.json +75 -0
- package/dist/schemas/artifacts/artifact-graph.schema.json +42 -0
- package/dist/schemas/artifacts/artifact-node.schema.json +137 -0
- package/dist/schemas/billing/spend-gate.schema.json +130 -0
- package/dist/schemas/billing/workflow-authorization.schema.json +83 -0
- package/dist/schemas/events/run-event.schema.json +111 -0
- package/dist/schemas/tools/tool-metadata.schema.json +78 -0
- package/dist/tools/definitions/animate-photo/definition.js +5 -5
- package/dist/tools/definitions/animate-photo/definition.js.map +1 -1
- package/dist/tools/definitions/edit-image/definition.js +3 -3
- package/dist/tools/definitions/edit-image/definition.js.map +1 -1
- package/dist/tools/definitions/generate-image/definition.js +4 -4
- package/dist/tools/definitions/generate-image/definition.js.map +1 -1
- package/dist/tools/definitions/generate-music/definition.js +2 -2
- package/dist/tools/definitions/generate-music/definition.js.map +1 -1
- package/dist/tools/definitions/generate-video/definition.js +2 -2
- package/dist/tools/definitions/generate-video/definition.js.map +1 -1
- package/dist/tools/definitions/sound-to-video/definition.js +2 -2
- package/dist/tools/definitions/sound-to-video/definition.js.map +1 -1
- package/dist/tools/index.d.ts +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +3 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/normalizeArgs.d.ts +1 -0
- package/dist/tools/normalizeArgs.d.ts.map +1 -1
- package/dist/tools/normalizeArgs.js +83 -8
- package/dist/tools/normalizeArgs.js.map +1 -1
- package/dist/utils/helpers.d.ts.map +1 -1
- package/dist/utils/helpers.js +4 -2
- package/dist/utils/helpers.js.map +1 -1
- package/dist/workflows/index.d.ts +2 -0
- package/dist/workflows/index.d.ts.map +1 -1
- package/dist/workflows/index.js +7 -1
- package/dist/workflows/index.js.map +1 -1
- package/dist/workflows/primitives/index.d.ts +1 -0
- package/dist/workflows/primitives/index.d.ts.map +1 -1
- package/dist/workflows/primitives/index.js +1 -0
- package/dist/workflows/primitives/index.js.map +1 -1
- package/dist/workflows/primitives/sanitizer.d.ts +22 -0
- package/dist/workflows/primitives/sanitizer.d.ts.map +1 -0
- package/dist/workflows/primitives/sanitizer.js +96 -0
- package/dist/workflows/primitives/sanitizer.js.map +1 -0
- package/dist-esm/agent/index.js +5 -0
- package/dist-esm/agent/index.js.map +1 -0
- package/dist-esm/agent/intentInput.js +397 -0
- package/dist-esm/agent/intentInput.js.map +1 -0
- package/dist-esm/agent/toolMetadata.js +136 -0
- package/dist-esm/agent/toolMetadata.js.map +1 -0
- package/dist-esm/agent/turnAnalysis.js +147 -0
- package/dist-esm/agent/turnAnalysis.js.map +1 -0
- package/dist-esm/agent/turnPlan.js +180 -0
- package/dist-esm/agent/turnPlan.js.map +1 -0
- package/dist-esm/artifacts/graph.js +465 -0
- package/dist-esm/artifacts/graph.js.map +1 -0
- package/dist-esm/artifacts/index.js +3 -0
- package/dist-esm/artifacts/index.js.map +1 -0
- package/dist-esm/artifacts/queries.js +78 -0
- package/dist-esm/artifacts/queries.js.map +1 -0
- package/dist-esm/billing/index.js +3 -0
- package/dist-esm/billing/index.js.map +1 -0
- package/dist-esm/billing/spendGate.js +329 -0
- package/dist-esm/billing/spendGate.js.map +1 -0
- package/dist-esm/billing/workflowAuthorization.js +260 -0
- package/dist-esm/billing/workflowAuthorization.js.map +1 -0
- package/dist-esm/contracts/data/promptContracts.js +48 -36
- package/dist-esm/contracts/data/promptContracts.js.map +1 -1
- package/dist-esm/contracts/data/toolPermissions.js +2 -13
- package/dist-esm/contracts/data/toolPermissions.js.map +1 -1
- package/dist-esm/contracts/index.js +2 -2
- package/dist-esm/contracts/index.js.map +1 -1
- package/dist-esm/contracts/toolGatingPolicy.js +6 -2
- package/dist-esm/contracts/toolGatingPolicy.js.map +1 -1
- package/dist-esm/contracts/toolSurface.js +11 -4
- package/dist-esm/contracts/toolSurface.js.map +1 -1
- package/dist-esm/contracts/turnPolicy.js +13 -0
- package/dist-esm/contracts/turnPolicy.js.map +1 -1
- package/dist-esm/events/index.js +2 -0
- package/dist-esm/events/index.js.map +1 -0
- package/dist-esm/events/runEvent.js +152 -0
- package/dist-esm/events/runEvent.js.map +1 -0
- package/dist-esm/index.js +5 -0
- package/dist-esm/index.js.map +1 -1
- package/dist-esm/public-skill-runtime/index.js +229 -119
- package/dist-esm/public-skill-runtime/index.js.map +1 -1
- package/dist-esm/schemas/agent/intent-input.schema.json +128 -0
- package/dist-esm/schemas/agent/turn-analysis.schema.json +75 -0
- package/dist-esm/schemas/artifacts/artifact-graph.schema.json +42 -0
- package/dist-esm/schemas/artifacts/artifact-node.schema.json +137 -0
- package/dist-esm/schemas/billing/spend-gate.schema.json +130 -0
- package/dist-esm/schemas/billing/workflow-authorization.schema.json +83 -0
- package/dist-esm/schemas/events/run-event.schema.json +111 -0
- package/dist-esm/schemas/tools/tool-metadata.schema.json +78 -0
- package/dist-esm/tools/definitions/animate-photo/definition.js +5 -5
- package/dist-esm/tools/definitions/animate-photo/definition.js.map +1 -1
- package/dist-esm/tools/definitions/edit-image/definition.js +3 -3
- package/dist-esm/tools/definitions/edit-image/definition.js.map +1 -1
- package/dist-esm/tools/definitions/generate-image/definition.js +4 -4
- package/dist-esm/tools/definitions/generate-image/definition.js.map +1 -1
- package/dist-esm/tools/definitions/generate-music/definition.js +2 -2
- package/dist-esm/tools/definitions/generate-music/definition.js.map +1 -1
- package/dist-esm/tools/definitions/generate-video/definition.js +2 -2
- package/dist-esm/tools/definitions/generate-video/definition.js.map +1 -1
- package/dist-esm/tools/definitions/sound-to-video/definition.js +2 -2
- package/dist-esm/tools/definitions/sound-to-video/definition.js.map +1 -1
- package/dist-esm/tools/index.js +1 -1
- package/dist-esm/tools/index.js.map +1 -1
- package/dist-esm/tools/normalizeArgs.js +82 -8
- package/dist-esm/tools/normalizeArgs.js.map +1 -1
- package/dist-esm/utils/helpers.js +4 -2
- package/dist-esm/utils/helpers.js.map +1 -1
- package/dist-esm/workflows/index.js +1 -0
- package/dist-esm/workflows/index.js.map +1 -1
- package/dist-esm/workflows/primitives/index.js +1 -0
- package/dist-esm/workflows/primitives/index.js.map +1 -1
- package/dist-esm/workflows/primitives/sanitizer.js +89 -0
- package/dist-esm/workflows/primitives/sanitizer.js.map +1 -0
- package/package.json +30 -3
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ArtifactGraph, ArtifactKind, ArtifactNode } from './graph.js';
|
|
2
|
+
export declare function findByKind(graph: ArtifactGraph, kind: ArtifactKind): ArtifactNode[];
|
|
3
|
+
export declare function findByLabel(graph: ArtifactGraph, label: string): ArtifactNode[];
|
|
4
|
+
export declare function walkLineage(graph: ArtifactGraph, artifactId: string): ArtifactNode[];
|
|
5
|
+
export declare function findSiblings(graph: ArtifactGraph, artifactId: string): ArtifactNode[];
|
|
6
|
+
export declare function resolveReference(graph: ArtifactGraph, ref: string): ArtifactNode | undefined;
|
|
7
|
+
//# sourceMappingURL=queries.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../src/artifacts/queries.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG5E,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,GAAG,YAAY,EAAE,CAMnF;AAMD,wBAAgB,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE,CAM/E;AAMD,wBAAgB,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,GAAG,YAAY,EAAE,CAmBpF;AAOD,wBAAgB,YAAY,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,GAAG,YAAY,EAAE,CAYrF;AAaD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAsB5F"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findByKind = findByKind;
|
|
4
|
+
exports.findByLabel = findByLabel;
|
|
5
|
+
exports.walkLineage = walkLineage;
|
|
6
|
+
exports.findSiblings = findSiblings;
|
|
7
|
+
exports.resolveReference = resolveReference;
|
|
8
|
+
function findByKind(graph, kind) {
|
|
9
|
+
const out = [];
|
|
10
|
+
for (const node of graph.nodes.values()) {
|
|
11
|
+
if (node.kind === kind)
|
|
12
|
+
out.push(node);
|
|
13
|
+
}
|
|
14
|
+
return out;
|
|
15
|
+
}
|
|
16
|
+
function findByLabel(graph, label) {
|
|
17
|
+
const out = [];
|
|
18
|
+
for (const node of graph.nodes.values()) {
|
|
19
|
+
if (node.userLabel === label)
|
|
20
|
+
out.push(node);
|
|
21
|
+
}
|
|
22
|
+
return out;
|
|
23
|
+
}
|
|
24
|
+
function walkLineage(graph, artifactId) {
|
|
25
|
+
const start = graph.nodes.get(artifactId);
|
|
26
|
+
if (!start)
|
|
27
|
+
return [];
|
|
28
|
+
const visited = new Set([artifactId]);
|
|
29
|
+
const queue = start.parents.map((edge) => edge.parentId);
|
|
30
|
+
const out = [];
|
|
31
|
+
while (queue.length > 0) {
|
|
32
|
+
const next = queue.shift();
|
|
33
|
+
if (next === undefined)
|
|
34
|
+
break;
|
|
35
|
+
if (visited.has(next))
|
|
36
|
+
continue;
|
|
37
|
+
visited.add(next);
|
|
38
|
+
const node = graph.nodes.get(next);
|
|
39
|
+
if (!node)
|
|
40
|
+
continue;
|
|
41
|
+
out.push(node);
|
|
42
|
+
for (const edge of node.parents) {
|
|
43
|
+
if (!visited.has(edge.parentId))
|
|
44
|
+
queue.push(edge.parentId);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return out;
|
|
48
|
+
}
|
|
49
|
+
function findSiblings(graph, artifactId) {
|
|
50
|
+
const target = graph.nodes.get(artifactId);
|
|
51
|
+
if (!target || target.parents.length === 0)
|
|
52
|
+
return [];
|
|
53
|
+
const parentIds = new Set(target.parents.map((edge) => edge.parentId));
|
|
54
|
+
const out = [];
|
|
55
|
+
for (const node of graph.nodes.values()) {
|
|
56
|
+
if (node.artifactId === artifactId)
|
|
57
|
+
continue;
|
|
58
|
+
if (node.parents.some((edge) => parentIds.has(edge.parentId))) {
|
|
59
|
+
out.push(node);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return out;
|
|
63
|
+
}
|
|
64
|
+
function resolveReference(graph, ref) {
|
|
65
|
+
if (typeof ref !== 'string' || ref.length === 0)
|
|
66
|
+
return undefined;
|
|
67
|
+
if (/^\d+$/.test(ref)) {
|
|
68
|
+
const index = Number.parseInt(ref, 10);
|
|
69
|
+
if (!Number.isFinite(index) || index < 1)
|
|
70
|
+
return undefined;
|
|
71
|
+
const nodes = Array.from(graph.nodes.values());
|
|
72
|
+
if (index > nodes.length)
|
|
73
|
+
return undefined;
|
|
74
|
+
return nodes[index - 1];
|
|
75
|
+
}
|
|
76
|
+
const byId = graph.nodes.get(ref);
|
|
77
|
+
if (byId)
|
|
78
|
+
return byId;
|
|
79
|
+
for (const node of graph.nodes.values()) {
|
|
80
|
+
if (node.userLabel === ref)
|
|
81
|
+
return node;
|
|
82
|
+
}
|
|
83
|
+
return undefined;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=queries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/artifacts/queries.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { type SpendGateState, type SpendGateScope, type SpendGateTokenType, type SpendGateDecision, type NormalizedSpendGateDecision, type SpendGateCostBreakdownEntry, type SpendGatePendingToolCallRef, type SpendGatePendingWorkflowPlanRef, type SpendGateEstimate, type SpendGateRequest, type SpendGate, isSpendGateState, isSpendGateScope, isSpendGateTokenType, isSpendGateDecision, isSpendGateCostBreakdownEntry, isSpendGatePendingToolCallRef, isSpendGatePendingWorkflowPlanRef, isSpendGateEstimate, isSpendGateRequest, isSpendGate, normalizeSpendDecision, validateSpendGateRequest, validateSpendGate, type SpendGateValidationError, type SpendGateValidationResult, } from './spendGate.js';
|
|
2
|
+
export { type WorkflowSpendTokenType, type WorkflowCostPreview, type WorkflowRunConfirmation, type StageSettlementStatus, type StageSettlement, type WorkflowAuthorization, isWorkflowSpendTokenType, isStageSettlementStatus, isWorkflowCostPreview, isWorkflowRunConfirmation, isStageSettlement, isWorkflowAuthorization, validateWorkflowCostPreview, validateWorkflowAuthorization, type WorkflowAuthorizationValidationError, type WorkflowAuthorizationValidationResult, } from './workflowAuthorization.js';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/billing/index.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EACpC,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,6BAA6B,EAC7B,6BAA6B,EAC7B,iCAAiC,EACjC,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,sBAAsB,EACtB,wBAAwB,EACxB,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,GAC/B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,EAC7B,KAAK,oCAAoC,EACzC,KAAK,qCAAqC,GAC3C,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateWorkflowAuthorization = exports.validateWorkflowCostPreview = exports.isWorkflowAuthorization = exports.isStageSettlement = exports.isWorkflowRunConfirmation = exports.isWorkflowCostPreview = exports.isStageSettlementStatus = exports.isWorkflowSpendTokenType = exports.validateSpendGate = exports.validateSpendGateRequest = exports.normalizeSpendDecision = exports.isSpendGate = exports.isSpendGateRequest = exports.isSpendGateEstimate = exports.isSpendGatePendingWorkflowPlanRef = exports.isSpendGatePendingToolCallRef = exports.isSpendGateCostBreakdownEntry = exports.isSpendGateDecision = exports.isSpendGateTokenType = exports.isSpendGateScope = exports.isSpendGateState = void 0;
|
|
4
|
+
var spendGate_js_1 = require("./spendGate.js");
|
|
5
|
+
Object.defineProperty(exports, "isSpendGateState", { enumerable: true, get: function () { return spendGate_js_1.isSpendGateState; } });
|
|
6
|
+
Object.defineProperty(exports, "isSpendGateScope", { enumerable: true, get: function () { return spendGate_js_1.isSpendGateScope; } });
|
|
7
|
+
Object.defineProperty(exports, "isSpendGateTokenType", { enumerable: true, get: function () { return spendGate_js_1.isSpendGateTokenType; } });
|
|
8
|
+
Object.defineProperty(exports, "isSpendGateDecision", { enumerable: true, get: function () { return spendGate_js_1.isSpendGateDecision; } });
|
|
9
|
+
Object.defineProperty(exports, "isSpendGateCostBreakdownEntry", { enumerable: true, get: function () { return spendGate_js_1.isSpendGateCostBreakdownEntry; } });
|
|
10
|
+
Object.defineProperty(exports, "isSpendGatePendingToolCallRef", { enumerable: true, get: function () { return spendGate_js_1.isSpendGatePendingToolCallRef; } });
|
|
11
|
+
Object.defineProperty(exports, "isSpendGatePendingWorkflowPlanRef", { enumerable: true, get: function () { return spendGate_js_1.isSpendGatePendingWorkflowPlanRef; } });
|
|
12
|
+
Object.defineProperty(exports, "isSpendGateEstimate", { enumerable: true, get: function () { return spendGate_js_1.isSpendGateEstimate; } });
|
|
13
|
+
Object.defineProperty(exports, "isSpendGateRequest", { enumerable: true, get: function () { return spendGate_js_1.isSpendGateRequest; } });
|
|
14
|
+
Object.defineProperty(exports, "isSpendGate", { enumerable: true, get: function () { return spendGate_js_1.isSpendGate; } });
|
|
15
|
+
Object.defineProperty(exports, "normalizeSpendDecision", { enumerable: true, get: function () { return spendGate_js_1.normalizeSpendDecision; } });
|
|
16
|
+
Object.defineProperty(exports, "validateSpendGateRequest", { enumerable: true, get: function () { return spendGate_js_1.validateSpendGateRequest; } });
|
|
17
|
+
Object.defineProperty(exports, "validateSpendGate", { enumerable: true, get: function () { return spendGate_js_1.validateSpendGate; } });
|
|
18
|
+
var workflowAuthorization_js_1 = require("./workflowAuthorization.js");
|
|
19
|
+
Object.defineProperty(exports, "isWorkflowSpendTokenType", { enumerable: true, get: function () { return workflowAuthorization_js_1.isWorkflowSpendTokenType; } });
|
|
20
|
+
Object.defineProperty(exports, "isStageSettlementStatus", { enumerable: true, get: function () { return workflowAuthorization_js_1.isStageSettlementStatus; } });
|
|
21
|
+
Object.defineProperty(exports, "isWorkflowCostPreview", { enumerable: true, get: function () { return workflowAuthorization_js_1.isWorkflowCostPreview; } });
|
|
22
|
+
Object.defineProperty(exports, "isWorkflowRunConfirmation", { enumerable: true, get: function () { return workflowAuthorization_js_1.isWorkflowRunConfirmation; } });
|
|
23
|
+
Object.defineProperty(exports, "isStageSettlement", { enumerable: true, get: function () { return workflowAuthorization_js_1.isStageSettlement; } });
|
|
24
|
+
Object.defineProperty(exports, "isWorkflowAuthorization", { enumerable: true, get: function () { return workflowAuthorization_js_1.isWorkflowAuthorization; } });
|
|
25
|
+
Object.defineProperty(exports, "validateWorkflowCostPreview", { enumerable: true, get: function () { return workflowAuthorization_js_1.validateWorkflowCostPreview; } });
|
|
26
|
+
Object.defineProperty(exports, "validateWorkflowAuthorization", { enumerable: true, get: function () { return workflowAuthorization_js_1.validateWorkflowAuthorization; } });
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/billing/index.ts"],"names":[],"mappings":";;;AAQA,+CA2BwB;AAftB,gHAAA,gBAAgB,OAAA;AAChB,gHAAA,gBAAgB,OAAA;AAChB,oHAAA,oBAAoB,OAAA;AACpB,mHAAA,mBAAmB,OAAA;AACnB,6HAAA,6BAA6B,OAAA;AAC7B,6HAAA,6BAA6B,OAAA;AAC7B,iIAAA,iCAAiC,OAAA;AACjC,mHAAA,mBAAmB,OAAA;AACnB,kHAAA,kBAAkB,OAAA;AAClB,2GAAA,WAAW,OAAA;AACX,sHAAA,sBAAsB,OAAA;AACtB,wHAAA,wBAAwB,OAAA;AACxB,iHAAA,iBAAiB,OAAA;AAKnB,uEAiBoC;AAVlC,oIAAA,wBAAwB,OAAA;AACxB,mIAAA,uBAAuB,OAAA;AACvB,iIAAA,qBAAqB,OAAA;AACrB,qIAAA,yBAAyB,OAAA;AACzB,6HAAA,iBAAiB,OAAA;AACjB,mIAAA,uBAAuB,OAAA;AACvB,uIAAA,2BAA2B,OAAA;AAC3B,yIAAA,6BAA6B,OAAA"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
export type SpendGateState = 'not_required' | 'preview_required' | 'waiting_for_user' | 'confirmed' | 'cancelled' | 'insufficient_credit' | 'safety_review_required' | 'failed';
|
|
2
|
+
export type SpendGateScope = 'tool_call' | 'parallel_batch' | 'workflow_run';
|
|
3
|
+
export type SpendGateTokenType = 'spark' | 'sogni';
|
|
4
|
+
export type SpendGateDecision = 'confirm' | 'cancel' | 'approved' | 'rejected' | 'cancelled';
|
|
5
|
+
export type NormalizedSpendGateDecision = 'confirm' | 'cancel';
|
|
6
|
+
export declare function normalizeSpendDecision(decision: SpendGateDecision): NormalizedSpendGateDecision;
|
|
7
|
+
export interface SpendGateCostBreakdownEntry {
|
|
8
|
+
model: string;
|
|
9
|
+
units: number;
|
|
10
|
+
tokenType: SpendGateTokenType;
|
|
11
|
+
}
|
|
12
|
+
export interface SpendGatePendingToolCallRef {
|
|
13
|
+
toolCallId: string;
|
|
14
|
+
toolName: string;
|
|
15
|
+
estimateUnits?: number;
|
|
16
|
+
}
|
|
17
|
+
export interface SpendGatePendingWorkflowPlanRef {
|
|
18
|
+
workflowRunId: string;
|
|
19
|
+
templateId: string;
|
|
20
|
+
}
|
|
21
|
+
export interface SpendGateEstimate {
|
|
22
|
+
capacityUnits: number;
|
|
23
|
+
breakdown: SpendGateCostBreakdownEntry[];
|
|
24
|
+
tokenType: SpendGateTokenType;
|
|
25
|
+
maxAcceptableUnits?: number;
|
|
26
|
+
}
|
|
27
|
+
export interface SpendGateRequest {
|
|
28
|
+
scope: SpendGateScope;
|
|
29
|
+
toolCallId?: string;
|
|
30
|
+
workflowRunId?: string;
|
|
31
|
+
estimateCapacityUnits: number;
|
|
32
|
+
estimateCostBreakdown: SpendGateCostBreakdownEntry[];
|
|
33
|
+
maxAcceptableUnits?: number;
|
|
34
|
+
reason?: string;
|
|
35
|
+
}
|
|
36
|
+
export interface SpendGate {
|
|
37
|
+
state: SpendGateState;
|
|
38
|
+
gateId?: string;
|
|
39
|
+
scope?: SpendGateScope;
|
|
40
|
+
runId?: string;
|
|
41
|
+
estimate?: SpendGateEstimate;
|
|
42
|
+
reason?: string;
|
|
43
|
+
pendingToolCalls?: SpendGatePendingToolCallRef[];
|
|
44
|
+
pendingWorkflowPlan?: SpendGatePendingWorkflowPlanRef;
|
|
45
|
+
createdAt?: string;
|
|
46
|
+
updatedAt?: string;
|
|
47
|
+
decidedAt?: string;
|
|
48
|
+
decision?: SpendGateDecision;
|
|
49
|
+
request?: SpendGateRequest;
|
|
50
|
+
failureReason?: string;
|
|
51
|
+
}
|
|
52
|
+
export declare function isSpendGateState(value: unknown): value is SpendGateState;
|
|
53
|
+
export declare function isSpendGateScope(value: unknown): value is SpendGateScope;
|
|
54
|
+
export declare function isSpendGateTokenType(value: unknown): value is SpendGateTokenType;
|
|
55
|
+
export declare function isSpendGateDecision(value: unknown): value is SpendGateDecision;
|
|
56
|
+
export declare function isSpendGateCostBreakdownEntry(value: unknown): value is SpendGateCostBreakdownEntry;
|
|
57
|
+
export declare function isSpendGatePendingToolCallRef(value: unknown): value is SpendGatePendingToolCallRef;
|
|
58
|
+
export declare function isSpendGatePendingWorkflowPlanRef(value: unknown): value is SpendGatePendingWorkflowPlanRef;
|
|
59
|
+
export declare function isSpendGateEstimate(value: unknown): value is SpendGateEstimate;
|
|
60
|
+
export declare function isSpendGateRequest(value: unknown): value is SpendGateRequest;
|
|
61
|
+
export declare function isSpendGate(value: unknown): value is SpendGate;
|
|
62
|
+
export interface SpendGateValidationError {
|
|
63
|
+
path: string;
|
|
64
|
+
message: string;
|
|
65
|
+
}
|
|
66
|
+
export interface SpendGateValidationResult {
|
|
67
|
+
valid: boolean;
|
|
68
|
+
errors: SpendGateValidationError[];
|
|
69
|
+
}
|
|
70
|
+
export declare function validateSpendGateRequest(value: unknown): SpendGateValidationResult;
|
|
71
|
+
export declare function validateSpendGate(value: unknown): SpendGateValidationResult;
|
|
72
|
+
//# sourceMappingURL=spendGate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spendGate.d.ts","sourceRoot":"","sources":["../../src/billing/spendGate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,344 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.normalizeSpendDecision = normalizeSpendDecision;
|
|
4
|
+
exports.isSpendGateState = isSpendGateState;
|
|
5
|
+
exports.isSpendGateScope = isSpendGateScope;
|
|
6
|
+
exports.isSpendGateTokenType = isSpendGateTokenType;
|
|
7
|
+
exports.isSpendGateDecision = isSpendGateDecision;
|
|
8
|
+
exports.isSpendGateCostBreakdownEntry = isSpendGateCostBreakdownEntry;
|
|
9
|
+
exports.isSpendGatePendingToolCallRef = isSpendGatePendingToolCallRef;
|
|
10
|
+
exports.isSpendGatePendingWorkflowPlanRef = isSpendGatePendingWorkflowPlanRef;
|
|
11
|
+
exports.isSpendGateEstimate = isSpendGateEstimate;
|
|
12
|
+
exports.isSpendGateRequest = isSpendGateRequest;
|
|
13
|
+
exports.isSpendGate = isSpendGate;
|
|
14
|
+
exports.validateSpendGateRequest = validateSpendGateRequest;
|
|
15
|
+
exports.validateSpendGate = validateSpendGate;
|
|
16
|
+
function normalizeSpendDecision(decision) {
|
|
17
|
+
switch (decision) {
|
|
18
|
+
case 'confirm':
|
|
19
|
+
case 'cancel':
|
|
20
|
+
return decision;
|
|
21
|
+
case 'approved':
|
|
22
|
+
return 'confirm';
|
|
23
|
+
case 'rejected':
|
|
24
|
+
case 'cancelled':
|
|
25
|
+
return 'cancel';
|
|
26
|
+
default: {
|
|
27
|
+
const exhaustive = decision;
|
|
28
|
+
throw new Error(`Unknown SpendGateDecision value: ${String(exhaustive)}`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
const SPEND_GATE_STATES = new Set([
|
|
33
|
+
'not_required',
|
|
34
|
+
'preview_required',
|
|
35
|
+
'waiting_for_user',
|
|
36
|
+
'confirmed',
|
|
37
|
+
'cancelled',
|
|
38
|
+
'insufficient_credit',
|
|
39
|
+
'safety_review_required',
|
|
40
|
+
'failed',
|
|
41
|
+
]);
|
|
42
|
+
const SPEND_GATE_SCOPES = new Set([
|
|
43
|
+
'tool_call',
|
|
44
|
+
'parallel_batch',
|
|
45
|
+
'workflow_run',
|
|
46
|
+
]);
|
|
47
|
+
const SPEND_GATE_TOKEN_TYPES = new Set([
|
|
48
|
+
'spark',
|
|
49
|
+
'sogni',
|
|
50
|
+
]);
|
|
51
|
+
const SPEND_GATE_DECISIONS = new Set([
|
|
52
|
+
'confirm',
|
|
53
|
+
'cancel',
|
|
54
|
+
'approved',
|
|
55
|
+
'rejected',
|
|
56
|
+
'cancelled',
|
|
57
|
+
]);
|
|
58
|
+
function isRecord(value) {
|
|
59
|
+
return value !== null && typeof value === 'object' && !Array.isArray(value);
|
|
60
|
+
}
|
|
61
|
+
function isSpendGateState(value) {
|
|
62
|
+
return typeof value === 'string' && SPEND_GATE_STATES.has(value);
|
|
63
|
+
}
|
|
64
|
+
function isSpendGateScope(value) {
|
|
65
|
+
return typeof value === 'string' && SPEND_GATE_SCOPES.has(value);
|
|
66
|
+
}
|
|
67
|
+
function isSpendGateTokenType(value) {
|
|
68
|
+
return typeof value === 'string' && SPEND_GATE_TOKEN_TYPES.has(value);
|
|
69
|
+
}
|
|
70
|
+
function isSpendGateDecision(value) {
|
|
71
|
+
return typeof value === 'string' && SPEND_GATE_DECISIONS.has(value);
|
|
72
|
+
}
|
|
73
|
+
function isSpendGateCostBreakdownEntry(value) {
|
|
74
|
+
if (!isRecord(value))
|
|
75
|
+
return false;
|
|
76
|
+
if (typeof value.model !== 'string')
|
|
77
|
+
return false;
|
|
78
|
+
if (typeof value.units !== 'number' || !Number.isFinite(value.units))
|
|
79
|
+
return false;
|
|
80
|
+
if (!isSpendGateTokenType(value.tokenType))
|
|
81
|
+
return false;
|
|
82
|
+
return true;
|
|
83
|
+
}
|
|
84
|
+
function isSpendGatePendingToolCallRef(value) {
|
|
85
|
+
if (!isRecord(value))
|
|
86
|
+
return false;
|
|
87
|
+
if (typeof value.toolCallId !== 'string')
|
|
88
|
+
return false;
|
|
89
|
+
if (typeof value.toolName !== 'string')
|
|
90
|
+
return false;
|
|
91
|
+
if (value.estimateUnits !== undefined
|
|
92
|
+
&& (typeof value.estimateUnits !== 'number' || !Number.isFinite(value.estimateUnits))) {
|
|
93
|
+
return false;
|
|
94
|
+
}
|
|
95
|
+
return true;
|
|
96
|
+
}
|
|
97
|
+
function isSpendGatePendingWorkflowPlanRef(value) {
|
|
98
|
+
if (!isRecord(value))
|
|
99
|
+
return false;
|
|
100
|
+
if (typeof value.workflowRunId !== 'string')
|
|
101
|
+
return false;
|
|
102
|
+
if (typeof value.templateId !== 'string')
|
|
103
|
+
return false;
|
|
104
|
+
return true;
|
|
105
|
+
}
|
|
106
|
+
function isSpendGateEstimate(value) {
|
|
107
|
+
if (!isRecord(value))
|
|
108
|
+
return false;
|
|
109
|
+
if (typeof value.capacityUnits !== 'number' || !Number.isFinite(value.capacityUnits))
|
|
110
|
+
return false;
|
|
111
|
+
if (!Array.isArray(value.breakdown) || !value.breakdown.every(isSpendGateCostBreakdownEntry)) {
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
if (!isSpendGateTokenType(value.tokenType))
|
|
115
|
+
return false;
|
|
116
|
+
if (value.maxAcceptableUnits !== undefined &&
|
|
117
|
+
(typeof value.maxAcceptableUnits !== 'number' || !Number.isFinite(value.maxAcceptableUnits))) {
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
function isSpendGateRequest(value) {
|
|
123
|
+
if (!isRecord(value))
|
|
124
|
+
return false;
|
|
125
|
+
if (!isSpendGateScope(value.scope))
|
|
126
|
+
return false;
|
|
127
|
+
if (value.toolCallId !== undefined && typeof value.toolCallId !== 'string')
|
|
128
|
+
return false;
|
|
129
|
+
if (value.workflowRunId !== undefined && typeof value.workflowRunId !== 'string')
|
|
130
|
+
return false;
|
|
131
|
+
if (typeof value.estimateCapacityUnits !== 'number' || !Number.isFinite(value.estimateCapacityUnits)) {
|
|
132
|
+
return false;
|
|
133
|
+
}
|
|
134
|
+
if (!Array.isArray(value.estimateCostBreakdown))
|
|
135
|
+
return false;
|
|
136
|
+
if (!value.estimateCostBreakdown.every(isSpendGateCostBreakdownEntry))
|
|
137
|
+
return false;
|
|
138
|
+
if (value.maxAcceptableUnits !== undefined &&
|
|
139
|
+
(typeof value.maxAcceptableUnits !== 'number' || !Number.isFinite(value.maxAcceptableUnits))) {
|
|
140
|
+
return false;
|
|
141
|
+
}
|
|
142
|
+
if (value.reason !== undefined && typeof value.reason !== 'string')
|
|
143
|
+
return false;
|
|
144
|
+
return true;
|
|
145
|
+
}
|
|
146
|
+
function isSpendGate(value) {
|
|
147
|
+
if (!isRecord(value))
|
|
148
|
+
return false;
|
|
149
|
+
if (!isSpendGateState(value.state))
|
|
150
|
+
return false;
|
|
151
|
+
if (value.gateId !== undefined && typeof value.gateId !== 'string')
|
|
152
|
+
return false;
|
|
153
|
+
if (value.scope !== undefined && !isSpendGateScope(value.scope))
|
|
154
|
+
return false;
|
|
155
|
+
if (value.runId !== undefined && typeof value.runId !== 'string')
|
|
156
|
+
return false;
|
|
157
|
+
if (value.estimate !== undefined && !isSpendGateEstimate(value.estimate))
|
|
158
|
+
return false;
|
|
159
|
+
if (value.reason !== undefined && typeof value.reason !== 'string')
|
|
160
|
+
return false;
|
|
161
|
+
if (value.pendingToolCalls !== undefined &&
|
|
162
|
+
(!Array.isArray(value.pendingToolCalls) ||
|
|
163
|
+
!value.pendingToolCalls.every(isSpendGatePendingToolCallRef))) {
|
|
164
|
+
return false;
|
|
165
|
+
}
|
|
166
|
+
if (value.pendingWorkflowPlan !== undefined &&
|
|
167
|
+
!isSpendGatePendingWorkflowPlanRef(value.pendingWorkflowPlan)) {
|
|
168
|
+
return false;
|
|
169
|
+
}
|
|
170
|
+
if (value.createdAt !== undefined && typeof value.createdAt !== 'string')
|
|
171
|
+
return false;
|
|
172
|
+
if (value.updatedAt !== undefined && typeof value.updatedAt !== 'string')
|
|
173
|
+
return false;
|
|
174
|
+
if (value.decidedAt !== undefined && typeof value.decidedAt !== 'string')
|
|
175
|
+
return false;
|
|
176
|
+
if (value.decision !== undefined && !isSpendGateDecision(value.decision))
|
|
177
|
+
return false;
|
|
178
|
+
if (value.request !== undefined && !isSpendGateRequest(value.request))
|
|
179
|
+
return false;
|
|
180
|
+
if (value.failureReason !== undefined && typeof value.failureReason !== 'string')
|
|
181
|
+
return false;
|
|
182
|
+
return true;
|
|
183
|
+
}
|
|
184
|
+
function pushError(errors, path, message) {
|
|
185
|
+
errors.push({ path, message });
|
|
186
|
+
}
|
|
187
|
+
function validateBreakdownEntryInternal(value, basePath, errors) {
|
|
188
|
+
if (!isRecord(value)) {
|
|
189
|
+
pushError(errors, basePath, 'must be an object');
|
|
190
|
+
return;
|
|
191
|
+
}
|
|
192
|
+
if (typeof value.model !== 'string') {
|
|
193
|
+
pushError(errors, `${basePath}/model`, 'must be a string');
|
|
194
|
+
}
|
|
195
|
+
const units = value.units;
|
|
196
|
+
if (typeof units !== 'number' || !Number.isFinite(units)) {
|
|
197
|
+
pushError(errors, `${basePath}/units`, 'must be a finite number');
|
|
198
|
+
}
|
|
199
|
+
if (!isSpendGateTokenType(value.tokenType)) {
|
|
200
|
+
pushError(errors, `${basePath}/tokenType`, 'must be a valid SpendGateTokenType');
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
function validateEstimateInternal(value, basePath, errors) {
|
|
204
|
+
if (!isRecord(value)) {
|
|
205
|
+
pushError(errors, basePath, 'must be an object');
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
208
|
+
const cap = value.capacityUnits;
|
|
209
|
+
if (typeof cap !== 'number' || !Number.isFinite(cap)) {
|
|
210
|
+
pushError(errors, `${basePath}/capacityUnits`, 'must be a finite number');
|
|
211
|
+
}
|
|
212
|
+
const breakdown = value.breakdown;
|
|
213
|
+
if (!Array.isArray(breakdown)) {
|
|
214
|
+
pushError(errors, `${basePath}/breakdown`, 'must be an array');
|
|
215
|
+
}
|
|
216
|
+
else {
|
|
217
|
+
breakdown.forEach((entry, idx) => validateBreakdownEntryInternal(entry, `${basePath}/breakdown/${idx}`, errors));
|
|
218
|
+
}
|
|
219
|
+
if (!isSpendGateTokenType(value.tokenType)) {
|
|
220
|
+
pushError(errors, `${basePath}/tokenType`, 'must be a valid SpendGateTokenType');
|
|
221
|
+
}
|
|
222
|
+
const maxAcc = value.maxAcceptableUnits;
|
|
223
|
+
if (maxAcc !== undefined && (typeof maxAcc !== 'number' || !Number.isFinite(maxAcc))) {
|
|
224
|
+
pushError(errors, `${basePath}/maxAcceptableUnits`, 'must be a finite number when present');
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
function validateSpendGateRequest(value) {
|
|
228
|
+
const errors = [];
|
|
229
|
+
if (!isRecord(value)) {
|
|
230
|
+
return { valid: false, errors: [{ path: '/', message: 'must be an object' }] };
|
|
231
|
+
}
|
|
232
|
+
if (!isSpendGateScope(value.scope)) {
|
|
233
|
+
pushError(errors, '/scope', 'must be a valid SpendGateScope');
|
|
234
|
+
}
|
|
235
|
+
const toolCallId = value.toolCallId;
|
|
236
|
+
if (toolCallId !== undefined && typeof toolCallId !== 'string') {
|
|
237
|
+
pushError(errors, '/toolCallId', 'must be a string when present');
|
|
238
|
+
}
|
|
239
|
+
const workflowRunId = value.workflowRunId;
|
|
240
|
+
if (workflowRunId !== undefined && typeof workflowRunId !== 'string') {
|
|
241
|
+
pushError(errors, '/workflowRunId', 'must be a string when present');
|
|
242
|
+
}
|
|
243
|
+
const est = value.estimateCapacityUnits;
|
|
244
|
+
if (typeof est !== 'number' || !Number.isFinite(est)) {
|
|
245
|
+
pushError(errors, '/estimateCapacityUnits', 'must be a finite number');
|
|
246
|
+
}
|
|
247
|
+
const breakdown = value.estimateCostBreakdown;
|
|
248
|
+
if (!Array.isArray(breakdown)) {
|
|
249
|
+
pushError(errors, '/estimateCostBreakdown', 'must be an array');
|
|
250
|
+
}
|
|
251
|
+
else {
|
|
252
|
+
breakdown.forEach((entry, idx) => validateBreakdownEntryInternal(entry, `/estimateCostBreakdown/${idx}`, errors));
|
|
253
|
+
}
|
|
254
|
+
const maxAcc = value.maxAcceptableUnits;
|
|
255
|
+
if (maxAcc !== undefined && (typeof maxAcc !== 'number' || !Number.isFinite(maxAcc))) {
|
|
256
|
+
pushError(errors, '/maxAcceptableUnits', 'must be a finite number when present');
|
|
257
|
+
}
|
|
258
|
+
const reason = value.reason;
|
|
259
|
+
if (reason !== undefined && typeof reason !== 'string') {
|
|
260
|
+
pushError(errors, '/reason', 'must be a string when present');
|
|
261
|
+
}
|
|
262
|
+
return { valid: errors.length === 0, errors };
|
|
263
|
+
}
|
|
264
|
+
function validateSpendGate(value) {
|
|
265
|
+
const errors = [];
|
|
266
|
+
if (!isRecord(value)) {
|
|
267
|
+
return { valid: false, errors: [{ path: '/', message: 'must be an object' }] };
|
|
268
|
+
}
|
|
269
|
+
if (!isSpendGateState(value.state)) {
|
|
270
|
+
pushError(errors, '/state', 'must be a valid SpendGateState');
|
|
271
|
+
}
|
|
272
|
+
for (const key of ['gateId', 'runId', 'reason', 'createdAt', 'updatedAt', 'decidedAt']) {
|
|
273
|
+
const v = value[key];
|
|
274
|
+
if (v !== undefined && typeof v !== 'string') {
|
|
275
|
+
pushError(errors, `/${key}`, 'must be a string when present');
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
const scope = value.scope;
|
|
279
|
+
if (scope !== undefined && !isSpendGateScope(scope)) {
|
|
280
|
+
pushError(errors, '/scope', 'must be a valid SpendGateScope when present');
|
|
281
|
+
}
|
|
282
|
+
const estimate = value.estimate;
|
|
283
|
+
if (estimate !== undefined) {
|
|
284
|
+
validateEstimateInternal(estimate, '/estimate', errors);
|
|
285
|
+
}
|
|
286
|
+
const pendingTools = value.pendingToolCalls;
|
|
287
|
+
if (pendingTools !== undefined) {
|
|
288
|
+
if (!Array.isArray(pendingTools)) {
|
|
289
|
+
pushError(errors, '/pendingToolCalls', 'must be an array when present');
|
|
290
|
+
}
|
|
291
|
+
else {
|
|
292
|
+
pendingTools.forEach((ref, idx) => {
|
|
293
|
+
if (!isRecord(ref)) {
|
|
294
|
+
pushError(errors, `/pendingToolCalls/${idx}`, 'must be an object');
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
if (typeof ref.toolCallId !== 'string') {
|
|
298
|
+
pushError(errors, `/pendingToolCalls/${idx}/toolCallId`, 'must be a string');
|
|
299
|
+
}
|
|
300
|
+
if (typeof ref.toolName !== 'string') {
|
|
301
|
+
pushError(errors, `/pendingToolCalls/${idx}/toolName`, 'must be a string');
|
|
302
|
+
}
|
|
303
|
+
const estimateUnits = ref.estimateUnits;
|
|
304
|
+
if (estimateUnits !== undefined
|
|
305
|
+
&& (typeof estimateUnits !== 'number' || !Number.isFinite(estimateUnits))) {
|
|
306
|
+
pushError(errors, `/pendingToolCalls/${idx}/estimateUnits`, 'must be a finite number when present');
|
|
307
|
+
}
|
|
308
|
+
});
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
const pendingPlan = value.pendingWorkflowPlan;
|
|
312
|
+
if (pendingPlan !== undefined) {
|
|
313
|
+
if (!isRecord(pendingPlan)) {
|
|
314
|
+
pushError(errors, '/pendingWorkflowPlan', 'must be an object when present');
|
|
315
|
+
}
|
|
316
|
+
else {
|
|
317
|
+
if (typeof pendingPlan.workflowRunId !== 'string') {
|
|
318
|
+
pushError(errors, '/pendingWorkflowPlan/workflowRunId', 'must be a string');
|
|
319
|
+
}
|
|
320
|
+
if (typeof pendingPlan.templateId !== 'string') {
|
|
321
|
+
pushError(errors, '/pendingWorkflowPlan/templateId', 'must be a string');
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
const decision = value.decision;
|
|
326
|
+
if (decision !== undefined && !isSpendGateDecision(decision)) {
|
|
327
|
+
pushError(errors, '/decision', 'must be a valid SpendGateDecision when present');
|
|
328
|
+
}
|
|
329
|
+
const request = value.request;
|
|
330
|
+
if (request !== undefined) {
|
|
331
|
+
const nested = validateSpendGateRequest(request);
|
|
332
|
+
if (!nested.valid) {
|
|
333
|
+
for (const e of nested.errors) {
|
|
334
|
+
pushError(errors, `/request${e.path === '/' ? '' : e.path}`, e.message);
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
const failureReason = value.failureReason;
|
|
339
|
+
if (failureReason !== undefined && typeof failureReason !== 'string') {
|
|
340
|
+
pushError(errors, '/failureReason', 'must be a string when present');
|
|
341
|
+
}
|
|
342
|
+
return { valid: errors.length === 0, errors };
|
|
343
|
+
}
|
|
344
|
+
//# sourceMappingURL=spendGate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spendGate.js","sourceRoot":"","sources":["../../src/billing/spendGate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
export type WorkflowSpendTokenType = 'spark' | 'sogni';
|
|
2
|
+
export interface WorkflowCostPreview {
|
|
3
|
+
templateId: string;
|
|
4
|
+
inputs: Record<string, unknown>;
|
|
5
|
+
totalEstimatedCapacityUnits: number;
|
|
6
|
+
perStageBreakdown: Array<{
|
|
7
|
+
stageId: string;
|
|
8
|
+
units: number;
|
|
9
|
+
assumptions: string[];
|
|
10
|
+
}>;
|
|
11
|
+
tokenType: WorkflowSpendTokenType;
|
|
12
|
+
maxAcceptableUnits?: number;
|
|
13
|
+
expectedDurationSeconds: number;
|
|
14
|
+
validityUntil: string;
|
|
15
|
+
}
|
|
16
|
+
export interface WorkflowRunConfirmation {
|
|
17
|
+
workflowRunId: string;
|
|
18
|
+
decision: 'confirm' | 'cancel';
|
|
19
|
+
acceptedCostPreview: WorkflowCostPreview;
|
|
20
|
+
}
|
|
21
|
+
export type StageSettlementStatus = 'pending' | 'in_flight' | 'settled' | 'failed' | 'cancelled';
|
|
22
|
+
export interface StageSettlement {
|
|
23
|
+
stageId: string;
|
|
24
|
+
projectId?: string;
|
|
25
|
+
jobIds: string[];
|
|
26
|
+
estimatedUnits: number;
|
|
27
|
+
settledUnits?: number;
|
|
28
|
+
status: StageSettlementStatus;
|
|
29
|
+
}
|
|
30
|
+
export interface WorkflowAuthorization {
|
|
31
|
+
workflowRunId: string;
|
|
32
|
+
authorizedCapacityUnits: number;
|
|
33
|
+
tokenType: WorkflowSpendTokenType;
|
|
34
|
+
authorizedAt: string;
|
|
35
|
+
expiresAt: string;
|
|
36
|
+
cumulativeSettledUnits: number;
|
|
37
|
+
cumulativeReservedUnits: number;
|
|
38
|
+
stageSettlements: StageSettlement[];
|
|
39
|
+
}
|
|
40
|
+
export declare function isWorkflowSpendTokenType(value: unknown): value is WorkflowSpendTokenType;
|
|
41
|
+
export declare function isStageSettlementStatus(value: unknown): value is StageSettlementStatus;
|
|
42
|
+
export declare function isWorkflowCostPreview(value: unknown): value is WorkflowCostPreview;
|
|
43
|
+
export declare function isWorkflowRunConfirmation(value: unknown): value is WorkflowRunConfirmation;
|
|
44
|
+
export declare function isStageSettlement(value: unknown): value is StageSettlement;
|
|
45
|
+
export declare function isWorkflowAuthorization(value: unknown): value is WorkflowAuthorization;
|
|
46
|
+
export interface WorkflowAuthorizationValidationError {
|
|
47
|
+
path: string;
|
|
48
|
+
message: string;
|
|
49
|
+
}
|
|
50
|
+
export interface WorkflowAuthorizationValidationResult {
|
|
51
|
+
valid: boolean;
|
|
52
|
+
errors: WorkflowAuthorizationValidationError[];
|
|
53
|
+
}
|
|
54
|
+
export declare function validateWorkflowCostPreview(value: unknown): WorkflowAuthorizationValidationResult;
|
|
55
|
+
export declare function validateWorkflowAuthorization(value: unknown): WorkflowAuthorizationValidationResult;
|
|
56
|
+
//# sourceMappingURL=workflowAuthorization.d.ts.map
|