@vauban-org/agent-sdk 1.5.0 → 1.6.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/orchestration/ooda/agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EAEX,SAAS,EACT,eAAe,EAMhB,MAAM,YAAY,CAAC;AA6GpB;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAC3C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAyBrC;AAuDD;;GAEG;AACH,qBAAa,aAAa,CACxB,OAAO,GAAG,OAAO,EACjB,IAAI,GAAG,OAAO,EACd,OAAO,GAAG,OAAO,EACjB,SAAS,GAAG,OAAO,EACnB,OAAO,GAAG,OAAO,EACjB,SAAS,GAAG,OAAO,CACnB,YAAW,SAAS;IAEpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAOtB;IACF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IACnD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAC,CAAmB;gBAGtC,MAAM,EAAE,eAAe,CACrB,OAAO,EACP,IAAI,EACJ,OAAO,EACP,SAAS,EACT,OAAO,EACP,SAAS,CACV;IAgBG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAatB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAWrB,YAAY,CAAC,IAAI,EAAE;QACvB,MAAM,EAAE,OAAO,CAAC;QAChB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC1C,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,WAAW,CAAA;KAAE,CAAC;IAS5C,WAAW,CAAC,IAAI,EAAE;QACvB,MAAM,EAAE,OAAO,CAAC;QAChB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC1C,GAAG,cAAc,CAAC,UAAU,CAAC;IAyD9B,SAAS,IAAI;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;KACzB;YAUa,QAAQ;IAkVtB;;;;OAIG;YACW,iBAAiB;IAuY/B;;OAEG;YACW,aAAa;YA4Db,mBAAmB;YAWnB,gBAAgB;CAY/B"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/orchestration/ooda/agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EAEX,SAAS,EACT,eAAe,EAMhB,MAAM,YAAY,CAAC;AA8JpB;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAC3C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAyBrC;AAuDD;;GAEG;AACH,qBAAa,aAAa,CACxB,OAAO,GAAG,OAAO,EACjB,IAAI,GAAG,OAAO,EACd,OAAO,GAAG,OAAO,EACjB,SAAS,GAAG,OAAO,EACnB,OAAO,GAAG,OAAO,EACjB,SAAS,GAAG,OAAO,CACnB,YAAW,SAAS;IAEpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAOtB;IACF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IACnD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAC,CAAmB;gBAGtC,MAAM,EAAE,eAAe,CACrB,OAAO,EACP,IAAI,EACJ,OAAO,EACP,SAAS,EACT,OAAO,EACP,SAAS,CACV;IAgBG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAatB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAWrB,YAAY,CAAC,IAAI,EAAE;QACvB,MAAM,EAAE,OAAO,CAAC;QAChB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC1C,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,WAAW,CAAA;KAAE,CAAC;IAS5C,WAAW,CAAC,IAAI,EAAE;QACvB,MAAM,EAAE,OAAO,CAAC;QAChB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC1C,GAAG,cAAc,CAAC,UAAU,CAAC;IAyD9B,SAAS,IAAI;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;KACzB;YAUa,QAAQ;IAkXtB;;;;OAIG;YACW,iBAAiB;IAgZ/B;;OAEG;YACW,aAAa;YA4Db,mBAAmB;YAWnB,gBAAgB;CAY/B"}
@@ -52,6 +52,41 @@ function defaultErrorStep() {
52
52
  function defaultNotifySlack() {
53
53
  return async () => { };
54
54
  }
55
+ /**
56
+ * Build the fire-and-forget `ctx.emitStep` helper (SDK 1.6.1).
57
+ *
58
+ * Wraps `insertStep → completeStep | errorStep` in an async IIFE that swallows
59
+ * any rejection via `logger.warn`. Caller-side is synchronous and never throws.
60
+ */
61
+ function makeEmitStep(deps) {
62
+ const { insertStep, completeStep, errorStep, logger } = deps;
63
+ return (input) => {
64
+ const status = input.status ?? "completed";
65
+ const payload = input.payload ?? {};
66
+ void (async () => {
67
+ const { stepId } = await insertStep({
68
+ type: input.type,
69
+ phase: input.phase,
70
+ payload,
71
+ });
72
+ if (status === "failed") {
73
+ const err = input.error instanceof Error
74
+ ? input.error
75
+ : new Error(typeof input.error === "string"
76
+ ? input.error
77
+ : `${input.phase} failed`);
78
+ await errorStep(stepId, err);
79
+ }
80
+ else {
81
+ await completeStep(stepId, { ...payload, status });
82
+ }
83
+ })().catch((err) => logger.warn({
84
+ phase: input.phase,
85
+ status,
86
+ err: err?.message ?? String(err),
87
+ }, "[emitStep] failed"));
88
+ };
89
+ }
55
90
  // ─── Telemetry metadata sanitization (SDK 1.5.0 — sprint-B) ─────────────────
56
91
  //
57
92
  // `insertStep` callers pass arbitrary `input.payload` objects which we want to
@@ -316,6 +351,10 @@ export class OODAAgentImpl {
316
351
  toolCalls: 0,
317
352
  costUsd: 0,
318
353
  };
354
+ // Captures the OutcomeRecord returned by this._config.outcomeMapping so
355
+ // finishTelemetry can propagate it on the wire event. Set late (after
356
+ // phase chain). Sink-agnostic — the SDK never persists this itself.
357
+ let capturedOutcome;
319
358
  const finishTelemetry = (status, stopReason, errorMessage) => {
320
359
  if (!telemetry)
321
360
  return;
@@ -329,6 +368,7 @@ export class OODAAgentImpl {
329
368
  totalOutputTokens: telemetryTotals.outputTokens,
330
369
  totalCostUsd: telemetryTotals.costUsd,
331
370
  totalToolCalls: telemetryTotals.toolCalls,
371
+ ...(capturedOutcome ? { outcome: capturedOutcome } : {}),
332
372
  })
333
373
  .catch((err) => logger.warn({ err: err?.message ?? String(err) }, "telemetry.finish.failed")));
