@claudexor/orchestrator 3.1.1 → 3.1.2

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.
Files changed (92) hide show
  1. package/dist/attemptTelemetry.d.ts +9 -20
  2. package/dist/attemptTelemetry.d.ts.map +1 -1
  3. package/dist/attemptTelemetry.js +36 -69
  4. package/dist/attemptTelemetry.js.map +1 -1
  5. package/dist/attemptUsageCost.d.ts +31 -0
  6. package/dist/attemptUsageCost.d.ts.map +1 -0
  7. package/dist/attemptUsageCost.js +181 -0
  8. package/dist/attemptUsageCost.js.map +1 -0
  9. package/dist/budgetFailure.d.ts +3 -1
  10. package/dist/budgetFailure.d.ts.map +1 -1
  11. package/dist/budgetFailure.js.map +1 -1
  12. package/dist/candidateEvidence.d.ts +5 -0
  13. package/dist/candidateEvidence.d.ts.map +1 -1
  14. package/dist/candidateEvidence.js +3 -1
  15. package/dist/candidateEvidence.js.map +1 -1
  16. package/dist/candidateOutputs.d.ts +19 -0
  17. package/dist/candidateOutputs.d.ts.map +1 -1
  18. package/dist/candidateOutputs.js +201 -67
  19. package/dist/candidateOutputs.js.map +1 -1
  20. package/dist/decisionBudget.d.ts +43 -0
  21. package/dist/decisionBudget.d.ts.map +1 -0
  22. package/dist/decisionBudget.js +84 -0
  23. package/dist/decisionBudget.js.map +1 -0
  24. package/dist/decisionTerminalReconciliation.d.ts +18 -0
  25. package/dist/decisionTerminalReconciliation.d.ts.map +1 -0
  26. package/dist/decisionTerminalReconciliation.js +26 -0
  27. package/dist/decisionTerminalReconciliation.js.map +1 -0
  28. package/dist/delegation-parent-activation.d.ts +6 -0
  29. package/dist/delegation-parent-activation.d.ts.map +1 -0
  30. package/dist/delegation-parent-activation.js +13 -0
  31. package/dist/delegation-parent-activation.js.map +1 -0
  32. package/dist/delegationBudgetAuthority.d.ts +30 -0
  33. package/dist/delegationBudgetAuthority.d.ts.map +1 -0
  34. package/dist/delegationBudgetAuthority.js +157 -0
  35. package/dist/delegationBudgetAuthority.js.map +1 -0
  36. package/dist/delegationFailure.d.ts +58 -0
  37. package/dist/delegationFailure.d.ts.map +1 -0
  38. package/dist/delegationFailure.js +184 -0
  39. package/dist/delegationFailure.js.map +1 -0
  40. package/dist/delegationToolEvidence.d.ts +20 -0
  41. package/dist/delegationToolEvidence.d.ts.map +1 -0
  42. package/dist/delegationToolEvidence.js +46 -0
  43. package/dist/delegationToolEvidence.js.map +1 -0
  44. package/dist/index.d.ts +2 -0
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +2 -0
  47. package/dist/index.js.map +1 -1
  48. package/dist/orchestrator.d.ts +23 -32
  49. package/dist/orchestrator.d.ts.map +1 -1
  50. package/dist/orchestrator.js +248 -346
  51. package/dist/orchestrator.js.map +1 -1
  52. package/dist/plan-prompt.d.ts +3 -0
  53. package/dist/plan-prompt.d.ts.map +1 -0
  54. package/dist/plan-prompt.js +28 -0
  55. package/dist/plan-prompt.js.map +1 -0
  56. package/dist/requestRequirements.d.ts +17 -0
  57. package/dist/requestRequirements.d.ts.map +1 -1
  58. package/dist/requestRequirements.js +69 -1
  59. package/dist/requestRequirements.js.map +1 -1
  60. package/dist/root-ledger.d.ts +13 -0
  61. package/dist/root-ledger.d.ts.map +1 -0
  62. package/dist/root-ledger.js +19 -0
  63. package/dist/root-ledger.js.map +1 -0
  64. package/dist/routing-failure.d.ts +6 -0
  65. package/dist/routing-failure.d.ts.map +1 -0
  66. package/dist/routing-failure.js +12 -0
  67. package/dist/routing-failure.js.map +1 -0
  68. package/dist/run-bounded.d.ts +3 -0
  69. package/dist/run-bounded.d.ts.map +1 -0
  70. package/dist/run-bounded.js +17 -0
  71. package/dist/run-bounded.js.map +1 -0
  72. package/dist/run-input-resolution.d.ts +10 -0
  73. package/dist/run-input-resolution.d.ts.map +1 -0
  74. package/dist/run-input-resolution.js +70 -0
  75. package/dist/run-input-resolution.js.map +1 -0
  76. package/dist/runTelemetryWriter.d.ts +5 -2
  77. package/dist/runTelemetryWriter.d.ts.map +1 -1
  78. package/dist/runTelemetryWriter.js +72 -1
  79. package/dist/runTelemetryWriter.js.map +1 -1
  80. package/dist/runTerminals.d.ts +34 -7
  81. package/dist/runTerminals.d.ts.map +1 -1
  82. package/dist/runTerminals.js +215 -24
  83. package/dist/runTerminals.js.map +1 -1
  84. package/dist/secretDiff.d.ts +29 -0
  85. package/dist/secretDiff.d.ts.map +1 -0
  86. package/dist/secretDiff.js +133 -0
  87. package/dist/secretDiff.js.map +1 -0
  88. package/dist/terminalOutcome.d.ts +22 -0
  89. package/dist/terminalOutcome.d.ts.map +1 -0
  90. package/dist/terminalOutcome.js +39 -0
  91. package/dist/terminalOutcome.js.map +1 -0
  92. package/package.json +17 -17
