@llm-dev-ops/agentics-cli 2.7.4 → 2.7.5

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.
@@ -0,0 +1,87 @@
1
+ /**
2
+ * ADR-PIPELINE-096 D3 — Agent-Claim Registry.
3
+ *
4
+ * Maps the four headline financial metrics that the executive summary,
5
+ * decision memo, and financial analysis render onto specific agents and
6
+ * response paths. The renderer consults this registry FIRST when synthesising
7
+ * a number; if the canonical agent returned a value, that value is the source
8
+ * of truth and the rendered cell carries `src=<agent>`. If the registry has no
9
+ * winner, the renderer falls through to `unit-economics.json`, then to the
10
+ * per-employee heuristic from ADR-095.
11
+ *
12
+ * The registry is intentionally NARROW — it covers only the four metrics that
13
+ * appear in every CXO-facing document. Adding a new metric is a one-line
14
+ * change here plus a renderer hook; we are explicit about which numbers carry
15
+ * source attribution and which do not.
16
+ */
17
+ /**
18
+ * The four headline metrics that get source attribution. Lined up with the
19
+ * fcv-tag `kind=` values from ADR-PIPELINE-073 (financial-claim-extractor).
20
+ */
21
+ export type ClaimKind = 'investment' | 'roi' | 'npv' | 'payback' | 'savings';
22
+ /**
23
+ * One entry maps a metric to a specific agent and a response-path
24
+ * (dot-delimited). Multiple entries per kind are allowed and ranked by
25
+ * priority — the first agent that returned a value wins.
26
+ */
27
+ export interface ClaimMapping {
28
+ /** The metric this mapping resolves. */
29
+ readonly kind: ClaimKind;
30
+ /** Domain identifier — e.g. `costops`, `simulator`, `platform`. */
31
+ readonly domain: string;
32
+ /** Agent identifier within the domain — e.g. `forecast`, `roi`, `scenario`. */
33
+ readonly agent: string;
34
+ /** Dot-delimited path inside the agent's response object. Supports `.` and array `[0]` notation. */
35
+ readonly response_path: string;
36
+ /** Lower numbers are tried first. Stable, declarative priority. */
37
+ readonly priority: number;
38
+ /** Optional human-readable methodology string used in the rendered cell. */
39
+ readonly methodology?: string;
40
+ }
41
+ /**
42
+ * Canonical mapping table. Adding a new agent that returns one of the four
43
+ * metrics is a single-line append here. The renderer never hardcodes
44
+ * agent/path knowledge; everything flows through this table.
45
+ */
46
+ export declare const AGENT_CLAIM_REGISTRY: ReadonlyArray<ClaimMapping>;
47
+ /** Minimal shape we need from any agent invocation result. */
48
+ export interface AgentResultLike {
49
+ readonly domain: string;
50
+ readonly agent: string;
51
+ readonly status: number;
52
+ readonly response: unknown;
53
+ }
54
+ /** A claim that has been resolved against the registry. */
55
+ export interface ResolvedClaim {
56
+ /** Raw value from the agent (number or string — caller decides format). */
57
+ readonly value: number | string;
58
+ /** Source attribution for the rendered `src=` attribute. */
59
+ readonly source: string;
60
+ /** Methodology string for the cell text. */
61
+ readonly methodology: string;
62
+ /** Which agent produced this value. */
63
+ readonly domain: string;
64
+ readonly agent: string;
65
+ }
66
+ /**
67
+ * Look up the highest-priority agent that returned a value for `kind`.
68
+ * Returns `null` when no registered agent succeeded with a non-null value at
69
+ * the response path. Caller decides whether to fall through to
70
+ * unit-economics.json or to the per-employee heuristic.
71
+ */
72
+ export declare function resolveClaim(kind: ClaimKind, results: ReadonlyArray<AgentResultLike>): ResolvedClaim | null;
73
+ /**
74
+ * Resolve ALL agents that returned a value for `kind`. Used by D3 part 2's
75
+ * triangulation surface to detect agreement / divergence across multiple
76
+ * sources for the same metric.
77
+ */
78
+ export declare function resolveAllClaims(kind: ClaimKind, results: ReadonlyArray<AgentResultLike>): ResolvedClaim[];
79
+ /**
80
+ * Walk a dot-delimited path inside a response object. Supports nested objects
81
+ * and array indices via `[N]` notation. Returns `null` for any miss.
82
+ *
83
+ * Example: `data.dcf.npv_5yr_usd` → result.data.dcf.npv_5yr_usd
84
+ * Example: `data.scenarios[0].npv` → result.data.scenarios[0].npv
85
+ */
86
+ export declare function readResponsePath(response: unknown, path: string): unknown;
87
+ //# sourceMappingURL=agent-claim-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-claim-registry.d.ts","sourceRoot":"","sources":["../../src/synthesis/agent-claim-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;AAE7E;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,mEAAmE;IACnE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,oGAAoG;IACpG,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAMD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,YAAY,CA8F5D,CAAC;AAMF,8DAA8D;AAC9D,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED,2DAA2D;AAC3D,MAAM,WAAW,aAAa;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,4DAA4D;IAC5D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,4CAA4C;IAC5C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,uCAAuC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,aAAa,CAAC,eAAe,CAAC,GACtC,aAAa,GAAG,IAAI,CAgCtB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,aAAa,CAAC,eAAe,CAAC,GACtC,aAAa,EAAE,CA8BjB;AAMD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAqCzE"}
@@ -0,0 +1,257 @@
1
+ /**
2
+ * ADR-PIPELINE-096 D3 — Agent-Claim Registry.
3
+ *
4
+ * Maps the four headline financial metrics that the executive summary,
5
+ * decision memo, and financial analysis render onto specific agents and
6
+ * response paths. The renderer consults this registry FIRST when synthesising
7
+ * a number; if the canonical agent returned a value, that value is the source
8
+ * of truth and the rendered cell carries `src=<agent>`. If the registry has no
9
+ * winner, the renderer falls through to `unit-economics.json`, then to the
10
+ * per-employee heuristic from ADR-095.
11
+ *
12
+ * The registry is intentionally NARROW — it covers only the four metrics that
13
+ * appear in every CXO-facing document. Adding a new metric is a one-line
14
+ * change here plus a renderer hook; we are explicit about which numbers carry
15
+ * source attribution and which do not.
16
+ */
17
+ // ---------------------------------------------------------------------------
18
+ // Registry (declarative — the single place mappings live)
19
+ // ---------------------------------------------------------------------------
20
+ /**
21
+ * Canonical mapping table. Adding a new agent that returns one of the four
22
+ * metrics is a single-line append here. The renderer never hardcodes
23
+ * agent/path knowledge; everything flows through this table.
24
+ */
25
+ export const AGENT_CLAIM_REGISTRY = [
26
+ // ── Investment (Total Investment / Total Cost) ─────────────────────────────
27
+ {
28
+ kind: 'investment',
29
+ domain: 'costops',
30
+ agent: 'forecast',
31
+ response_path: 'data.investment.total_usd',
32
+ priority: 10,
33
+ methodology: 'costops/forecast: total program investment forecast',
34
+ },
35
+ {
36
+ kind: 'investment',
37
+ domain: 'costops',
38
+ agent: 'budget',
39
+ response_path: 'data.allocated_budget.usd',
40
+ priority: 20,
41
+ methodology: 'costops/budget: allocated budget envelope',
42
+ },
43
+ {
44
+ kind: 'investment',
45
+ domain: 'costops',
46
+ agent: 'attribution',
47
+ response_path: 'data.total_cost.usd',
48
+ priority: 30,
49
+ methodology: 'costops/attribution: cost attribution rollup',
50
+ },
51
+ // ── ROI (Expected ROI / Return on Investment) ──────────────────────────────
52
+ {
53
+ kind: 'roi',
54
+ domain: 'costops',
55
+ agent: 'roi',
56
+ response_path: 'data.roi_pct',
57
+ priority: 10,
58
+ methodology: 'costops/roi: program ROI calculation',
59
+ },
60
+ {
61
+ kind: 'roi',
62
+ domain: 'costops',
63
+ agent: 'tradeoff',
64
+ response_path: 'data.roi_pct',
65
+ priority: 20,
66
+ methodology: 'costops/tradeoff: ROI under cost-quality tradeoff',
67
+ },
68
+ // ── NPV (5-year NPV) ───────────────────────────────────────────────────────
69
+ {
70
+ kind: 'npv',
71
+ domain: 'simulator',
72
+ agent: 'scenario',
73
+ response_path: 'data.dcf.npv_5yr_usd',
74
+ priority: 10,
75
+ methodology: 'simulator/scenario: 5-year DCF, scenario midpoint',
76
+ },
77
+ {
78
+ kind: 'npv',
79
+ domain: 'costops',
80
+ agent: 'forecast',
81
+ response_path: 'data.npv.five_year_usd',
82
+ priority: 20,
83
+ methodology: 'costops/forecast: 5-year NPV from forecast',
84
+ },
85
+ // ── Payback (Payback Period) ───────────────────────────────────────────────
86
+ {
87
+ kind: 'payback',
88
+ domain: 'costops',
89
+ agent: 'budget',
90
+ response_path: 'data.payback_months',
91
+ priority: 10,
92
+ methodology: 'costops/budget: payback period',
93
+ },
94
+ {
95
+ kind: 'payback',
96
+ domain: 'costops',
97
+ agent: 'forecast',
98
+ response_path: 'data.payback_months',
99
+ priority: 20,
100
+ methodology: 'costops/forecast: payback from cumulative cashflow',
101
+ },
102
+ // ── Savings (Annual Efficiency Gain / Revenue Impact) ──────────────────────
103
+ {
104
+ kind: 'savings',
105
+ domain: 'costops',
106
+ agent: 'roi',
107
+ response_path: 'data.annual_savings_usd',
108
+ priority: 10,
109
+ methodology: 'costops/roi: annual savings from ROI calc',
110
+ },
111
+ {
112
+ kind: 'savings',
113
+ domain: 'costops',
114
+ agent: 'attribution',
115
+ response_path: 'data.annual_savings.usd',
116
+ priority: 20,
117
+ methodology: 'costops/attribution: annual savings',
118
+ },
119
+ ];
120
+ /**
121
+ * Look up the highest-priority agent that returned a value for `kind`.
122
+ * Returns `null` when no registered agent succeeded with a non-null value at
123
+ * the response path. Caller decides whether to fall through to
124
+ * unit-economics.json or to the per-employee heuristic.
125
+ */
126
+ export function resolveClaim(kind, results) {
127
+ // Filter mappings to this kind, sorted by priority (lower wins).
128
+ const candidates = AGENT_CLAIM_REGISTRY
129
+ .filter(m => m.kind === kind)
130
+ .slice()
131
+ .sort((a, b) => a.priority - b.priority);
132
+ // Index agent results by `domain/agent` for O(1) lookup.
133
+ const byKey = new Map();
134
+ for (const r of results) {
135
+ if (r.status >= 200 && r.status < 300) {
136
+ byKey.set(`${r.domain}/${r.agent}`, r);
137
+ }
138
+ }
139
+ for (const c of candidates) {
140
+ const result = byKey.get(`${c.domain}/${c.agent}`);
141
+ if (!result)
142
+ continue;
143
+ const value = readResponsePath(result.response, c.response_path);
144
+ if (value === null || value === undefined)
145
+ continue;
146
+ if (typeof value !== 'number' && typeof value !== 'string')
147
+ continue;
148
+ if (typeof value === 'string' && value.trim().length === 0)
149
+ continue;
150
+ return {
151
+ value,
152
+ source: `${c.domain}/${c.agent}`,
153
+ methodology: c.methodology ?? `${c.domain}/${c.agent}`,
154
+ domain: c.domain,
155
+ agent: c.agent,
156
+ };
157
+ }
158
+ return null;
159
+ }
160
+ /**
161
+ * Resolve ALL agents that returned a value for `kind`. Used by D3 part 2's
162
+ * triangulation surface to detect agreement / divergence across multiple
163
+ * sources for the same metric.
164
+ */
165
+ export function resolveAllClaims(kind, results) {
166
+ const candidates = AGENT_CLAIM_REGISTRY
167
+ .filter(m => m.kind === kind)
168
+ .slice()
169
+ .sort((a, b) => a.priority - b.priority);
170
+ const byKey = new Map();
171
+ for (const r of results) {
172
+ if (r.status >= 200 && r.status < 300) {
173
+ byKey.set(`${r.domain}/${r.agent}`, r);
174
+ }
175
+ }
176
+ const out = [];
177
+ for (const c of candidates) {
178
+ const result = byKey.get(`${c.domain}/${c.agent}`);
179
+ if (!result)
180
+ continue;
181
+ const value = readResponsePath(result.response, c.response_path);
182
+ if (value === null || value === undefined)
183
+ continue;
184
+ if (typeof value !== 'number' && typeof value !== 'string')
185
+ continue;
186
+ if (typeof value === 'string' && value.trim().length === 0)
187
+ continue;
188
+ out.push({
189
+ value,
190
+ source: `${c.domain}/${c.agent}`,
191
+ methodology: c.methodology ?? `${c.domain}/${c.agent}`,
192
+ domain: c.domain,
193
+ agent: c.agent,
194
+ });
195
+ }
196
+ return out;
197
+ }
198
+ // ---------------------------------------------------------------------------
199
+ // Helpers
200
+ // ---------------------------------------------------------------------------
201
+ /**
202
+ * Walk a dot-delimited path inside a response object. Supports nested objects
203
+ * and array indices via `[N]` notation. Returns `null` for any miss.
204
+ *
205
+ * Example: `data.dcf.npv_5yr_usd` → result.data.dcf.npv_5yr_usd
206
+ * Example: `data.scenarios[0].npv` → result.data.scenarios[0].npv
207
+ */
208
+ export function readResponsePath(response, path) {
209
+ if (response === null || response === undefined)
210
+ return null;
211
+ // Tokenize the path on `.` and `[N]`.
212
+ const tokens = [];
213
+ let buf = '';
214
+ for (let i = 0; i < path.length; i++) {
215
+ const ch = path[i];
216
+ if (ch === '.') {
217
+ if (buf)
218
+ tokens.push(buf);
219
+ buf = '';
220
+ }
221
+ else if (ch === '[') {
222
+ if (buf)
223
+ tokens.push(buf);
224
+ buf = '';
225
+ const close = path.indexOf(']', i);
226
+ if (close === -1)
227
+ return null;
228
+ const idx = parseInt(path.slice(i + 1, close), 10);
229
+ if (Number.isNaN(idx))
230
+ return null;
231
+ tokens.push(idx);
232
+ i = close;
233
+ }
234
+ else {
235
+ buf += ch;
236
+ }
237
+ }
238
+ if (buf)
239
+ tokens.push(buf);
240
+ let cur = response;
241
+ for (const tok of tokens) {
242
+ if (cur === null || cur === undefined)
243
+ return null;
244
+ if (typeof tok === 'number') {
245
+ if (!Array.isArray(cur))
246
+ return null;
247
+ cur = cur[tok];
248
+ }
249
+ else {
250
+ if (typeof cur !== 'object')
251
+ return null;
252
+ cur = cur[tok];
253
+ }
254
+ }
255
+ return cur ?? null;
256
+ }
257
+ //# sourceMappingURL=agent-claim-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-claim-registry.js","sourceRoot":"","sources":["../../src/synthesis/agent-claim-registry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"simulation-artifact-generator.d.ts","sourceRoot":"","sources":["../../src/synthesis/simulation-artifact-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,EAcL,KAAK,WAAW,EACjB,MAAM,2BAA2B,CAAC;AAiCnC,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,WAAW,EAAE,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;CACtB;AAoHD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAyElE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,WAAW,EAAE,EACtB,KAAK,EAAE,MAAM,GACZ,WAAW,EAAE,CAgHf;AAMD,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,uBAAuB,GAC7B,wBAAwB,CA4V1B;AAiFD,UAAU,yBAAyB;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,yBAAyB,CAoE1F"}
1
+ {"version":3,"file":"simulation-artifact-generator.d.ts","sourceRoot":"","sources":["../../src/synthesis/simulation-artifact-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,EAcL,KAAK,WAAW,EACjB,MAAM,2BAA2B,CAAC;AAiCnC,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,WAAW,EAAE,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;CACtB;AAoHD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAyElE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,WAAW,EAAE,EACtB,KAAK,EAAE,MAAM,GACZ,WAAW,EAAE,CAgHf;AAMD,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,uBAAuB,GAC7B,wBAAwB,CA4V1B;AAsJD,UAAU,yBAAyB;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,yBAAyB,CAoE1F"}
@@ -655,6 +655,14 @@ function normalizePlatformResults(raw) {
655
655
  });