334
374
  };
@@ -397,6 +437,8 @@ export class OODAAgentImpl {
397
437
  logger.warn({ agentId: this._config.agentId, err: e.message }, "ooda.cycle.config_loader_failed — using static config");
398
438
  }
399
439
  }
440
+ const completeStep = this._config.completeStepImpl ?? defaultCompleteStep();
441
+ const errorStep = this._config.errorStepImpl ?? defaultErrorStep();
400
442
  const ctx = Object.freeze({
401
443
  agentId: this._config.agentId,
402
444
  runId,
@@ -410,9 +452,10 @@ export class OODAAgentImpl {
410
452
  logger,
411
453
  deps: this._config.deps ?? {},
412
454
  insertStep,
413
- completeStep: this._config.completeStepImpl ?? defaultCompleteStep(),
414
- errorStep: this._config.errorStepImpl ?? defaultErrorStep(),
455
+ completeStep,
456
+ errorStep,
415
457
  notifySlack: this._config.notifySlackImpl ?? defaultNotifySlack(),
458
+ emitStep: makeEmitStep({ insertStep, completeStep, errorStep, logger }),
416
459
  });
417
460
  // ── Session guards ──────────────────────────────────────────────────────
418
461
  const sessionResult = await this._checkSessionGuards(this._config.sessionGuards ?? []);
@@ -474,6 +517,22 @@ export class OODAAgentImpl {
474
517
  const outcome = this._config.outcomeMapping(feedback);
475
518
  if (outcome) {
476
519
  logger.info({ runId, outcome_type: outcome.outcome_type }, "ooda.cycle.outcome");
520
+ // Propagate to telemetry.finish wire event so sinks can persist
521
+ // it (CC sink writes agent_run.outcome_quality, OTLP exports as
522
+ // span attributes, etc.). The SDK itself never touches storage.
523
+ capturedOutcome = {
524
+ type: outcome.outcome_type,
525
+ valueCents: outcome.value_cents,
526
+ ...(outcome.quality !== undefined
527
+ ? { quality: outcome.quality }
528
+ : {}),
529
+ ...(outcome.confidence !== undefined
530
+ ? { confidence: outcome.confidence }
531
+ : {}),
532
+ ...(outcome.metadata !== undefined
533
+ ? { metadata: outcome.metadata }
534
+ : {}),
535
+ };
477
536
  }
478
537
  }
479
538
  catch (e) {
@@ -550,6 +609,8 @@ export class OODAAgentImpl {
550
609
  logger.warn({ agentId: this._config.agentId, err: e.message }, "ooda.stream.config_loader_failed — using static config");
551
610
  }
552
611
  }
612
+ const completeStepStream = this._config.completeStepImpl ?? defaultCompleteStep();
613
+ const errorStepStream = this._config.errorStepImpl ?? defaultErrorStep();
553
614
  const ctx = Object.freeze({
554
615
  agentId: this._config.agentId,
555
616
  runId,
@@ -563,9 +624,15 @@ export class OODAAgentImpl {
563
624
  logger,
564
625
  deps: this._config.deps ?? {},
565
626
  insertStep,
566
- completeStep: this._config.completeStepImpl ?? defaultCompleteStep(),
567
- errorStep: this._config.errorStepImpl ?? defaultErrorStep(),
627
+ completeStep: completeStepStream,
628
+ errorStep: errorStepStream,
568
629
  notifySlack: this._config.notifySlackImpl ?? defaultNotifySlack(),
630
+ emitStep: makeEmitStep({
631
+ insertStep,
632
+ completeStep: completeStepStream,
633
+ errorStep: errorStepStream,
634
+ logger,
635
+ }),
569
636
  });
570
637
  // ── Session guards ───────────────────────────────────────────────────
571
638
  const sessionResult = await this._checkSessionGuards(this._config.sessionGuards ?? []);
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/orchestration/ooda/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/orchestration/ooda/agent.ts"],"names":[],"mappings":"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"}
@@ -133,6 +133,40 @@ export interface OODAContext<TConfig = unknown> {
133
133
  readonly errorStep: (stepId: string, error: Error) => Promise<void>;
134
134
  /** Routed Slack notification (no-op in dry-run / replay). */
135
135
  readonly notifySlack: (channel: string, text: string) => Promise<void>;
136
+ /**
137
+ * Fire-and-forget plan checkpoint helper (SDK 1.6.1).
138
+ *
139
+ * Factorises the `insertStep → completeStep | errorStep` boilerplate that
140
+ * forge phases (publish_x, attest_run, hitl_pause, archive_brain, …) repeat
141
+ * in every `act` phase. Equivalent to :
142
+ *
143
+ * ```ts
144
+ * (async () => {
145
+ * const { stepId } = await ctx.insertStep({ type, phase, payload });
146
+ * if (status === "failed") await ctx.errorStep(stepId, errorAsError);
147
+ * else await ctx.completeStep(stepId, { ...payload, status });
148
+ * })().catch((err) => ctx.logger.warn?.({ err }, "[emitStep] failed"));
149
+ * ```
150
+ *
151
+ * Semantics :
152
+ * - Caller-side : synchronous, never throws, never blocks (errors are swallowed
153
+ * and surfaced via `ctx.logger.warn`).
154
+ * - `status` defaults to `"completed"`.
155
+ * - `status: "failed"` → `errorStep(stepId, error)`. `error` may be `Error` or
156
+ * `string` ; strings are wrapped via `new Error(string)`.
157
+ * - `status: "completed" | "skipped"` → `completeStep(stepId, {...payload, status})`.
158
+ * - Honours `resourceLimits.maxStepsPerCycle` (delegates to `insertStep`).
159
+ *
160
+ * Side-effect: existing `insertStep` / `completeStep` / `errorStep` remain
161
+ * exposed. `emitStep` is additive sucre — no breaking change.
162
+ */
163
+ readonly emitStep: (input: {
164
+ type: OODAPhaseKind;
165
+ phase: string;
166
+ payload?: Record<string, unknown>;
167
+ status?: "completed" | "failed" | "skipped";
168
+ error?: Error | string;
169
+ }) => void;
136
170
  }
137
171
  /**
138
172
  * PhaseDef — pure(ish) function from `TInput` to `TOutput` plus metadata.
@@ -178,6 +212,15 @@ export interface OutcomeRecord {
178
212
  readonly value_cents: number;
179
213
  /** Confidence score (0.0 - 1.0). EconomicObserver weights ROI by confidence. */
180
214
  readonly confidence?: number;
215
+ /**
216
+ * Outcome quality score (0.0 - 1.0). Distinct from confidence : measures
217
+ * the BUSINESS quality of the cycle output (publishedCount, threatsBlocked,
218
+ * invoicesProcessed, etc.). Persisted to `agent_run.outcome_quality` by
219
+ * the CC backend's telemetry-ingest finish handler (SDK 1.6 / ADR-ECO-039).
220
+ * Use `@vauban-org/forge`'s shared `computeQuality()` helper for consistent
221
+ * scoring across agents, or override with a custom score.
222
+ */
223
+ readonly quality?: number;
181
224
  readonly is_pending_backfill?: boolean;
182
225
  readonly metadata?: Record<string, unknown>;
183
226
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/orchestration/ooda/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/orchestration/ooda/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/orchestration/ooda/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAsLH;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAA6B;IAC/D,cAAc,EAAE,MAAM;IACtB,gBAAgB,EAAE,GAAG;IACrB,SAAS,EAAE,GAAG;CACf,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/orchestration/ooda/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAkOH;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAA6B;IAC/D,cAAc,EAAE,MAAM;IACtB,gBAAgB,EAAE,GAAG;IACrB,SAAS,EAAE,GAAG;CACf,CAAC"}
@@ -68,6 +68,23 @@ export interface TelemetryRunFinish {
68
68
  totalOutputTokens?: number;
69
69
  totalCostUsd?: number;
70
70
  totalToolCalls?: number;
71
+ /**
72
+ * Outcome record emitted by the agent's `outcomeMapping(feedback)`. The SDK
73
+ * propagates it as-is on the finish event ; consuming sinks decide what to
74
+ * do with it (CC sink writes `agent_run.outcome_quality`, OTLP collector
75
+ * surfaces as span attributes, etc.). Pure data — no coupling to any
76
+ * specific backend.
77
+ *
78
+ * @since 1.6.0 (ADR-ECO-039)
79
+ */
80
+ outcome?: {
81
+ type: string;
82
+ valueCents: number;
83
+ /** Business quality of the cycle output, 0..1. Distinct from confidence. */
84
+ quality?: number;
85
+ confidence?: number;
86
+ metadata?: Record<string, unknown>;
87
+ };
71
88
  }
72
89
  /**
73
90
  * TelemetrySink — pluggable destination for run lifecycle events.
@@ -1 +1 @@
1
- {"version":3,"file":"port.d.ts","sourceRoot":"","sources":["../../src/telemetry/port.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,MAAM,WAAW,iBAAiB;IAChC,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAC1B,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,GACT,YAAY,CAAC;AAEjB,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAID;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,aAAa;IAC5B,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAExD,uCAAuC;IACvC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D,yBAAyB;IACzB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhE;;;OAGG;IACH,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AAID;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,aAWjC,CAAC;AAIF;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;aAGzB,QAAQ,EAAE,MAAM;aAChB,KAAK,CAAC,EAAE,OAAO;gBAF/B,OAAO,EAAE,MAAM,EACC,QAAQ,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,OAAO,YAAA;CAKlC"}
1
+ {"version":3,"file":"port.d.ts","sourceRoot":"","sources":["../../src/telemetry/port.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"port.js","sourceRoot":"","sources":["../../src/telemetry/port.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA+GH,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAkB;IAChD,IAAI,EAAE,MAAM;IACZ,KAAK,CAAC,KAAK;QACT,WAAW;IACb,CAAC;IACD,KAAK,CAAC,IAAI;QACR,WAAW;IACb,CAAC;IACD,KAAK,CAAC,MAAM;QACV,WAAW;IACb,CAAC;CACF,CAAC;AAEF,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAGzB;IACA;IAHlB,YACE,OAAe,EACC,QAAgB,EAChB,KAAe;QAE/B,KAAK,CAAC,cAAc,QAAQ,KAAK,OAAO,EAAE,CAAC,CAAC;QAH5B,aAAQ,GAAR,QAAQ,CAAQ;QAChB,UAAK,GAAL,KAAK,CAAU;QAG/B,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF"}
1
+ {"version":3,"file":"port.js","sourceRoot":"","sources":["../../src/telemetry/port.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAgIH,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAkB;IAChD,IAAI,EAAE,MAAM;IACZ,KAAK,CAAC,KAAK;QACT,WAAW;IACb,CAAC;IACD,KAAK,CAAC,IAAI;QACR,WAAW;IACb,CAAC;IACD,KAAK,CAAC,MAAM;QACV,WAAW;IACb,CAAC;CACF,CAAC;AAEF,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAGzB;IACA;IAHlB,YACE,OAAe,EACC,QAAgB,EAChB,KAAe;QAE/B,KAAK,CAAC,cAAc,QAAQ,KAAK,OAAO,EAAE,CAAC,CAAC;QAH5B,aAAQ,GAAR,QAAQ,CAAQ;QAChB,UAAK,GAAL,KAAK,CAAU;QAG/B,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vauban-org/agent-sdk",
3
- "version": "1.5.0",
3
+ "version": "1.6.1",
4
4
  "description": "Vauban agent primitives: loop, budget, routing, HITL, permissions, tracking, durable execution",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -24,6 +24,7 @@ import type {
24
24
  import { DEFAULT_RESOURCE_LIMITS } from "./types.js";
25
25
  import { EMPTY_SKILL_REGISTRY } from "./skills.js";
26
26
  import { MissingDryRunFlagError } from "../../errors.js";
27
+ import type { LoggerPort } from "../../ports/logger.js";
27
28
  import { agentSpan, getTracer } from "../../tracking/gen-ai.js";
28
29
 
29
30
  /**
@@ -72,6 +73,54 @@ function defaultNotifySlack(): OODAContext["notifySlack"] {
72
73
  return async () => {};
73
74
  }
74
75
 
76
+ /**
77
+ * Build the fire-and-forget `ctx.emitStep` helper (SDK 1.6.1).
78
+ *
79
+ * Wraps `insertStep → completeStep | errorStep` in an async IIFE that swallows
80
+ * any rejection via `logger.warn`. Caller-side is synchronous and never throws.
81
+ */
82
+ function makeEmitStep(deps: {
83
+ readonly insertStep: OODAContext["insertStep"];
84
+ readonly completeStep: OODAContext["completeStep"];
85
+ readonly errorStep: OODAContext["errorStep"];
86
+ readonly logger: LoggerPort;
87
+ }): OODAContext["emitStep"] {
88
+ const { insertStep, completeStep, errorStep, logger } = deps;
89
+ return (input) => {
90
+ const status = input.status ?? "completed";
91
+ const payload = input.payload ?? {};
92
+ void (async () => {
93
+ const { stepId } = await insertStep({
94
+ type: input.type,
95
+ phase: input.phase,
96
+ payload,
97
+ });
98
+ if (status === "failed") {
99
+ const err =
100
+ input.error instanceof Error
101
+ ? input.error
102
+ : new Error(
103
+ typeof input.error === "string"
104
+ ? input.error
105
+ : `${input.phase} failed`
106
+ );
107
+ await errorStep(stepId, err);
108
+ } else {
109
+ await completeStep(stepId, { ...payload, status });
110
+ }
111
+ })().catch((err: unknown) =>
112
+ logger.warn(
113
+ {
114
+ phase: input.phase,
115
+ status,
116
+ err: (err as Error)?.message ?? String(err),
117
+ },
118
+ "[emitStep] failed"
119
+ )
120
+ );
121
+ };
122
+ }
123
+
75
124
  // ─── Telemetry metadata sanitization (SDK 1.5.0 — sprint-B) ─────────────────
76
125
  //
77
126
  // `insertStep` callers pass arbitrary `input.payload` objects which we want to
@@ -417,6 +466,18 @@ export class OODAAgentImpl<
417
466
  toolCalls: 0,
418
467
  costUsd: 0,
419
468
  };
469
+ // Captures the OutcomeRecord returned by this._config.outcomeMapping so
470
+ // finishTelemetry can propagate it on the wire event. Set late (after
471
+ // phase chain). Sink-agnostic — the SDK never persists this itself.
472
+ let capturedOutcome:
473
+ | {
474
+ type: string;
475
+ valueCents: number;
476
+ quality?: number;
477
+ confidence?: number;
478
+ metadata?: Record<string, unknown>;
479
+ }
480
+ | undefined;
420
481
  const finishTelemetry = (
421
482
  status: "success" | "failed" | "skipped",
422
483
  stopReason?: string,
@@ -434,6 +495,7 @@ export class OODAAgentImpl<
434
495
  totalOutputTokens: telemetryTotals.outputTokens,
435
496
  totalCostUsd: telemetryTotals.costUsd,
436
497
  totalToolCalls: telemetryTotals.toolCalls,
498
+ ...(capturedOutcome ? { outcome: capturedOutcome } : {}),
437
499
  })