@@ -2,10 +2,11 @@
2
2
  * Attempt-level telemetry: the single owner of tool-error records, web
3
3
  * evidence state, transient-failure observations, and the attempt outcome
4
4
  * truth. Adapters emit typed events; the orchestrator observes them here —
5
- * no regex over prose, and a tool error is "recovered" only when the SAME
6
- * tool later succeeds against the SAME target.
5
+ * no regex over prose. Recovery needs matching tool + kind + target plus matching
6
+ * non-null use ids when both exist; a missing id retains the tuple fallback.
7
7
  */
8
8
  import type { AttemptTelemetryRecord, AuthSourceKind, ExternalContextPolicy, HarnessEvent, RequestRequirementResolution, TaskContract, ToolKind, WorkState } from "@claudexor/schema";
9
+ import { type AttemptUsageCost } from "./attemptUsageCost.js";
9
10
  import { type TransientFailureObservation } from "./transientClassify.js";
10
11
  export { type TransientFailureObservation, classifyAdapterThrow } from "./transientClassify.js";
11
12
  export interface ToolErrorRecord {
@@ -14,7 +15,7 @@ export interface ToolErrorRecord {
14
15
  target: string | null;
15
16
  summary: string;
16
17
  toolUseId: string | null;
17
- /** True when a later successful result of the SAME tool against the SAME target exists in this attempt (INV-043). */
18
+ /** True when a later success matches tool + kind + target and any ids both records provide (INV-043). */
18
19
  recovered: boolean;
19
20
  }
20
21
  export type AttemptOutcomeStatus = "success" | "success_with_warnings" | "blocked" | "failed";
@@ -63,9 +64,10 @@ export interface BrowserEvidenceState {
63
64
  * Delegation-belt runtime readiness for one attempt (QA-024). `requested` is
64
65
  * set at attempt creation when a belt MCP server was injected into the spec;
65
66
  * `ready`/`failed` are filled from the harness's `started` event (its
66
- * `mcp_servers[<belt>].status`); `toolEvidence` flips when any `mcp__<belt>__*`
67
- * tool actually runs. A requested belt that reports `failed` with no tool
68
- * evidence is the false-success trap the outcome axis must catch.
67
+ * `mcp_servers[<belt>].status`); `toolEvidence` flips when any exact belt tool
68
+ * actually runs. Startup failure lives in this state; an exact non-ok tool
69
+ * result lives in `toolErrors` and hard-fails under INV-030 while reusing
70
+ * INV-043's invocation-aware recovery key.
69
71
  */
