@llm-dev-ops/agentics-cli 2.3.0 → 2.5.0
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/agents/repo-agent-runner.d.ts +2 -0
- package/dist/agents/repo-agent-runner.d.ts.map +1 -1
- package/dist/agents/repo-agent-runner.js +4 -2
- package/dist/agents/repo-agent-runner.js.map +1 -1
- package/dist/agents/system-prompts.d.ts.map +1 -1
- package/dist/agents/system-prompts.js +19 -0
- package/dist/agents/system-prompts.js.map +1 -1
- package/dist/commands/agents.d.ts +7 -0
- package/dist/commands/agents.d.ts.map +1 -1
- package/dist/commands/agents.js +115 -3
- package/dist/commands/agents.js.map +1 -1
- package/dist/config/qe-gating.d.ts +81 -0
- package/dist/config/qe-gating.d.ts.map +1 -0
- package/dist/config/qe-gating.js +138 -0
- package/dist/config/qe-gating.js.map +1 -0
- package/dist/pipeline/auto-chain.d.ts +117 -0
- package/dist/pipeline/auto-chain.d.ts.map +1 -1
- package/dist/pipeline/auto-chain.js +1047 -35
- package/dist/pipeline/auto-chain.js.map +1 -1
- package/dist/pipeline/phase2/phases/prompt-generator.d.ts.map +1 -1
- package/dist/pipeline/phase2/phases/prompt-generator.js +152 -6
- package/dist/pipeline/phase2/phases/prompt-generator.js.map +1 -1
- package/dist/pipeline/phase4-5-pre-render/financial-model.d.ts +51 -0
- package/dist/pipeline/phase4-5-pre-render/financial-model.d.ts.map +1 -0
- package/dist/pipeline/phase4-5-pre-render/financial-model.js +118 -0
- package/dist/pipeline/phase4-5-pre-render/financial-model.js.map +1 -0
- package/dist/pipeline/phase4-5-pre-render/post-render-reconciler.d.ts +53 -0
- package/dist/pipeline/phase4-5-pre-render/post-render-reconciler.d.ts.map +1 -0
- package/dist/pipeline/phase4-5-pre-render/post-render-reconciler.js +130 -0
- package/dist/pipeline/phase4-5-pre-render/post-render-reconciler.js.map +1 -0
- package/dist/pipeline/phase4-5-pre-render/pre-render-coordinator.d.ts +47 -0
- package/dist/pipeline/phase4-5-pre-render/pre-render-coordinator.d.ts.map +1 -0
- package/dist/pipeline/phase4-5-pre-render/pre-render-coordinator.js +105 -0
- package/dist/pipeline/phase4-5-pre-render/pre-render-coordinator.js.map +1 -0
- package/dist/pipeline/phase4-5-pre-render/sector-baselines.d.ts +42 -0
- package/dist/pipeline/phase4-5-pre-render/sector-baselines.d.ts.map +1 -0
- package/dist/pipeline/phase4-5-pre-render/sector-baselines.js +117 -0
- package/dist/pipeline/phase4-5-pre-render/sector-baselines.js.map +1 -0
- package/dist/pipeline/phase5-build/phases/post-generation-validator.d.ts.map +1 -1
- package/dist/pipeline/phase5-build/phases/post-generation-validator.js +341 -1
- package/dist/pipeline/phase5-build/phases/post-generation-validator.js.map +1 -1
- package/dist/pipeline/phase5-build/qe-gating-executor.d.ts +73 -0
- package/dist/pipeline/phase5-build/qe-gating-executor.d.ts.map +1 -0
- package/dist/pipeline/phase5-build/qe-gating-executor.js +134 -0
- package/dist/pipeline/phase5-build/qe-gating-executor.js.map +1 -0
- package/dist/pipeline/types.d.ts +4 -1
- package/dist/pipeline/types.d.ts.map +1 -1
- package/dist/pipeline/types.js +9 -1
- package/dist/pipeline/types.js.map +1 -1
- package/dist/promotion/graph-diff.d.ts +39 -0
- package/dist/promotion/graph-diff.d.ts.map +1 -0
- package/dist/promotion/graph-diff.js +60 -0
- package/dist/promotion/graph-diff.js.map +1 -0
- package/dist/promotion/sampler-lib.d.ts +45 -0
- package/dist/promotion/sampler-lib.d.ts.map +1 -0
- package/dist/promotion/sampler-lib.js +96 -0
- package/dist/promotion/sampler-lib.js.map +1 -0
- package/dist/routing/domain-boundary.d.ts +92 -0
- package/dist/routing/domain-boundary.d.ts.map +1 -0
- package/dist/routing/domain-boundary.js +208 -0
- package/dist/routing/domain-boundary.js.map +1 -0
- package/dist/routing/index.d.ts +2 -0
- package/dist/routing/index.d.ts.map +1 -1
- package/dist/routing/index.js +4 -0
- package/dist/routing/index.js.map +1 -1
- package/dist/synthesis/domain-unit-registry.d.ts +1 -1
- package/dist/synthesis/domain-unit-registry.d.ts.map +1 -1
- package/dist/synthesis/domain-unit-registry.js +26 -0
- package/dist/synthesis/domain-unit-registry.js.map +1 -1
- package/dist/synthesis/financial-claim-extractor.d.ts +20 -0
- package/dist/synthesis/financial-claim-extractor.d.ts.map +1 -1
- package/dist/synthesis/financial-claim-extractor.js +31 -0
- package/dist/synthesis/financial-claim-extractor.js.map +1 -1
- package/dist/synthesis/financial-consistency-rules.d.ts +4 -0
- package/dist/synthesis/financial-consistency-rules.d.ts.map +1 -1
- package/dist/synthesis/financial-consistency-rules.js +51 -0
- package/dist/synthesis/financial-consistency-rules.js.map +1 -1
- package/dist/synthesis/roadmap-dates.d.ts +72 -0
- package/dist/synthesis/roadmap-dates.d.ts.map +1 -0
- package/dist/synthesis/roadmap-dates.js +203 -0
- package/dist/synthesis/roadmap-dates.js.map +1 -0
- package/dist/synthesis/simulation-artifact-generator.d.ts.map +1 -1
- package/dist/synthesis/simulation-artifact-generator.js +46 -0
- package/dist/synthesis/simulation-artifact-generator.js.map +1 -1
- package/dist/synthesis/simulation-renderers.d.ts.map +1 -1
- package/dist/synthesis/simulation-renderers.js +139 -34
- package/dist/synthesis/simulation-renderers.js.map +1 -1
- package/docs/ecosystem.graph.json +87 -14
- package/package.json +1 -1
|
@@ -27,6 +27,8 @@ import { runConsistencyCheck, FinancialConsistencyError, } from './financial-con
|
|
|
27
27
|
import { classifyLaborIntensity, estimateWorkforceExposure, buildLaborProfileArtifact, isLaborIntensive, } from './domain-labor-classifier.js';
|
|
28
28
|
import { populateConsensusSnapshot } from './consensus-tiers.js';
|
|
29
29
|
import { renderConsensusSvg } from './consensus-svg.js';
|
|
30
|
+
import { executePreRender } from '../pipeline/phase4-5-pre-render/pre-render-coordinator.js';
|
|
31
|
+
import { extractDomainAnalysis } from './simulation-renderers.js';
|
|
30
32
|
// ============================================================================
|
|
31
33
|
// Constants (match artifact-writer.ts)
|
|
32
34
|
// ============================================================================
|
|
@@ -373,6 +375,50 @@ export function generateSimulationArtifacts(input) {
|
|
|
373
375
|
filesWritten.push('roadmap.json');
|
|
374
376
|
checksums['roadmap.json'] = computeChecksum(roadmapContent);
|
|
375
377
|
bytesWritten += Buffer.byteLength(roadmapContent, 'utf-8');
|
|
378
|
+
// ADR-PIPELINE-072: Pre-Render Analysis Pass. Produces unit-economics.json
|
|
379
|
+
// BEFORE the exec summary / decision memo / financial analysis renderers
|
|
380
|
+
// run, so ADR-066's tier-1 path fires on every run and the per-employee
|
|
381
|
+
// heuristic fallback disappears from executive output.
|
|
382
|
+
//
|
|
383
|
+
// The preview is written to TWO paths:
|
|
384
|
+
// - unit-economics.json → consumed by the renderer
|
|
385
|
+
// - unit-economics.preview.json → preserved for the reconciler so
|
|
386
|
+
// the prototype can overwrite the
|
|
387
|
+
// first without clobbering the
|
|
388
|
+
// preview baseline
|
|
389
|
+
try {
|
|
390
|
+
const preRenderDomainAnalysis = extractDomainAnalysis(enrichedSimResult, input.query);
|
|
391
|
+
const preRender = executePreRender({
|
|
392
|
+
runDir,
|
|
393
|
+
runId,
|
|
394
|
+
query: input.query,
|
|
395
|
+
scenarioArtifact: scenario,
|
|
396
|
+
domainAnalysis: preRenderDomainAnalysis,
|
|
397
|
+
});
|
|
398
|
+
if (preRender.status === 'emitted') {
|
|
399
|
+
filesWritten.push('unit-economics.json');
|
|
400
|
+
checksums['unit-economics.json'] = computeChecksum(fs.readFileSync(preRender.manifestPath, 'utf-8'));
|
|
401
|
+
bytesWritten += fs.statSync(preRender.manifestPath).size;
|
|
402
|
+
// Mirror to unit-economics.preview.json for the reconciler.
|
|
403
|
+
const previewMirrorPath = path.join(runDir, 'unit-economics.preview.json');
|
|
404
|
+
const previewContent = JSON.stringify(preRender.manifest, null, 2) + '\n';
|
|
405
|
+
atomicWriteFile(previewMirrorPath, previewContent);
|
|
406
|
+
filesWritten.push('unit-economics.preview.json');
|
|
407
|
+
checksums['unit-economics.preview.json'] = computeChecksum(previewContent);
|
|
408
|
+
bytesWritten += Buffer.byteLength(previewContent, 'utf-8');
|
|
409
|
+
process.stderr.write(`[pipeline-072] Pre-render emitted unit-economics.json: sector=${preRender.metrics.sector} ` +
|
|
410
|
+
`pilot=$${preRender.metrics.annualMeasuredSavingsUsd.toLocaleString()}/yr ` +
|
|
411
|
+
`enterprise=$${preRender.metrics.annualExtrapolatedSavingsUsd.toLocaleString()}/yr\n`);
|
|
412
|
+
}
|
|
413
|
+
else {
|
|
414
|
+
process.stderr.write(`[pipeline-072] Pre-render skipped: ${preRender.reason}` +
|
|
415
|
+
(preRender.detail ? ` (${preRender.detail})` : '') + '\n');
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
catch (err) {
|
|
419
|
+
// Pre-render is non-fatal — renderers fall back to ADR-066 tier-3.
|
|
420
|
+
process.stderr.write(`[pipeline-072] Pre-render threw unexpectedly: ${err instanceof Error ? err.message : String(err)}\n`);
|
|
421
|
+
}
|
|
376
422
|
// 4. executive-summary.md
|
|
377
423
|
const execSummary = renderExecutiveSummary(input.query, enrichedResult, platformResults);
|
|
378
424
|
const execPath = path.join(runDir, 'executive-summary.md');
|
|
@@ -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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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulation-renderers.d.ts","sourceRoot":"","sources":["../../src/synthesis/simulation-renderers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"simulation-renderers.d.ts","sourceRoot":"","sources":["../../src/synthesis/simulation-renderers.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,8 +14,10 @@
|
|
|
14
14
|
* permitted I/O path and never throws.
|
|
15
15
|
*/
|
|
16
16
|
import { loadUnitEconomics, buildFinancialModelFromUnitEconomics, enforceManifestConsistency, } from './unit-economics-loader.js';
|
|
17
|
+
import { fcvTag, countFcvTags } from './financial-claim-extractor.js';
|
|
17
18
|
import { classifyLaborIntensity, isLaborIntensive, workforceRiskTemplate, workforceRaciTemplate, workforceSensitivityRow, estimateWorkforceExposure, } from './domain-labor-classifier.js';
|
|
18
19
|
import { populateConsensusSnapshot, consensusBanner, consensusOpeningParagraph, whyNotMoreConfidentSection, consensusGate, analyticalUncertaintyRisk, } from './consensus-tiers.js';
|
|
20
|
+
import { resolvePilotStart, projectDates, } from './roadmap-dates.js';
|
|
19
21
|
// ============================================================================
|
|
20
22
|
// Helper: safe extraction from unknown agent responses
|
|
21
23
|
// ============================================================================
|
|
@@ -1238,6 +1240,24 @@ function extractCoreDomainNoun(query) {
|
|
|
1238
1240
|
*/
|
|
1239
1241
|
const SYNTHESIS_BASE_RULES = `You are a senior partner at McKinsey & Company rewriting an enterprise decision document.
|
|
1240
1242
|
|
|
1243
|
+
🛑 CRITICAL — PRESERVE HTML COMMENT TAGS (ADR-PIPELINE-073)
|
|
1244
|
+
|
|
1245
|
+
The skeleton document contains HTML comment tags like
|
|
1246
|
+
<!-- fcv:kind=investment scope=pilot doc=decision-memo -->
|
|
1247
|
+
These are financial consistency tags. You MUST:
|
|
1248
|
+
|
|
1249
|
+
1. NEVER remove or modify any <!-- fcv:... --> tag
|
|
1250
|
+
2. NEVER move a tag away from the money figure it precedes
|
|
1251
|
+
3. NEVER introduce a money figure without a preceding tag
|
|
1252
|
+
4. If you rewrite a section, keep every tag attached to its rewritten figure
|
|
1253
|
+
5. If you split a figure into two, duplicate the tag so each resulting line
|
|
1254
|
+
has its own tag
|
|
1255
|
+
6. NEVER change a tag's doc= value — it must match the document type you
|
|
1256
|
+
are rewriting (executive-summary / decision-memo / financial-analysis)
|
|
1257
|
+
|
|
1258
|
+
These tags drive a downstream validator. If you remove or misplace them,
|
|
1259
|
+
the pipeline will discard your output and fall back to the skeleton.
|
|
1260
|
+
|
|
1241
1261
|
ABSOLUTE RULES — violating any of these means the document fails:
|
|
1242
1262
|
1. Lead with the recommendation and quantified impact (Pyramid Principle)
|
|
1243
1263
|
2. Every financial figure MUST show its derivation (unit × rate × volume = total)
|
|
@@ -1250,7 +1270,7 @@ ABSOLUTE RULES — violating any of these means the document fails:
|
|
|
1250
1270
|
9. No sentence fragments, no echoing the user's query, no template placeholders
|
|
1251
1271
|
10. Every paragraph must add insight or evidence, not just rearrange data points
|
|
1252
1272
|
|
|
1253
|
-
PRESERVE the markdown structure (headings, tables, bullet points) but REWRITE the prose.
|
|
1273
|
+
PRESERVE the markdown structure (headings, tables, bullet points, HTML comments) but REWRITE the prose.
|
|
1254
1274
|
Do NOT change financial figures — keep the same numbers but improve how they're presented and justified.
|
|
1255
1275
|
Output ONLY the rewritten document — no preamble, no commentary.`;
|
|
1256
1276
|
const SYNTHESIS_TYPE_INSTRUCTIONS = {
|
|
@@ -1294,6 +1314,11 @@ export async function synthesizeExecutiveDocument(skeleton, query, documentType,
|
|
|
1294
1314
|
'',
|
|
1295
1315
|
`DOCUMENT TO REWRITE:\n${skeleton}`,
|
|
1296
1316
|
].filter(Boolean).join('\n');
|
|
1317
|
+
// ADR-PIPELINE-073: tag-survival checking. We count fcv tags in the
|
|
1318
|
+
// skeleton before LLM synthesis and require the output to preserve the
|
|
1319
|
+
// same count. Any LLM output that drops a tag gets discarded — fall
|
|
1320
|
+
// back to the skeleton rather than shipping an unlabeled document.
|
|
1321
|
+
const skeletonTagCount = countFcvTags(skeleton);
|
|
1297
1322
|
// Tier 1: Claude binary (uses user's Claude subscription, no API key needed)
|
|
1298
1323
|
try {
|
|
1299
1324
|
const { execSync } = await import('node:child_process');
|
|
@@ -1305,8 +1330,17 @@ export async function synthesizeExecutiveDocument(skeleton, query, documentType,
|
|
|
1305
1330
|
try {
|
|
1306
1331
|
const result = execSync(`${claudeBin} --print < "${tmpFile}"`, { encoding: 'utf-8', timeout: 90_000, maxBuffer: 1_000_000, shell: '/bin/sh' });
|
|
1307
1332
|
if (result && result.trim().length > skeleton.length * 0.3) {
|
|
1308
|
-
|
|
1309
|
-
|
|
1333
|
+
const trimmed = result.trim();
|
|
1334
|
+
const synthTagCount = countFcvTags(trimmed);
|
|
1335
|
+
if (synthTagCount < skeletonTagCount) {
|
|
1336
|
+
process.stderr.write(`[exec-docs] ADR-073 tag survival check FAILED for ${documentType} ` +
|
|
1337
|
+
`(skeleton=${skeletonTagCount} tags, synthesized=${synthTagCount}) — ` +
|
|
1338
|
+
`discarding LLM output, using skeleton\n`);
|
|
1339
|
+
return skeleton;
|
|
1340
|
+
}
|
|
1341
|
+
process.stderr.write(`[exec-docs] LLM synthesis succeeded for ${documentType} ` +
|
|
1342
|
+
`(${trimmed.length} chars, ${synthTagCount} fcv tags preserved)\n`);
|
|
1343
|
+
return trimmed;
|
|
1310
1344
|
}
|
|
1311
1345
|
}
|
|
1312
1346
|
finally {
|
|
@@ -1342,7 +1376,16 @@ export async function synthesizeExecutiveDocument(skeleton, query, documentType,
|
|
|
1342
1376
|
const parsed = JSON.parse(result);
|
|
1343
1377
|
const text = parsed?.content?.[0]?.text;
|
|
1344
1378
|
if (text && text.length > skeleton.length * 0.3) {
|
|
1345
|
-
|
|
1379
|
+
// ADR-PIPELINE-073: tag-survival check on the API path too.
|
|
1380
|
+
const synthTagCount = countFcvTags(text);
|
|
1381
|
+
if (synthTagCount < skeletonTagCount) {
|
|
1382
|
+
process.stderr.write(`[exec-docs] ADR-073 tag survival check FAILED for ${documentType} ` +
|
|
1383
|
+
`(skeleton=${skeletonTagCount}, synthesized=${synthTagCount}) — ` +
|
|
1384
|
+
`discarding API output, using skeleton\n`);
|
|
1385
|
+
return skeleton;
|
|
1386
|
+
}
|
|
1387
|
+
process.stderr.write(`[exec-docs] API synthesis succeeded for ${documentType} ` +
|
|
1388
|
+
`(${text.length} chars, ${synthTagCount} fcv tags preserved)\n`);
|
|
1346
1389
|
return text;
|
|
1347
1390
|
}
|
|
1348
1391
|
}
|
|
@@ -1404,15 +1447,22 @@ export function renderExecutiveSummary(query, simulationResult, platformResults)
|
|
|
1404
1447
|
lines.push('', opening);
|
|
1405
1448
|
}
|
|
1406
1449
|
if (fin.hasData) {
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
1450
|
+
// ADR-PIPELINE-073: split the impact line into per-metric bullets so
|
|
1451
|
+
// each gets its own authoritative fcv tag. One tag per line; the
|
|
1452
|
+
// extractor reads the inline tag as the kind/scope of the first money
|
|
1453
|
+
// match on the line.
|
|
1454
|
+
if (fin.budget || fin.payback || fin.npv) {
|
|
1455
|
+
lines.push('Projected impact:');
|
|
1456
|
+
if (fin.budget) {
|
|
1457
|
+
lines.push(`- ${fcvTag('investment', 'full-program', 'executive-summary')} ${fin.budget} investment`);
|
|
1458
|
+
}
|
|
1459
|
+
if (fin.payback) {
|
|
1460
|
+
lines.push(`- ${fcvTag('timeline', 'full-program', 'executive-summary')} ${fin.payback} payback`);
|
|
1461
|
+
}
|
|
1462
|
+
if (fin.npv) {
|
|
1463
|
+
lines.push(`- ${fcvTag('npv', 'full-program', 'executive-summary')} ${fin.npv} 5-year NPV`);
|
|
1464
|
+
}
|
|
1465
|
+
lines.push('');
|
|
1416
1466
|
}
|
|
1417
1467
|
}
|
|
1418
1468
|
// ADR-PIPELINE-025 §4: Success probability with domain-aware decomposition
|
|
@@ -1474,21 +1524,25 @@ export function renderExecutiveSummary(query, simulationResult, platformResults)
|
|
|
1474
1524
|
}
|
|
1475
1525
|
lines.push('');
|
|
1476
1526
|
// Financial Impact
|
|
1527
|
+
// ADR-PIPELINE-073: every money cell gets an inline fcv tag so FCR-011
|
|
1528
|
+
// doesn't fire on the rendered output. All rows here describe the
|
|
1529
|
+
// program-level figures (Total Investment, 5-Year NPV, etc.) so they
|
|
1530
|
+
// carry scope=full-program.
|
|
1477
1531
|
if (fin.hasData) {
|
|
1478
1532
|
lines.push('## Financial Impact', '');
|
|
1479
1533
|
lines.push('| Metric | Value |', '|--------|-------|');
|
|
1480
1534
|
if (fin.budget)
|
|
1481
|
-
lines.push(`| Total Investment | ${fin.budget} |`);
|
|
1535
|
+
lines.push(`| Total Investment | ${fcvTag('investment', 'full-program', 'executive-summary')} ${fin.budget} |`);
|
|
1482
1536
|
if (fin.roi)
|
|
1483
|
-
lines.push(`| Expected ROI | ${fin.roi} |`);
|
|
1537
|
+
lines.push(`| Expected ROI | ${fcvTag('roi', 'full-program', 'executive-summary')} ${fin.roi} |`);
|
|
1484
1538
|
if (fin.npv)
|
|
1485
|
-
lines.push(`| 5-Year NPV | ${fin.npv} |`);
|
|
1539
|
+
lines.push(`| 5-Year NPV | ${fcvTag('npv', 'full-program', 'executive-summary')} ${fin.npv} |`);
|
|
1486
1540
|
if (fin.payback)
|
|
1487
|
-
lines.push(`| Payback Period | ${fin.payback} |`);
|
|
1541
|
+
lines.push(`| Payback Period | ${fcvTag('timeline', 'full-program', 'executive-summary')} ${fin.payback} |`);
|
|
1488
1542
|
if (fin.revenue)
|
|
1489
|
-
lines.push(`| Revenue Impact | ${fin.revenue} |`);
|
|
1543
|
+
lines.push(`| Revenue Impact | ${fcvTag('savings', 'full-program', 'executive-summary')} ${fin.revenue} |`);
|
|
1490
1544
|
if (fin.costSavings)
|
|
1491
|
-
lines.push(`| Cost Savings | ${fin.costSavings} |`);
|
|
1545
|
+
lines.push(`| Cost Savings | ${fcvTag('savings', 'full-program', 'executive-summary')} ${fin.costSavings} |`);
|
|
1492
1546
|
lines.push('');
|
|
1493
1547
|
}
|
|
1494
1548
|
// Risk Profile — never empty
|
|
@@ -1626,23 +1680,28 @@ export function renderDecisionMemo(query, simulationResult, platformResults) {
|
|
|
1626
1680
|
const fmt = (n) => n >= 1_000_000 ? `$${(n / 1_000_000).toFixed(1)}M` : `$${(n / 1000).toFixed(0)}K`;
|
|
1627
1681
|
pilotBudget = `${fmt(pilotVal)} - ${fmt(pilotVal * 1.5)}`;
|
|
1628
1682
|
}
|
|
1629
|
-
|
|
1630
|
-
//
|
|
1683
|
+
// ADR-PIPELINE-073: Options Considered rows carry distinct scope labels —
|
|
1684
|
+
// row A is the pilot, row B is the full program, row C has a savings
|
|
1685
|
+
// figure scoped to full-program. Each row gets an inline fcv tag so
|
|
1686
|
+
// FCR-001/003 can cross-check them against the executive summary.
|
|
1687
|
+
lines.push(`| **A. Scoped Pilot** | Validate with subset of data and ${extracted.domain_entities.slice(0, 2).join(', ') || 'core entities'} | ${fcvTag('investment', 'pilot', 'decision-memo')} ${pilotBudget} | 8-12 weeks | Low | **Recommended** |`, `| **B. Full Deployment** | Enterprise-wide rollout across all ${extracted.systems.length > 0 ? extracted.systems.join(', ') : 'systems'} | ${fcvTag('investment', 'full-program', 'decision-memo')} ${fullBudget} | ${safeString(simData, 'timeline_estimate') || '16-24 weeks'} | Medium | After pilot validation |`, `| **C. Do Nothing** | Continue with manual processes | $0 upfront | N/A | High | Not recommended — ${fin.costSavings ? fcvTag('savings', 'full-program', 'decision-memo') + ' ' + fin.costSavings + ' annual waste continues' : fin.revenue ? fcvTag('savings', 'full-program', 'decision-memo') + ' ' + fin.revenue + ' in annual savings foregone' : 'costs compound without intervention'} |`, '');
|
|
1688
|
+
// Financial Impact — ADR-PIPELINE-073: every row gets an inline fcv tag
|
|
1689
|
+
// with scope=full-program (the table describes the overall program cost).
|
|
1631
1690
|
lines.push('## Financial Impact', '');
|
|
1632
1691
|
if (fin.hasData) {
|
|
1633
1692
|
lines.push('| Metric | Value |', '|--------|-------|');
|
|
1634
1693
|
if (fin.budget)
|
|
1635
|
-
lines.push(`| Total Investment | ${fin.budget} |`);
|
|
1694
|
+
lines.push(`| Total Investment | ${fcvTag('investment', 'full-program', 'decision-memo')} ${fin.budget} |`);
|
|
1636
1695
|
if (fin.roi)
|
|
1637
|
-
lines.push(`| Expected ROI | ${fin.roi} |`);
|
|
1696
|
+
lines.push(`| Expected ROI | ${fcvTag('roi', 'full-program', 'decision-memo')} ${fin.roi} |`);
|
|
1638
1697
|
if (fin.npv)
|
|
1639
|
-
lines.push(`| 5-Year NPV | ${fin.npv} |`);
|
|
1698
|
+
lines.push(`| 5-Year NPV | ${fcvTag('npv', 'full-program', 'decision-memo')} ${fin.npv} |`);
|
|
1640
1699
|
if (fin.payback)
|
|
1641
|
-
lines.push(`| Payback Period | ${fin.payback} |`);
|
|
1700
|
+
lines.push(`| Payback Period | ${fcvTag('timeline', 'full-program', 'decision-memo')} ${fin.payback} |`);
|
|
1642
1701
|
if (fin.revenue)
|
|
1643
|
-
lines.push(`| Revenue Impact | ${fin.revenue} |`);
|
|
1702
|
+
lines.push(`| Revenue Impact | ${fcvTag('savings', 'full-program', 'decision-memo')} ${fin.revenue} |`);
|
|
1644
1703
|
if (fin.costSavings)
|
|
1645
|
-
lines.push(`| Cost Savings | ${fin.costSavings} |`);
|
|
1704
|
+
lines.push(`| Cost Savings | ${fcvTag('savings', 'full-program', 'decision-memo')} ${fin.costSavings} |`);
|
|
1646
1705
|
lines.push('');
|
|
1647
1706
|
}
|
|
1648
1707
|
else {
|
|
@@ -3001,6 +3060,40 @@ export function buildRoadmapArtifact(query, simulationResult, platformResults) {
|
|
|
3001
3060
|
// ADR-PIPELINE-071: Week-4 consensus gate on contested runs.
|
|
3002
3061
|
const roadmapConsensus = populateConsensusSnapshot(simulationResult, platformResults);
|
|
3003
3062
|
const consensusGateInfo = consensusGate(roadmapConsensus);
|
|
3063
|
+
// ADR-PIPELINE-079: Resolve pilot start date and project absolute dates
|
|
3064
|
+
// onto every phase + gate so the roadmap anchors to real calendar dates.
|
|
3065
|
+
const pilotStart = resolvePilotStart(query, null, null);
|
|
3066
|
+
const { datedPhases, datedGates } = projectDates(pilotStart.startDate, defaultPhases.map(p => ({
|
|
3067
|
+
id: p['id'] ?? 'phase',
|
|
3068
|
+
name: p['name'] ?? 'Phase',
|
|
3069
|
+
duration: p['duration'] ?? '3 weeks',
|
|
3070
|
+
})));
|
|
3071
|
+
// Enrich the default phases with absolute dates
|
|
3072
|
+
const enrichedPhases = defaultPhases.map((phase, i) => {
|
|
3073
|
+
const dated = datedPhases[i];
|
|
3074
|
+
if (!dated)
|
|
3075
|
+
return phase;
|
|
3076
|
+
return {
|
|
3077
|
+
...phase,
|
|
3078
|
+
startDate: dated.startDate,
|
|
3079
|
+
endDate: dated.endDate,
|
|
3080
|
+
durationWeeks: dated.durationWeeks,
|
|
3081
|
+
};
|
|
3082
|
+
});
|
|
3083
|
+
// Enrich the phase gates with absolute dates
|
|
3084
|
+
const gates = buildPhaseGates(query, extracted, primarySystem);
|
|
3085
|
+
const enrichedGates = gates.map((gate) => {
|
|
3086
|
+
const afterPhase = gate.after_phase;
|
|
3087
|
+
const datedGate = datedGates.find(g => g.afterPhase === afterPhase);
|
|
3088
|
+
return {
|
|
3089
|
+
after_phase: gate.after_phase,
|
|
3090
|
+
gate: gate.gate,
|
|
3091
|
+
criteria: gate.criteria,
|
|
3092
|
+
decision_authority: gate.decision_authority,
|
|
3093
|
+
overall_decision: gate.overall_decision,
|
|
3094
|
+
...(datedGate ? { gate_date: datedGate.gateDate } : {}),
|
|
3095
|
+
};
|
|
3096
|
+
});
|
|
3004
3097
|
return {
|
|
3005
3098
|
metadata: {
|
|
3006
3099
|
title: `Roadmap: ${query}`,
|
|
@@ -3009,7 +3102,13 @@ export function buildRoadmapArtifact(query, simulationResult, platformResults) {
|
|
|
3009
3102
|
estimated_duration: timeline,
|
|
3010
3103
|
status: 'draft',
|
|
3011
3104
|
},
|
|
3012
|
-
|
|
3105
|
+
// ADR-PIPELINE-079: absolute pilot start date with source metadata
|
|
3106
|
+
pilot_start: {
|
|
3107
|
+
date: pilotStart.startDate,
|
|
3108
|
+
source: pilotStart.source,
|
|
3109
|
+
reasoning: pilotStart.reasoning,
|
|
3110
|
+
},
|
|
3111
|
+
phases: enrichedPhases,
|
|
3013
3112
|
success_criteria: safeArray(simData, 'recommendations').map(r => String(r)),
|
|
3014
3113
|
// ADR-PIPELINE-024: Always include domain-appropriate risks
|
|
3015
3114
|
risk_factors: generateDomainRisks(query, extracted).map(r => ({
|
|
@@ -3027,8 +3126,7 @@ export function buildRoadmapArtifact(query, simulationResult, platformResults) {
|
|
|
3027
3126
|
implementation_plan: extractAgentData(platformResults, 'copilot', 'planner'),
|
|
3028
3127
|
resource_requirements: extractAgentData(platformResults, 'costops', 'budget'),
|
|
3029
3128
|
// ADR-PIPELINE-061: Quantified phase gate criteria with derived decision authority
|
|
3030
|
-
|
|
3031
|
-
phase_gates: buildPhaseGates(query, extracted, primarySystem),
|
|
3129
|
+
phase_gates: enrichedGates,
|
|
3032
3130
|
// ADR-PIPELINE-071: Consensus tier metadata + Week-4 gate when contested.
|
|
3033
3131
|
consensus: {
|
|
3034
3132
|
tier: roadmapConsensus.tier,
|
|
@@ -3425,7 +3523,10 @@ export function renderFinancialAnalysis(query, simulationResult, platformResults
|
|
|
3425
3523
|
lines.push('> ⚠️ **Unit economics consistency warnings:**', ...manifestWarnings.map(v => `> - ${v}`), '');
|
|
3426
3524
|
}
|
|
3427
3525
|
}
|
|
3428
|
-
|
|
3526
|
+
// ADR-PIPELINE-073: tag every row in the financial-analysis Investment
|
|
3527
|
+
// Summary table with inline fcv comments. Kind-specific scopes so the
|
|
3528
|
+
// extractor + FCR-011 / FCR-012 see authoritative labels.
|
|
3529
|
+
lines.push('---', '', `## Investment Summary${fin.isEstimated ? ' (Estimated from Organization Profile)' : unitEconomicsSource === 'manifest' ? ' (from Prototype Unit Economics)' : ''}`, '', '| Metric | Value |', '|--------|-------|', `| Total Investment | ${fcvTag('investment', 'full-program', 'financial-analysis')} ${fin.budget} |`, `| Expected ROI | ${fcvTag('roi', 'full-program', 'financial-analysis')} ${fin.roi} |`, `| 5-Year NPV | ${fcvTag('npv', 'full-program', 'financial-analysis')} ${fin.npv} |`, `| Payback Period | ${fcvTag('timeline', 'full-program', 'financial-analysis')} ${fin.payback} |`, `| Revenue / Savings Impact | ${fcvTag('savings', 'full-program', 'financial-analysis')} ${fin.revenue || fin.costSavings} |`, '');
|
|
3429
3530
|
// ADR-PIPELINE-070: Workforce exposure block when intensity ≥ medium.
|
|
3430
3531
|
// Mandatory for hospitality/retail/fleet/healthcare/CRE/etc. — calls out
|
|
3431
3532
|
// role count, EMEA union exposure, change-mgmt budget, and reallocation
|
|
@@ -3532,9 +3633,13 @@ export function renderFinancialAnalysis(query, simulationResult, platformResults
|
|
|
3532
3633
|
pessCostStr = fmt(baseVal * 1.4);
|
|
3533
3634
|
}
|
|
3534
3635
|
}
|
|
3535
|
-
|
|
3536
|
-
|
|
3537
|
-
|
|
3636
|
+
// ADR-PIPELINE-073: tag scenario rows so they're not flagged as untagged
|
|
3637
|
+
// money figures. All three variants describe the full-program cost; the
|
|
3638
|
+
// variance is visible in the prose ("±20% cost variance"), not the scope.
|
|
3639
|
+
const scenarioTag = fcvTag('investment', 'full-program', 'financial-analysis');
|
|
3640
|
+
lines.push(`| **Base Case** | Plan executes as modeled | ${scenarioTag} ${baseCostStr} | ${fin.roi || 'Projected'} | 50% |`);
|
|
3641
|
+
lines.push(`| Optimistic | Faster adoption, lower integration costs | ${scenarioTag} ${optCostStr} | ${fin.roi ? fin.roi.replace(/\d+/, m => String(Math.round(parseInt(m) * 1.3))) : 'Above base'} | 25% |`);
|
|
3642
|
+
lines.push(`| Pessimistic | Slower adoption, scope growth | ${scenarioTag} ${pessCostStr} | ${fin.roi ? fin.roi.replace(/\d+/, m => String(Math.round(parseInt(m) * 0.6))) : 'Below base'} | 25% |`);
|
|
3538
3643
|
lines.push('', '*Scenario analysis assumes ±20% cost variance and ±30% timeline variance from base case.*', '');
|
|
3539
3644
|
// ADR-PIPELINE-063: Multi-variable sensitivity tornado
|
|
3540
3645
|
// Implements ADR-PIPELINE-057 §1 — replaces the old single-variable loop
|