438
500
  .catch((err: unknown) =>
439
501
  logger.warn(
@@ -531,6 +593,8 @@ export class OODAAgentImpl<
531
593
  }
532
594
  }
533
595
 
596
+ const completeStep = this._config.completeStepImpl ?? defaultCompleteStep();
597
+ const errorStep = this._config.errorStepImpl ?? defaultErrorStep();
534
598
  const ctx: OODAContext<TConfig> = Object.freeze({
535
599
  agentId: this._config.agentId,
536
600
  runId,
@@ -544,9 +608,10 @@ export class OODAAgentImpl<
544
608
  logger,
545
609
  deps: this._config.deps ?? {},
546
610
  insertStep,
547
- completeStep: this._config.completeStepImpl ?? defaultCompleteStep(),
548
- errorStep: this._config.errorStepImpl ?? defaultErrorStep(),
611
+ completeStep,
612
+ errorStep,
549
613
  notifySlack: this._config.notifySlackImpl ?? defaultNotifySlack(),
614
+ emitStep: makeEmitStep({ insertStep, completeStep, errorStep, logger }),
550
615
  });
551
616
 
552
617
  // ── Session guards ──────────────────────────────────────────────────────
@@ -675,6 +740,22 @@ export class OODAAgentImpl<
675
740
  { runId, outcome_type: outcome.outcome_type },