70
72
  export interface DelegationBeltState {
71
73
  requested: boolean;
@@ -137,11 +139,7 @@ export interface AttemptTelemetry {
137
139
  };
138
140
  /** Per-usage-event billing split. Route can change across native retries,
139
141
  * so this is deliberately not derived from the attempt's first route. */
140
- usageCost: {
141
- cashUsd: number;
142
- valuationUsd: number;
143
- unknownUsd: number;
144
- };
142
+ usageCost: AttemptUsageCost;
145
143
  }
146
144
  export declare function createAttemptTelemetry(policy: ExternalContextPolicy, webRequired: boolean, effectiveMode?: ExternalContextPolicy, requestRequirements?: RequestRequirementResolution[], requestedModel?: string | null,
147
145
  /** The delegation-belt MCP server name injected into THIS attempt's spec, or
@@ -151,15 +149,6 @@ beltServerName?: string | null,
151
149
  * namespace), or null when the browser was not injected (QA-040). Non-null
152
150
  * marks the browser requested/armed. */
153
151
  browserServerName?: string | null): AttemptTelemetry;
154
- /**
155
- * The delegation belt was requested (--delegate injected it) but never became
156
- * operational: the harness reported the server `failed` and no belt tool ever
157
- * ran (QA-024). This is the false-success trap — the harness may have answered
158
- * from its own native subagent with no Claudexor sub-run provenance. A belt
159
- * that was ready-but-unused is NOT unavailable (docs leave the spawn decision to
160
- * the harness); only a startup failure counts.
161
- */
162
- export declare function delegationBeltUnavailable(t: AttemptTelemetry): boolean;
163
152
  /**
164
153
  * QA-040: the browser was armed but never called while generic web evidence
165
154
  * satisfied the run — a legitimately policy-satisfied run (e.g. web_search
@@ -1 +1 @@
1
- {"version":3,"file":"attemptTelemetry.d.ts","sourceRoot":"","sources":["../src/attemptTelemetry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attemptTelemetry.d.ts","sourceRoot":"","sources":["../src/attemptTelemetry.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
+ import { newAttemptUsageCost, observeAttemptUsageEvent, } from "./attemptUsageCost.js";
1
2
  import { redactSecrets } from "@claudexor/util";
3
+ import * as belt from "./delegationToolEvidence.js";
2
4
  import { classifyCompletedCrash, classifyRateLimit, classifyStatusError, classifyTransientSignal, } from "./transientClassify.js";
3
5
  export { classifyAdapterThrow } from "./transientClassify.js";
4
6
  export function createAttemptTelemetry(policy, webRequired, effectiveMode = policy, requestRequirements = [], requestedModel = null,
@@ -53,7 +55,7 @@ browserServerName = null) {
53
55
  sideToolWorkReport: null,
54
56
  outcome: null,
55
57
  usage: { inputTokens: null, outputTokens: null, cachedInputTokens: null },
56
- usageCost: { cashUsd: 0, valuationUsd: 0, unknownUsd: 0 },
58
+ usageCost: newAttemptUsageCost(),
57
59
  };
58
60
  }
59
61
  /** Add one present token field to a null-aware accumulator (null stays null
@@ -88,17 +90,6 @@ function observeBeltStartup(t, ev) {
88
90
  return;
89
91
  }
90
92
  }
91
- /**
92
- * The delegation belt was requested (--delegate injected it) but never became
93
- * operational: the harness reported the server `failed` and no belt tool ever
94
- * ran (QA-024). This is the false-success trap — the harness may have answered
95
- * from its own native subagent with no Claudexor sub-run provenance. A belt
96
- * that was ready-but-unused is NOT unavailable (docs leave the spawn decision to
97
- * the harness); only a startup failure counts.
98
- */
99
- export function delegationBeltUnavailable(t) {
100
- return t.delegationBelt.requested && t.delegationBelt.failed && !t.delegationBelt.toolEvidence;
101
- }
102
93
  /**
103
94
  * QA-040: does this tool ref belong to the engine-armed browser MCP? Adapters
104
95
  * normalize browser calls as `kind:"mcp"` (codex `browser:browser_navigate`,
@@ -138,20 +129,19 @@ function bumpWebVerification(t, retrieval) {
138
129
  * matching or tool-name heuristics.
139
130
  */