656
656
  }
657
657
  function buildManifest(input, platformResults, runId) {
658
+ const agents_invoked = [
659
+ { domain: 'simulator', agent: 'enterprise', status: 'invoked' },
660
+ ...platformResults.map(r => ({
661
+ domain: r.domain,
662
+ agent: r.agent,
663
+ status: r.status >= 200 && r.status < 300 ? 'success' : 'error',
664
+ })),
665
+ ];
658
666
  return {
659
667
  run_id: runId,
660
668
  execution_id: input.executionId,
@@ -662,14 +670,7 @@ function buildManifest(input, platformResults, runId) {
662
670
  query: input.query,
663
671
  created_at: new Date().toISOString(),
664
672
  timing_ms: input.timing,
665
- agents_invoked: [
666
- { domain: 'simulator', agent: 'enterprise', status: 'invoked' },
667
- ...platformResults.map(r => ({
668
- domain: r.domain,
669
- agent: r.agent,
670
- status: r.status >= 200 && r.status < 300 ? 'success' : 'error',
671
- })),
672
- ],
673
+ agents_invoked,
673
674
  artifacts: [
674
675
  'manifest.json',
675
676
  'scenario.json',
@@ -682,8 +683,76 @@ function buildManifest(input, platformResults, runId) {
682
683
  'integration-assessment.md',
683
684
  'agent-fleet-report.md',
684
685
  ],
685
- schema_version: '1.0.0',
686
+ // ADR-PIPELINE-096 D2 — runtime lineage block. Populated from the same
687
+ // platformResults the rest of the manifest is built from, plus a fresh
688
+ // Ruflo availability probe (cached). Backwards-compatible: pre-D2
689
+ // consumers ignore unknown top-level keys per ADR-088.
690
+ runtime: buildRuntimeLineage(agents_invoked),
691
+ schema_version: '1.1.0',
692
+ };
693
+ }
694
+ /**
695
+ * ADR-096 D2 — assemble the manifest.runtime block (full-fleet path).
696
+ * Mirrors ask-artifact-writer's buildRuntimeLineage but lives here because
697
+ * the full-fleet pipeline writes its own manifest, not via persistAskResults.
698
+ */
699
+ function buildRuntimeLineage(agents_invoked) {
700
+ // Ruflo probe — cached after first call (ADR-094 optimization).
701
+ let ruflo;
702
+ try {
703
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
704
+ const rufloMod = require('../pipeline/ruflo-phase-executor.js');
705
+ const probe = typeof rufloMod.checkRufloAvailable === 'function' ? rufloMod.checkRufloAvailable() : null;
706
+ if (probe && typeof probe === 'object') {
707
+ const p = probe;
708
+ ruflo = {
709
+ available: Boolean(p['available']),
710
+ version: typeof p['version'] === 'string' ? p['version'] : 'N/A',
711
+ binary: typeof p['binary'] === 'string' ? p['binary'] : '',
712
+ reason: typeof p['reason'] === 'string' ? p['reason'] : (p['available'] ? 'ok' : 'unknown'),
713
+ };
714
+ }
715
+ else {
716
+ ruflo = { available: false, version: 'N/A', binary: '', reason: 'probe-failed' };
717
+ }
718
+ }
719
+ catch {
720
+ ruflo = { available: false, version: 'N/A', binary: '', reason: 'probe-threw' };
721
+ }
722
+ // Hyperbolic-simulation enumeration: every simulator/* invocation is one.
723
+ const simulatorAgents = agents_invoked.filter(a => a.domain === 'simulator');
724
+ const ruvector = {
725
+ hyperbolic_simulations: simulatorAgents.map(a => ({
726
+ agent: `${a.domain}/${a.agent}`,
727
+ status: a.status,
728
+ })),
729
+ embedding_lookups: 0,
730
+ graph_routing_invocations: 0, // full-fleet path bypasses graph routing
731
+ };
732
+ // Per-domain breakdown of dispatch outcomes.
733
+ const byDomain = {};
734
+ for (const a of agents_invoked) {
735
+ const slot = byDomain[a.domain] ?? { dispatched: 0, succeeded: 0, failed: 0 };
736
+ slot.dispatched++;
737
+ if (a.status === 'success' || a.status === 'invoked')
738
+ slot.succeeded++;
739
+ else
740
+ slot.failed++;
741
+ byDomain[a.domain] = slot;
742
+ }
743
+ const dispatched = agents_invoked.length;
744
+ const succeeded = agents_invoked.filter(a => a.status === 'success' || a.status === 'invoked').length;
745
+ const failed = dispatched - succeeded;
746
+ const inferredDepth = dispatched >= 100 ? 'consultancy' : dispatched >= 20 ? 'standard' : 'lite';
747
+ const fleet = {
748
+ depth: inferredDepth,
749
+ dispatched,
750
+ succeeded,
751
+ failed,
752
+ by_domain: byDomain,
753
+ cloud_breaker: { tripped: false },
686
754
  };
755
+ return { ruflo, ruvector, fleet };
687
756
  }
688
757
  // ============================================================================
689
758
  // ADR-PIPELINE-017: Consensus Validation Gate
@@ -1 +1 @@
1
- {"version":3,"file":"simulation-artifact-generator.js","sourceRoot":"","sources":["../../src/synthesis/simulation-artifact-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulation-artifact-generator.js","sourceRoot":"","sources":["../../src/synthesis/simulation-artifact-generator.ts"],"names":[],"mappings":"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"}