676
741
  "ooda.cycle.outcome"
677
742
  );
743
+ // Propagate to telemetry.finish wire event so sinks can persist
744
+ // it (CC sink writes agent_run.outcome_quality, OTLP exports as
745
+ // span attributes, etc.). The SDK itself never touches storage.
746
+ capturedOutcome = {
747
+ type: outcome.outcome_type,
748
+ valueCents: outcome.value_cents,
749
+ ...(outcome.quality !== undefined
750
+ ? { quality: outcome.quality }
751
+ : {}),
752
+ ...(outcome.confidence !== undefined
753
+ ? { confidence: outcome.confidence }
754
+ : {}),
755
+ ...(outcome.metadata !== undefined
756
+ ? { metadata: outcome.metadata }
757
+ : {}),
758
+ };
678
759
  }
679
760
  } catch (e) {
680
761
  logger.error(
@@ -772,6 +853,9 @@ export class OODAAgentImpl<
772
853
  }
773
854
  }
774
855
 
856
+ const completeStepStream =
857
+ this._config.completeStepImpl ?? defaultCompleteStep();
858
+ const errorStepStream = this._config.errorStepImpl ?? defaultErrorStep();
775
859
  const ctx: OODAContext<TConfig> = Object.freeze({
776
860
  agentId: this._config.agentId,
777
861
  runId,
@@ -785,9 +869,15 @@ export class OODAAgentImpl<
785
869
  logger,
786
870
  deps: this._config.deps ?? {},
787
871
  insertStep,
788
- completeStep: this._config.completeStepImpl ?? defaultCompleteStep(),
789
- errorStep: this._config.errorStepImpl ?? defaultErrorStep(),
872
+ completeStep: completeStepStream,
873
+ errorStep: errorStepStream,
790
874
  notifySlack: this._config.notifySlackImpl ?? defaultNotifySlack(),
875
+ emitStep: makeEmitStep({
876
+ insertStep,
877
+ completeStep: completeStepStream,
878
+ errorStep: errorStepStream,
879
+ logger,
880
+ }),
791
881
  });