140
131
  export function observeAttemptTelemetry(t, ev) {
141
- // Delegation belt readiness (QA-024): the harness's `started` frame lists its
142
- // MCP servers and each one's status. When the engine injected a belt, read
143
- // THAT server's status as first-class readiness truth never prose. A
144
- // `failed` belt with no later tool evidence is the false-success trap.
145
- if (ev.type === "started" && t.delegationBelt.requested) {
132
+ // Delegation belt readiness (QA-024): normalized startup/error events carry
133
+ // typed MCP server statuses. Read THAT server's status as first-class truth;
134
+ // a failed belt must never launder into a native-subagent success.
135
+ if (t.delegationBelt.requested && Array.isArray(ev.payload?.["mcp_servers"])) {
146
136
  observeBeltStartup(t, ev);
147
137
  }
148
- // Belt tool evidence: any `mcp__<belt>__*` tool call/result proves the belt
149
- // was actually reachable and used (a real Claudexor sub-run path), which
150
- // distinguishes a used belt from one the harness silently substituted.
151
- if (t.delegationBelt.requested && t.delegationBelt.serverName && ev.tool?.name) {
152
- if (ev.tool.name.startsWith(`mcp__${t.delegationBelt.serverName}`)) {
153
- t.delegationBelt.toolEvidence = true;
154
- }
138
+ // Exact adapter-neutral evidence distinguishes the belt from a native subagent;
139
+ // recovery uses matching ids when both exist, else legacy tool+kind+target.
140
+ const beltToolEvent = t.delegationBelt.requested &&
141
+ t.delegationBelt.serverName &&
142
+ belt.isDelegationBeltTool(ev.tool, t.delegationBelt.serverName);
143
+ if (beltToolEvent) {
144
+ t.delegationBelt.toolEvidence = true;
155
145
  }
156
146
  // Route evidence: remember the model identity the stream itself disclosed.
157
147
  if (ev.observed_model && !t.observedModel)
@@ -164,29 +154,7 @@ export function observeAttemptTelemetry(t, ev) {
164
154
  else if (ev.credential_route === "managed_api_key")
165
155
  t.authMode = "api_key";
166
156
  }
167
- if (ev.credential_route === "vendor_native")
168
- t.currentAuthMode = "local_session";
169
- else if (ev.credential_route === "managed_api_key")
170
- t.currentAuthMode = "api_key";
171
- if (ev.type === "message" && ev.payload?.["auth_switched"] === true) {
172
- if (ev.payload["to_auth_mode"] === "subscription")
173
- t.currentAuthMode = "local_session";
174
- if (ev.payload["to_auth_mode"] === "api_key")
175
- t.currentAuthMode = "api_key";
176
- }
177
- if (ev.usage?.cost_usd) {
178
- const usageMode = ev.credential_route === "vendor_native"
179
- ? "local_session"
180
- : ev.credential_route === "managed_api_key"
181
- ? "api_key"
182
- : t.currentAuthMode;
183
- if (usageMode === "local_session")
184
- t.usageCost.valuationUsd += ev.usage.cost_usd;
185
- else if (usageMode === "api_key")
186
- t.usageCost.cashUsd += ev.usage.cost_usd;
187
- else
188
- t.usageCost.unknownUsd += ev.usage.cost_usd;
189
- }
157
+ t.currentAuthMode = observeAttemptUsageEvent(t.usageCost, ev, t.currentAuthMode);
190
158
  // First-wins like the route: the source is decided once before spawn.
191
159
  if (!t.authSource && ev.credential_source)
192
160
  t.authSource = ev.credential_source;
@@ -271,9 +239,13 @@ export function observeAttemptTelemetry(t, ev) {
271
239
  if (tool.status === undefined) {
272
240
  // A result without a status must never silently count as ok.
273
241
  t.statuslessResults += 1;
242
+ if (beltToolEvent)
243
+ belt.recordDelegationBeltResultFailure(t, tool, "required delegation belt tool result omitted status");
274
244
  return;
275
245
  }
276
246
  if (tool.status === "cancelled" || tool.status === "denied") {
247
+ if (beltToolEvent)
248
+ belt.recordDelegationBeltResultFailure(t, tool, `required delegation belt tool result marked ${tool.status}`);
277
249
  if (tool.kind === "web") {
278
250
  t.web.attempted = true;
279
251
  t.web.tool = tool.name;
@@ -316,18 +288,18 @@ export function observeAttemptTelemetry(t, ev) {
316
288
  }
317
289
  return;
318
290
  }
319
- // status === "ok": a later success of the SAME tool against the SAME target
320
- // is the verified recovery for that call's earlier errors within this
321
- // attempt (keying fix: `bash echo done` must NOT launder an earlier
322
- // `bash npm test` failure — the name alone proved nothing).
291
+ // status === "ok": recovery needs the same tool + kind + target, plus the same
292
+ // non-null use id when both sides have one. A missing id retains the legacy
293
+ // tuple key for adapters and synthetic telemetry that cannot correlate calls.
294
+ const resultToolUseId = tool.use_id ?? null;
323
295
  for (const err of t.toolErrors) {
324
- // INV-043: recovery must be attributable to the failed operation — same
325
- // tool, same KIND, same target (a non-web tool sharing a name with a web
326
- // tool must not clear its web error).
296
+ // INV-043: a later identical-looking invocation cannot launder an earlier
297
+ // error when both vendor records prove different invocation ids.
327
298
  if (!err.recovered &&
328
299
  err.tool === tool.name &&
329
300
  err.kind === tool.kind &&
330
- err.target === (tool.target ?? null)) {
301
+ err.target === (tool.target ?? null) &&
302
+ (err.toolUseId === null || resultToolUseId === null || err.toolUseId === resultToolUseId)) {
331
303
  err.recovered = true;
332
304
  }
333
305
  }
@@ -339,12 +311,12 @@ export function observeAttemptTelemetry(t, ev) {
339
311
  // legitimate alternative-route recovery, not laundering (blocking it
340
312
  // would false-block the most common web workflow). What must NOT vanish
341
313
  // is the DISCLOSURE: `failed` clears only when the success matches the
342
- // failed call's target (INV-043 keying), so telemetry.yaml keeps the
314
+ // failed invocation (INV-043 keying), so telemetry.yaml keeps the
343
315
  // unrecovered failure + errorSummary visible even on satisfied runs.
344
316
  t.web.satisfied = true;
345
- // Derived rollup, single source of truth: the tool+target-keyed
317
+ // Derived rollup, single source of truth: the invocation-keyed
346
318
  // toolErrors store (the recovery loop above already marked matching
347
- // errors recovered). Multiple failed targets stay disclosed until EACH
319
+ // errors recovered). Multiple failed invocations stay disclosed until EACH
348
320
  // recovers; a missing target never wildcards (exact null==null match).
349
321
  t.web.failed = t.toolErrors.some((e) => e.kind === "web" && !e.recovered);
350
322
  // Keep the summary in lockstep with the rollup: point at a live
@@ -400,15 +372,10 @@ export function toolWarnings(t) {
400
372
  export function setAttemptOutcome(t, opts) {
401
373
  const warnings = toolWarnings(t).length;
402
374
  const contractFailed = !opts.deliverablePresent || opts.gatesPassed === false;
403
- // QA-024: a requested belt that failed to start with no tool evidence is an
404
- // explicitly-requested capability that never became operational treated
405
- // like an unsatisfied hard requirement (never a silent clean success). It
406
- // rides the same axis order as web: it can only ELEVATE severity, never mask
407
- // a harder failure. NOTE (D-16 seam): this producer maps belt-unavailable to
408
- // `failed`; a future finalizer that prefers a softer disclosure would flip
409
- // this to `success_with_warnings` — the typed telemetry fact
410
- // (delegation_belt.*) is what a consumer reads either way.
411
- const beltUnavailable = delegationBeltUnavailable(t);
375
+ // INV-030: after injection, startup failure or an unrecovered exact belt
376
+ // operation is an unsatisfied required capability. It can only ELEVATE
377
+ // severity, never soften into a warning or mask a harder terminal fact.
378
+ const beltUnavailable = belt.delegationBeltUnavailable(t) || belt.delegationBeltToolFailure(t);
412
379
  const status = opts.webRequiredUnsatisfied
413
380
  ? "blocked"
414
381
  : opts.harnessErrored || contractFailed || beltUnavailable
@@ -484,7 +451,7 @@ export function telemetrySummary(t) {
484
451
  ready: t.delegationBelt.ready,
485
452
  failed: t.delegationBelt.failed,
486
453
  tool_evidence: t.delegationBelt.toolEvidence,
487
- unavailable: delegationBeltUnavailable(t),
454
+ unavailable: belt.delegationBeltUnavailable(t),
488
455
  },
489
456
  }
490
457
  : {}),
@@ -552,7 +519,7 @@ export function attemptTelemetryRecord(attemptId, harnessId, t) {
552
519
  gates_passed: t.outcome?.gatesPassed ?? null,
553
520
  harness_errored: t.outcome?.harnessErrored ?? false,
554
521
  web_required_unsatisfied: t.outcome?.webRequiredUnsatisfied ?? false,
555
- delegation_belt_unavailable: delegationBeltUnavailable(t),
522
+ delegation_belt_unavailable: belt.delegationBeltUnavailable(t),
556
523
  tool_warnings_count: t.outcome?.toolWarningsCount ?? warnings.length,
557
524
  status: t.outcome?.status ?? (warnings.length > 0 ? "success_with_warnings" : "success"),
558
525
  ...(t.outcome?.workState ? { work_state: t.outcome.workState } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"attemptTelemetry.js","sourceRoot":"","sources":["../src/attemptTelemetry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attemptTelemetry.js","sourceRoot":"","sources":["../src/attemptTelemetry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import type { CostKnowledge, HarnessEvent } from "@claudexor/schema";
2
+ import { type BudgetSettlement } from "@claudexor/budget";
3
+ export interface AttemptUsageCost {
4
+ cashUsd: number;
5
+ valuationUsd: number;
6
+ unknownUsd: number;
7
+ cashEstimated: boolean;
8
+ valuationEstimated: boolean;
9
+ readonly cashKnowledge?: CostKnowledge;
10
+ readonly valuationKnowledge?: CostKnowledge;
11
+ }
12
+ export interface AttemptFailureCost {
13
+ totalUsd: number;
14
+ estimated: boolean;
15
+ settlement: BudgetSettlement;
16
+ }
17
+ export declare class AttemptPostStreamError extends Error {
18
+ readonly attemptCost: AttemptFailureCost;
19
+ constructor(cause: unknown, attemptCost: AttemptFailureCost);
20
+ }
21
+ /** Preserve already-observed route-specific spend across fallible persistence. */
22
+ export declare function withAttemptFailureCost<T>(work: () => T, attemptCost: AttemptFailureCost): T;
23
+ /** Settle every lease owner from the same post-stream error truth. */
24
+ export declare function attemptFailureCost(error: unknown, fallbackSource: string, fallbackCashUsd?: number): AttemptFailureCost;
25
+ /** One durable failure shape for race and convergence artifact fallbacks. */
26
+ export declare function attemptFailureRecord(attemptId: string, harnessId: string, cost: AttemptFailureCost, phase: "workspace" | "harness", message: string): Record<string, unknown>;
27
+ export declare function newAttemptUsageCost(): AttemptUsageCost;
28
+ /** Observe one event and return the route to carry into the next event. */
29
+ export declare function observeAttemptUsageEvent(cost: AttemptUsageCost, event: HarnessEvent, previousMode: "local_session" | "api_key" | null): "local_session" | "api_key" | null;
30
+ export declare function recordAttemptUsageCost(cost: AttemptUsageCost, mode: "local_session" | "api_key" | null, usd: number, estimated: boolean): void;
31
+ //# sourceMappingURL=attemptUsageCost.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attemptUsageCost.d.ts","sourceRoot":"","sources":["../src/attemptUsageCost.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAEjF,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,aAAa,CAAC;CAC7C;AAiBD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED,qBAAa,sBAAuB,SAAQ,KAAK;IAG7C,QAAQ,CAAC,WAAW,EAAE,kBAAkB;gBADxC,KAAK,EAAE,OAAO,EACL,WAAW,EAAE,kBAAkB;CAK3C;AAED,kFAAkF;AAClF,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,kBAAkB,GAAG,CAAC,CAM3F;AAED,sEAAsE;AACtE,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,OAAO,EACd,cAAc,EAAE,MAAM,EACtB,eAAe,CAAC,EAAE,MAAM,GACvB,kBAAkB,CAepB;AAED,6EAA6E;AAC7E,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,kBAAkB,EACxB,KAAK,EAAE,WAAW,GAAG,SAAS,EAC9B,OAAO,EAAE,MAAM,GACd,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUzB;AAED,wBAAgB,mBAAmB,IAAI,gBAAgB,CAiBtD;AA4BD,2EAA2E;AAC3E,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,YAAY,EACnB,YAAY,EAAE,eAAe,GAAG,SAAS,GAAG,IAAI,GAC/C,eAAe,GAAG,SAAS,GAAG,IAAI,CAqBpC;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,gBAAgB,EACtB,IAAI,EAAE,eAAe,GAAG,SAAS,GAAG,IAAI,EACxC,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,OAAO,GACjB,IAAI,CAcN"}
@@ -0,0 +1,181 @@
1
+ import { unknownCostSettlement } from "@claudexor/budget";
2
+ const routeKnowledge = new WeakMap();
3
+ export class AttemptPostStreamError extends Error {
4
+ attemptCost;
5
+ constructor(cause, attemptCost) {
6
+ super(cause instanceof Error ? cause.message : String(cause), { cause });
7
+ this.attemptCost = attemptCost;
8
+ this.name = "AttemptPostStreamError";
9
+ }
10
+ }
11
+ /** Preserve already-observed route-specific spend across fallible persistence. */
12
+ export function withAttemptFailureCost(work, attemptCost) {
13
+ try {
14
+ return work();
15
+ }
16
+ catch (error) {
17
+ throw new AttemptPostStreamError(error, attemptCost);
18
+ }
19
+ }
20
+ /** Settle every lease owner from the same post-stream error truth. */
21
+ export function attemptFailureCost(error, fallbackSource, fallbackCashUsd) {
22
+ if (error instanceof AttemptPostStreamError)
23
+ return error.attemptCost;
24
+ const carriedCashUsd = typeof error?.costUsd === "number" &&
25
+ Number.isFinite(error.costUsd) &&
26
+ error.costUsd >= 0
27
+ ? error.costUsd
28
+ : fallbackCashUsd;
29
+ return {
30
+ totalUsd: carriedCashUsd ?? 0,
31
+ // An ordinary zero-cost setup failure keeps the legacy exact-zero card.
32
+ // A positive scalar with UNKNOWN settlement knowledge must never look exact.
33
+ estimated: (carriedCashUsd ?? 0) > 0,
34
+ settlement: unknownCostSettlement(fallbackSource, carriedCashUsd),
35
+ };
36
+ }
37
+ /** One durable failure shape for race and convergence artifact fallbacks. */
38
+ export function attemptFailureRecord(attemptId, harnessId, cost, phase, message) {
39
+ return {
40
+ attempt_id: attemptId,
41
+ harness_id: harnessId,
42
+ cost_usd: cost.totalUsd,
43
+ cost_estimated: cost.estimated,
44
+ errored: true,
45
+ phase,
46
+ errors: [message],
47
+ };
48
+ }
49
+ export function newAttemptUsageCost() {
50
+ const cost = {
51
+ cashUsd: 0,
52
+ valuationUsd: 0,
53
+ unknownUsd: 0,
54
+ cashEstimated: false,
55
+ valuationEstimated: false,
56
+ };
57
+ routeKnowledge.set(cost, newRouteKnowledgeState());
58
+ Object.defineProperties(cost, {
59
+ cashKnowledge: { enumerable: false, get: () => attemptUsageCostKnowledge(cost).cash },
60
+ valuationKnowledge: {
61
+ enumerable: false,
62
+ get: () => attemptUsageCostKnowledge(cost).valuation,
63
+ },
64
+ });
65
+ return cost;
66
+ }
67
+ /** A harness retry starts a new route-proof interval. An API interval that
68
+ * ended without a usage receipt remains unresolved even if a later retry pays. */
69
+ function startAttemptUsageRoute(cost) {
70
+ const state = stateFor(cost);
71
+ finishActiveRoute(state);
72
+ state.activeSawEvent = false;
73
+ state.activeSawNativeRoute = false;
74
+ state.activeSawApiRoute = false;
75
+ state.activeSawApiUsage = false;
76
+ }
77
+ function observeAttemptUsageRoute(cost, mode) {
78
+ const state = stateFor(cost);
79
+ state.activeSawEvent = true;
80
+ if (mode === "local_session") {
81
+ state.sawNativeRoute = true;
82
+ state.activeSawNativeRoute = true;
83
+ }
84
+ else if (mode === "api_key") {
85
+ state.sawApiRoute = true;
86
+ state.activeSawApiRoute = true;
87
+ }
88
+ }
89
+ /** Observe one event and return the route to carry into the next event. */
90
+ export function observeAttemptUsageEvent(cost, event, previousMode) {
91
+ let mode = event.type === "started" ? null : previousMode;
92
+ if (event.type === "started")
93
+ startAttemptUsageRoute(cost);
94
+ if (event.credential_route === "vendor_native")
95
+ mode = "local_session";
96
+ else if (event.credential_route === "managed_api_key")
97
+ mode = "api_key";
98
+ if (event.type === "message" && event.payload?.["auth_switched"] === true) {
99
+ if (event.payload["to_auth_mode"] === "subscription")
100
+ mode = "local_session";
101
+ else if (event.payload["to_auth_mode"] === "api_key")
102
+ mode = "api_key";
103
+ }
104
+ observeAttemptUsageRoute(cost, mode);
105
+ const usd = event.usage?.cost_usd;
106
+ if (typeof usd === "number" && Number.isFinite(usd) && usd >= 0) {
107
+ const receiptMode = event.credential_route === "vendor_native"
108
+ ? "local_session"
109
+ : event.credential_route === "managed_api_key"
110
+ ? "api_key"
111
+ : mode;
112
+ recordAttemptUsageCost(cost, receiptMode, usd, event.usage?.estimated === true);
113
+ }
114
+ return mode;
115
+ }
116
+ export function recordAttemptUsageCost(cost, mode, usd, estimated) {
117
+ const state = stateFor(cost);
118
+ if (mode === "local_session") {
119
+ state.sawNativeUsage = true;
120
+ cost.valuationUsd += usd;
121
+ cost.valuationEstimated ||= estimated;
122
+ }
123
+ else if (mode === "api_key") {
124
+ state.activeSawApiUsage = true;
125
+ cost.cashUsd += usd;
126
+ cost.cashEstimated ||= estimated;
127
+ }
128
+ else {
129
+ state.sawUnknownUsage = true;
130
+ cost.unknownUsd += usd;
131
+ }
132
+ }
133
+ function attemptUsageCostKnowledge(cost) {
134
+ const state = stateFor(cost);
135
+ const cashUnknown = state.sawUnknownUsage ||
136
+ state.unresolvedApiRoute ||
137
+ state.unresolvedUndisclosedRoute ||
138
+ (state.activeSawApiRoute && !state.activeSawApiUsage) ||
139
+ (state.activeSawEvent && !state.activeSawNativeRoute && !state.activeSawApiRoute) ||
140
+ (!state.sawNativeRoute && !state.sawApiRoute);
141
+ return {
142
+ cash: cashUnknown ? "unknown" : cost.cashEstimated ? "estimated" : "exact",
143
+ valuation: state.sawUnknownUsage
144
+ ? "unknown"
145
+ : state.sawNativeUsage
146
+ ? cost.valuationEstimated
147
+ ? "estimated"
148
+ : "exact"
149
+ : "unknown",
150
+ };
151
+ }
152
+ function finishActiveRoute(state) {
153
+ if (state.activeSawApiRoute && !state.activeSawApiUsage)
154
+ state.unresolvedApiRoute = true;
155
+ if (state.activeSawEvent && !state.activeSawNativeRoute && !state.activeSawApiRoute) {
156
+ state.unresolvedUndisclosedRoute = true;
157
+ }
158
+ }
159
+ function stateFor(cost) {
160
+ let state = routeKnowledge.get(cost);
161
+ if (!state) {
162
+ state = newRouteKnowledgeState();
163
+ routeKnowledge.set(cost, state);
164
+ }
165
+ return state;
166
+ }
167
+ function newRouteKnowledgeState() {
168
+ return {
169
+ sawNativeRoute: false,
170
+ sawApiRoute: false,
171
+ sawNativeUsage: false,
172
+ sawUnknownUsage: false,
173
+ unresolvedApiRoute: false,
174
+ unresolvedUndisclosedRoute: false,
175
+ activeSawEvent: false,
176
+ activeSawNativeRoute: false,
177
+ activeSawApiRoute: false,
178
+ activeSawApiUsage: false,
179
+ };
180
+ }
181
+ //# sourceMappingURL=attemptUsageCost.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attemptUsageCost.js","sourceRoot":"","sources":["../src/attemptUsageCost.ts"],"names":[],"mappings":"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"}