792
882
 
793
883
  // ── Session guards ───────────────────────────────────────────────────
@@ -146,6 +146,41 @@ export interface OODAContext<TConfig = unknown> {
146
146
 
147
147
  /** Routed Slack notification (no-op in dry-run / replay). */
148
148
  readonly notifySlack: (channel: string, text: string) => Promise<void>;
149
+
150
+ /**
151
+ * Fire-and-forget plan checkpoint helper (SDK 1.6.1).
152
+ *
153
+ * Factorises the `insertStep → completeStep | errorStep` boilerplate that
154
+ * forge phases (publish_x, attest_run, hitl_pause, archive_brain, …) repeat
155
+ * in every `act` phase. Equivalent to :
156
+ *
157
+ * ```ts
158
+ * (async () => {
159
+ * const { stepId } = await ctx.insertStep({ type, phase, payload });
160
+ * if (status === "failed") await ctx.errorStep(stepId, errorAsError);
161
+ * else await ctx.completeStep(stepId, { ...payload, status });
162
+ * })().catch((err) => ctx.logger.warn?.({ err }, "[emitStep] failed"));
163
+ * ```
164
+ *
165
+ * Semantics :
166
+ * - Caller-side : synchronous, never throws, never blocks (errors are swallowed
167
+ * and surfaced via `ctx.logger.warn`).
168
+ * - `status` defaults to `"completed"`.
169
+ * - `status: "failed"` → `errorStep(stepId, error)`. `error` may be `Error` or
170
+ * `string` ; strings are wrapped via `new Error(string)`.
171
+ * - `status: "completed" | "skipped"` → `completeStep(stepId, {...payload, status})`.
172
+ * - Honours `resourceLimits.maxStepsPerCycle` (delegates to `insertStep`).
173
+ *
174
+ * Side-effect: existing `insertStep` / `completeStep` / `errorStep` remain
175
+ * exposed. `emitStep` is additive sucre — no breaking change.
176
+ */
177
+ readonly emitStep: (input: {
178
+ type: OODAPhaseKind;
179
+ phase: string;
180
+ payload?: Record<string, unknown>;
181
+ status?: "completed" | "failed" | "skipped";
182
+ error?: Error | string;
183
+ }) => void;
149
184
  }
150
185
 
151
186
  /**
@@ -192,6 +227,15 @@ export interface OutcomeRecord {
192
227
  readonly value_cents: number;
193
228
  /** Confidence score (0.0 - 1.0). EconomicObserver weights ROI by confidence. */
194
229
  readonly confidence?: number;
230
+ /**
231
+ * Outcome quality score (0.0 - 1.0). Distinct from confidence : measures
232
+ * the BUSINESS quality of the cycle output (publishedCount, threatsBlocked,
233
+ * invoicesProcessed, etc.). Persisted to `agent_run.outcome_quality` by
234
+ * the CC backend's telemetry-ingest finish handler (SDK 1.6 / ADR-ECO-039).
235
+ * Use `@vauban-org/forge`'s shared `computeQuality()` helper for consistent
236
+ * scoring across agents, or override with a custom score.
237
+ */
238
+ readonly quality?: number;
195
239
  readonly is_pending_backfill?: boolean;
196
240
  readonly metadata?: Record<string, unknown>;
197
241
  }
@@ -79,6 +79,23 @@ export interface TelemetryRunFinish {
79
79
  totalOutputTokens?: number;
80
80
  totalCostUsd?: number;
81
81
  totalToolCalls?: number;
82
+ /**
83
+ * Outcome record emitted by the agent's `outcomeMapping(feedback)`. The SDK
84
+ * propagates it as-is on the finish event ; consuming sinks decide what to
85
+ * do with it (CC sink writes `agent_run.outcome_quality`, OTLP collector
86
+ * surfaces as span attributes, etc.). Pure data — no coupling to any
87
+ * specific backend.
88
+ *
89
+ * @since 1.6.0 (ADR-ECO-039)
90
+ */
91
+ outcome?: {
92
+ type: string;
93
+ valueCents: number;
94
+ /** Business quality of the cycle output, 0..1. Distinct from confidence. */
95
+ quality?: number;
96
+ confidence?: number;
97
+ metadata?: Record<string, unknown>;
98
+ };
82
99
  }
83
100
 
84
101
  // ─── Sink interface ──────────────────────────────────────────────────────────