@llm-dev-ops/agentics-cli 2.6.0 → 2.7.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.
- package/dist/cli/index.js +30 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/mcp/agent-event-parser.d.ts +53 -0
- package/dist/mcp/agent-event-parser.d.ts.map +1 -0
- package/dist/mcp/agent-event-parser.js +159 -0
- package/dist/mcp/agent-event-parser.js.map +1 -0
- package/dist/mcp/mcp-server.js +34 -15
- package/dist/mcp/mcp-server.js.map +1 -1
- package/dist/pipeline/auto-chain.d.ts +168 -0
- package/dist/pipeline/auto-chain.d.ts.map +1 -1
- package/dist/pipeline/auto-chain.js +1854 -880
- package/dist/pipeline/auto-chain.js.map +1 -1
- package/dist/pipeline/enterprise/artifact-renderers.d.ts +30 -0
- package/dist/pipeline/enterprise/artifact-renderers.d.ts.map +1 -1
- package/dist/pipeline/enterprise/artifact-renderers.js +129 -1
- package/dist/pipeline/enterprise/artifact-renderers.js.map +1 -1
- package/dist/pipeline/gate/phase-dependency-gate.d.ts +93 -0
- package/dist/pipeline/gate/phase-dependency-gate.d.ts.map +1 -0
- package/dist/pipeline/gate/phase-dependency-gate.js +349 -0
- package/dist/pipeline/gate/phase-dependency-gate.js.map +1 -0
- package/dist/pipeline/phase3-sparc/phase3-sparc-coordinator.d.ts.map +1 -1
- package/dist/pipeline/phase3-sparc/phase3-sparc-coordinator.js +280 -40
- package/dist/pipeline/phase3-sparc/phase3-sparc-coordinator.js.map +1 -1
- package/dist/pipeline/phase4-adrs/phase4-adrs-coordinator.d.ts.map +1 -1
- package/dist/pipeline/phase4-adrs/phase4-adrs-coordinator.js +363 -87
- package/dist/pipeline/phase4-adrs/phase4-adrs-coordinator.js.map +1 -1
- package/dist/pipeline/phases/prompt-generator.d.ts.map +1 -1
- package/dist/pipeline/phases/prompt-generator.js +95 -6
- package/dist/pipeline/phases/prompt-generator.js.map +1 -1
- package/dist/pipeline/ruflo-phase-executor.d.ts +124 -1
- package/dist/pipeline/ruflo-phase-executor.d.ts.map +1 -1
- package/dist/pipeline/ruflo-phase-executor.js +319 -4
- package/dist/pipeline/ruflo-phase-executor.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ADR-PIPELINE-090: stderr-line → AgentEvent parser for the MCP wrapper.
|
|
3
|
+
*
|
|
4
|
+
* Extracted into its own module so unit tests can exercise the parsing
|
|
5
|
+
* without importing src/mcp/mcp-server.ts (which attaches stdin/stdout
|
|
6
|
+
* listeners at module load time — inappropriate for jest).
|
|
7
|
+
*
|
|
8
|
+
* The grammars recognized here are the actual log prefixes emitted by:
|
|
9
|
+
* - src/commands/agents.ts (ruvector simulation retry + [local] fallbacks)
|
|
10
|
+
* - src/pipeline/swarm-orchestrator.ts ([AGENTICS] [OK|FAIL|FB|!!] ...)
|
|
11
|
+
* - src/pipeline/auto-chain.ts (>> Phase N: ...)
|
|
12
|
+
* - src/pipeline/phase2-preflight.ts (via swarm-orchestrator — [PREFLIGHT] ...)
|
|
13
|
+
* - ADR-089 verdict line (Phase 1 verdict: ...)
|
|
14
|
+
*
|
|
15
|
+
* If you add a new log prefix at one of those sites, add a matching
|
|
16
|
+
* parser branch here so the event reaches the Agent Invocation Report
|
|
17
|
+
* instead of being silently dropped.
|
|
18
|
+
*/
|
|
19
|
+
/**
|
|
20
|
+
* Try to parse a single stderr line into an AgentEvent. Returns null for
|
|
21
|
+
* lines that aren't agent-relevant.
|
|
22
|
+
*
|
|
23
|
+
* `state.phase` is mutated when a phase header is seen, so subsequent
|
|
24
|
+
* events get tagged with the current phase. Callers pass the same state
|
|
25
|
+
* across calls for a single pipeline run.
|
|
26
|
+
*/
|
|
27
|
+
export function parseAgentEvent(line, state) {
|
|
28
|
+
const clean = line.replace(/\x1b\[[0-9;]*m/g, '').trim();
|
|
29
|
+
if (!clean)
|
|
30
|
+
return null;
|
|
31
|
+
let m = clean.match(/^>>\s*Phase\s+(\d+):\s*(.+?)\s*$/);
|
|
32
|
+
if (m) {
|
|
33
|
+
state.phase = Number(m[1]);
|
|
34
|
+
return { phase: state.phase, kind: 'phase-header', role: m[2], raw: clean };
|
|
35
|
+
}
|
|
36
|
+
if (/^\[RUVECTOR\]\s+Running simulation/i.test(clean)) {
|
|
37
|
+
return { phase: state.phase, kind: 'sim-start', domain: 'simulator', agent: 'enterprise', raw: clean };
|
|
38
|
+
}
|
|
39
|
+
if (/^\[RUVECTOR\]\s+Simulation succeeded/i.test(clean)) {
|
|
40
|
+
return { phase: state.phase, kind: 'sim-ok', domain: 'simulator', agent: 'enterprise', raw: clean };
|
|
41
|
+
}
|
|
42
|
+
if (/^\[RUVECTOR\]\s+(Retry|Attempt\s+\d+)/i.test(clean)) {
|
|
43
|
+
return { phase: state.phase, kind: 'sim-retry', domain: 'simulator', agent: 'enterprise', reason: clean, raw: clean };
|
|
44
|
+
}
|
|
45
|
+
if (/^\[RUVECTOR\]\s+(Simulation failed|Terminal error|Non-retryable|Unrecognized error)/i.test(clean)) {
|
|
46
|
+
return { phase: state.phase, kind: 'sim-fail', domain: 'simulator', agent: 'enterprise', reason: clean, raw: clean };
|
|
47
|
+
}
|
|
48
|
+
// [AGENTICS] [OK|FAIL|FB|!!] domain/agent (role) — Nms [suffix]
|
|
49
|
+
m = clean.match(/^\[AGENTICS\]\s+\[(OK|FAIL|FB|!!)\]\s+([^/]+)\/(\S+)\s*\(([^)]+)\)\s*—\s*(\d+)ms(.*)$/);
|
|
50
|
+
if (m) {
|
|
51
|
+
const status = m[1];
|
|
52
|
+
const domain = m[2];
|
|
53
|
+
const agent = m[3];
|
|
54
|
+
const role = m[4];
|
|
55
|
+
const timingMs = Number(m[5]);
|
|
56
|
+
const suffix = (m[6] ?? '').trim();
|
|
57
|
+
const kind = status === 'OK' ? 'ok'
|
|
58
|
+
: status === 'FB' ? 'fallback'
|
|
59
|
+
: 'fail';
|
|
60
|
+
return { phase: state.phase, kind, domain, agent, role, timingMs, reason: suffix || undefined, raw: clean };
|
|
61
|
+
}
|
|
62
|
+
// [local] domain/agent using local compute[: reason] or (reason)
|
|
63
|
+
m = clean.match(/^\[local\]\s+([^/]+)\/(\S+)\s+using local compute(?:\s*(?::|\()\s*(.+?)\)?)?\s*$/);
|
|
64
|
+
if (m) {
|
|
65
|
+
return {
|
|
66
|
+
phase: state.phase,
|
|
67
|
+
kind: 'fallback',
|
|
68
|
+
domain: m[1],
|
|
69
|
+
agent: m[2],
|
|
70
|
+
reason: m[3]?.trim(),
|
|
71
|
+
raw: clean,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
if (/^\[PREFLIGHT\]/i.test(clean)) {
|
|
75
|
+
return { phase: state.phase, kind: 'preflight', reason: clean, raw: clean };
|
|
76
|
+
}
|
|
77
|
+
m = clean.match(/^Phase\s+1\s+verdict:\s+(HEALTHY|DEGRADED|FAILED)\s*(?:—\s*(.+))?$/i);
|
|
78
|
+
if (m) {
|
|
79
|
+
return { phase: 1, kind: 'verdict', role: m[1], reason: m[2], raw: clean };
|
|
80
|
+
}
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* One-line human-readable render of an AgentEvent for MCP progress
|
|
85
|
+
* notifications. Kept deliberately short so Claude Code's notification
|
|
86
|
+
* area doesn't truncate the useful part.
|
|
87
|
+
*/
|
|
88
|
+
export function formatAgentEventLive(ev) {
|
|
89
|
+
const tag = ev.phase > 0 ? `P${ev.phase}` : ' ';
|
|
90
|
+
const who = ev.domain && ev.agent ? `${ev.domain}/${ev.agent}` : '';
|
|
91
|
+
const time = ev.timingMs != null ? ` (${ev.timingMs}ms)` : '';
|
|
92
|
+
switch (ev.kind) {
|
|
93
|
+
case 'phase-header': return `${tag} ▶ Phase ${ev.phase}: ${ev.role ?? ''}`;
|
|
94
|
+
case 'sim-start': return `${tag} 🔄 simulator/enterprise — starting`;
|
|
95
|
+
case 'sim-ok': return `${tag} ✓ simulator/enterprise`;
|
|
96
|
+
case 'sim-retry': return `${tag} ⟳ simulator/enterprise — ${ev.reason?.slice(0, 100) ?? 'retrying'}`;
|
|
97
|
+
case 'sim-fail': return `${tag} ✗ simulator/enterprise — ${ev.reason?.slice(0, 100) ?? 'failed'}`;
|
|
98
|
+
case 'ok': return `${tag} ✓ ${who}${time}`;
|
|
99
|
+
case 'fail': return `${tag} ✗ ${who}${time}${ev.reason ? ' — ' + ev.reason.slice(0, 80) : ''}`;
|
|
100
|
+
case 'fallback': return `${tag} ⚠ ${who} — local fallback${ev.reason ? ' (' + ev.reason.slice(0, 80) + ')' : ''}`;
|
|
101
|
+
case 'preflight': return `${tag} 🔍 ${ev.reason?.replace(/^\[PREFLIGHT\]\s*/, '') ?? 'preflight'}`;
|
|
102
|
+
case 'verdict': return `${tag} 📋 Phase 1 verdict: ${ev.role}${ev.reason ? ' — ' + ev.reason : ''}`;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* End-of-run Agent Invocation Report. Grouped by phase; per-phase shows
|
|
107
|
+
* ok/fail/fallback counts then a per-agent table. Always appended to the
|
|
108
|
+
* tool response so the user has a written record regardless of whether
|
|
109
|
+
* live progress notifications were rendered.
|
|
110
|
+
*/
|
|
111
|
+
export function formatAgentReport(events, traceId) {
|
|
112
|
+
if (events.length === 0)
|
|
113
|
+
return '';
|
|
114
|
+
const lines = [];
|
|
115
|
+
lines.push('═══ Agent Invocation Report ═══');
|
|
116
|
+
if (traceId)
|
|
117
|
+
lines.push(`Trace: ${traceId}`);
|
|
118
|
+
lines.push('');
|
|
119
|
+
const byPhase = new Map();
|
|
120
|
+
for (const ev of events) {
|
|
121
|
+
if (!byPhase.has(ev.phase))
|
|
122
|
+
byPhase.set(ev.phase, []);
|
|
123
|
+
byPhase.get(ev.phase).push(ev);
|
|
124
|
+
}
|
|
125
|
+
const phases = [...byPhase.keys()].sort((a, b) => a - b);
|
|
126
|
+
for (const p of phases) {
|
|
127
|
+
const evs = byPhase.get(p);
|
|
128
|
+
const header = evs.find(e => e.kind === 'phase-header');
|
|
129
|
+
const label = header?.role ?? (p === 1 ? 'Simulation + graph-routed dispatch' : `Phase ${p}`);
|
|
130
|
+
lines.push(`Phase ${p}: ${label}`);
|
|
131
|
+
const ok = evs.filter(e => e.kind === 'ok' || e.kind === 'sim-ok').length;
|
|
132
|
+
const fail = evs.filter(e => e.kind === 'fail' || e.kind === 'sim-fail').length;
|
|
133
|
+
const fb = evs.filter(e => e.kind === 'fallback').length;
|
|
134
|
+
lines.push(` ${ok} ok · ${fail} fail · ${fb} local-fallback`);
|
|
135
|
+
const rows = evs.filter(e => e.kind === 'ok' || e.kind === 'fail' || e.kind === 'fallback' ||
|
|
136
|
+
e.kind === 'sim-ok' || e.kind === 'sim-fail');
|
|
137
|
+
for (const e of rows) {
|
|
138
|
+
const who = e.domain && e.agent ? `${e.domain}/${e.agent}` : '(unknown)';
|
|
139
|
+
const icon = e.kind === 'ok' || e.kind === 'sim-ok' ? '✓'
|
|
140
|
+
: e.kind === 'fallback' ? '⚠'
|
|
141
|
+
: '✗';
|
|
142
|
+
const time = e.timingMs != null ? `${e.timingMs}ms`.padStart(8) : ' -';
|
|
143
|
+
const source = e.kind === 'fallback' ? 'local' : (e.kind === 'fail' || e.kind === 'sim-fail' ? 'error' : 'cloud');
|
|
144
|
+
const note = e.reason ? ` — ${e.reason.slice(0, 100)}` : '';
|
|
145
|
+
lines.push(` ${icon} ${who.padEnd(40)} ${time} ${source}${note}`);
|
|
146
|
+
}
|
|
147
|
+
const verdict = evs.find(e => e.kind === 'verdict');
|
|
148
|
+
if (verdict) {
|
|
149
|
+
lines.push(` → ${verdict.role} — ${verdict.reason ?? ''}`);
|
|
150
|
+
}
|
|
151
|
+
const preflights = evs.filter(e => e.kind === 'preflight');
|
|
152
|
+
for (const pf of preflights) {
|
|
153
|
+
lines.push(` → ${pf.reason?.replace(/^\[PREFLIGHT\]\s*/, '') ?? ''}`);
|
|
154
|
+
}
|
|
155
|
+
lines.push('');
|
|
156
|
+
}
|
|
157
|
+
return lines.join('\n');
|
|
158
|
+
}
|
|
159
|
+
//# sourceMappingURL=agent-event-parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-event-parser.js","sourceRoot":"","sources":["../../src/mcp/agent-event-parser.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/mcp-server.js
CHANGED
|
@@ -631,10 +631,18 @@ function sendProgressNotification(progressToken, progress, total, message) {
|
|
|
631
631
|
};
|
|
632
632
|
process.stdout.write(JSON.stringify(notification) + '\n');
|
|
633
633
|
}
|
|
634
|
+
// ADR-PIPELINE-090: stderr parsing + event rendering lives in
|
|
635
|
+
// src/mcp/agent-event-parser.ts so it's testable without importing this
|
|
636
|
+
// self-executing module. We import the shapes/functions here.
|
|
637
|
+
import { parseAgentEvent, formatAgentEventLive, formatAgentReport } from './agent-event-parser.js';
|
|
634
638
|
/**
|
|
635
639
|
* Run a CLI command with streaming progress.
|
|
636
640
|
* Uses spawn instead of execFile so output lines are sent as MCP progress
|
|
637
641
|
* notifications in real-time rather than buffered until completion.
|
|
642
|
+
*
|
|
643
|
+
* ADR-PIPELINE-090: stderr lines are also parsed into AgentEvent[] which
|
|
644
|
+
* gets returned alongside stdout/stderr so the tool handler can render a
|
|
645
|
+
* structured "Agent Invocation Report" block in the final response.
|
|
638
646
|
*/
|
|
639
647
|
function runCLI(args, progressToken) {
|
|
640
648
|
return new Promise((resolve) => {
|
|
@@ -645,21 +653,17 @@ function runCLI(args, progressToken) {
|
|
|
645
653
|
let stdout = '';
|
|
646
654
|
let stderr = '';
|
|
647
655
|
let lineCount = 0;
|
|
656
|
+
const events = [];
|
|
657
|
+
const parseState = { phase: 1 }; // Phase 1 is default until we see a header
|
|
648
658
|
const processLine = (line) => {
|
|
649
|
-
|
|
650
|
-
if (!trimmed)
|
|
659
|
+
if (!line.trim())
|
|
651
660
|
return;
|
|
652
661
|
lineCount++;
|
|
653
|
-
|
|
654
|
-
if (
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|| /^\s*(─|━|═|▊)/.test(trimmed);
|
|
659
|
-
if (isProgressLine) {
|
|
660
|
-
// Strip ANSI codes for clean display
|
|
661
|
-
const clean = trimmed.replace(/\x1b\[[0-9;]*m/g, '');
|
|
662
|
-
sendProgressNotification(progressToken, lineCount, 0, clean);
|
|
662
|
+
const ev = parseAgentEvent(line, parseState);
|
|
663
|
+
if (ev) {
|
|
664
|
+
events.push(ev);
|
|
665
|
+
if (progressToken != null) {
|
|
666
|
+
sendProgressNotification(progressToken, lineCount, 0, formatAgentEventLive(ev));
|
|
663
667
|
}
|
|
664
668
|
}
|
|
665
669
|
};
|
|
@@ -688,7 +692,7 @@ function runCLI(args, progressToken) {
|
|
|
688
692
|
// Timeout after 2 hours — pipeline with ruflo SPARC generation takes 1-2 hours
|
|
689
693
|
const timer = setTimeout(() => {
|
|
690
694
|
child.kill('SIGTERM');
|
|
691
|
-
resolve({ stdout, stderr: stderr + '\n[TIMEOUT] Process exceeded 2 hour limit', code: 1 });
|
|
695
|
+
resolve({ stdout, stderr: stderr + '\n[TIMEOUT] Process exceeded 2 hour limit', code: 1, events });
|
|
692
696
|
}, 7_200_000);
|
|
693
697
|
child.on('close', (code) => {
|
|
694
698
|
clearTimeout(timer);
|
|
@@ -697,11 +701,11 @@ function runCLI(args, progressToken) {
|
|
|
697
701
|
processLine(stdoutPartial);
|
|
698
702
|
if (stderrPartial.trim())
|
|
699
703
|
processLine(stderrPartial);
|
|
700
|
-
resolve({ stdout, stderr, code: code ?? 0 });
|
|
704
|
+
resolve({ stdout, stderr, code: code ?? 0, events });
|
|
701
705
|
});
|
|
702
706
|
child.on('error', (err) => {
|
|
703
707
|
clearTimeout(timer);
|
|
704
|
-
resolve({ stdout, stderr: err.message, code: 1 });
|
|
708
|
+
resolve({ stdout, stderr: err.message, code: 1, events });
|
|
705
709
|
});
|
|
706
710
|
});
|
|
707
711
|
}
|
|
@@ -1026,6 +1030,21 @@ async function handleMessage(msg) {
|
|
|
1026
1030
|
' - Write code directly and sequentially',
|
|
1027
1031
|
].join('\n'),
|
|
1028
1032
|
});
|
|
1033
|
+
// ADR-PIPELINE-090: write the Agent Invocation Report as its own
|
|
1034
|
+
// content block so the user has a guaranteed record of which
|
|
1035
|
+
// agents were called and their outcome — even if the live
|
|
1036
|
+
// progress stream scrolled past or the UI didn't render every
|
|
1037
|
+
// notification. Parsed from the subprocess's stderr into
|
|
1038
|
+
// structured events by runCLI.
|
|
1039
|
+
const traceMatch = output.match(/AGENTICS_TRACE_ID=([^\s\n]+)/);
|
|
1040
|
+
const traceIdFromOutput = traceMatch ? traceMatch[1] : undefined;
|
|
1041
|
+
const agentReport = formatAgentReport(result.events, traceIdFromOutput);
|
|
1042
|
+
if (agentReport) {
|
|
1043
|
+
content.push({
|
|
1044
|
+
type: 'text',
|
|
1045
|
+
text: agentReport,
|
|
1046
|
+
});
|
|
1047
|
+
}
|
|
1029
1048
|
// Add cleaned pipeline output AFTER instructions (for reference, not as primary directive)
|
|
1030
1049
|
if (cleanedOutput.length > 50) {
|
|
1031
1050
|
content.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/mcp/mcp-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/mcp/mcp-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,8 @@
|
|
|
14
14
|
* Phase 6: ERP Surface Push (registration + project materialization)
|
|
15
15
|
*/
|
|
16
16
|
import { type ExecutionMode } from './execution-context.js';
|
|
17
|
+
import { type PrimaryPhaseExecutionResult } from './ruflo-phase-executor.js';
|
|
18
|
+
import { type PhaseId as GatePhaseId, type BlockedPhase } from './gate/phase-dependency-gate.js';
|
|
17
19
|
export interface AutoChainOptions {
|
|
18
20
|
readonly verbose?: boolean;
|
|
19
21
|
readonly outputDir?: string;
|
|
@@ -43,7 +45,43 @@ export interface AutoChainResult {
|
|
|
43
45
|
scenarioBranch?: string;
|
|
44
46
|
commitHash?: string;
|
|
45
47
|
githubUrl?: string;
|
|
48
|
+
/**
|
|
49
|
+
* ADR-PIPELINE-093 §Rule 3 — phases whose prerequisites were unreachable
|
|
50
|
+
* after Ruflo retry. Surfaces to `formatAutoChainForDisplay` as a final
|
|
51
|
+
* banner warning. Mirrors `manifest.json.blocked_phases` and
|
|
52
|
+
* `status.json.blocked_phases`; present (possibly `[]`) on every result
|
|
53
|
+
* so downstream consumers treat the shape as stable.
|
|
54
|
+
*/
|
|
55
|
+
blockedPhases?: Array<{
|
|
56
|
+
phase: string;
|
|
57
|
+
missing: ReadonlyArray<string>;
|
|
58
|
+
}>;
|
|
59
|
+
}
|
|
60
|
+
/** Canonical slot names in `.agentics/plans/`. */
|
|
61
|
+
export type PlanSlot = 'sparc' | 'adrs' | 'ddd' | 'tdd' | 'prompts' | 'implementation';
|
|
62
|
+
/** Per-slot promotion counts + MISSING detection. */
|
|
63
|
+
export interface PlanPromotionSummary {
|
|
64
|
+
readonly counts: Record<PlanSlot, number>;
|
|
65
|
+
readonly missing_slots: PlanSlot[];
|
|
66
|
+
readonly total_copied: number;
|
|
67
|
+
readonly total_skipped: number;
|
|
46
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* Shared table-driven promotion routine (ADR-PIPELINE-092, Rules 1–5).
|
|
71
|
+
*
|
|
72
|
+
* Walks `PLAN_SLOT_SOURCES` for every slot, picks the best source via
|
|
73
|
+
* `pickBestSourceForSlot`, promotes the source into the slot, then runs
|
|
74
|
+
* any additive sources on top. Emits the `[PLANS] promoted ...` stderr
|
|
75
|
+
* summary and one `[PLANS] MISSING <slot>` line per empty-and-unrecoverable
|
|
76
|
+
* slot. Returns the summary so callers (final safety-net call) can merge
|
|
77
|
+
* `planPromotion` into `manifest.json`.
|
|
78
|
+
*/
|
|
79
|
+
export declare function promotePlanningArtifacts(runDir: string, projectRoot: string): PlanPromotionSummary;
|
|
80
|
+
/**
|
|
81
|
+
* Merge the ADR-PIPELINE-092 `planPromotion` block into `runDir/manifest.json`.
|
|
82
|
+
* Read-modify-write pattern mirrors `writeExecutionBlockToManifest`.
|
|
83
|
+
*/
|
|
84
|
+
export declare function writePlanPromotionToManifest(runDir: string, summary: PlanPromotionSummary): void;
|
|
47
85
|
/**
|
|
48
86
|
* Copy whatever planning artifacts exist from ~/.agentics/runs/<traceId>/
|
|
49
87
|
* to .agentics/plans/ in the current working directory. Uses .agentics/plans/
|
|
@@ -234,7 +272,137 @@ export interface ScaffoldDuplicateFinding {
|
|
|
234
272
|
* Returns one finding per (file, export) pair.
|
|
235
273
|
*/
|
|
236
274
|
export declare function detectScaffoldDuplicates(projectRoot: string, owned?: readonly OwnedScaffoldModule[]): ScaffoldDuplicateFinding[];
|
|
275
|
+
export declare function copyPlanningArtifacts(runDir: string, targetRoot?: string): void;
|
|
237
276
|
export declare function executeAutoChain(traceId: string, options?: AutoChainOptions): Promise<AutoChainResult>;
|
|
277
|
+
/**
|
|
278
|
+
* Shape of a remote agent entry as recorded in the Phase 1 `manifest.json`.
|
|
279
|
+
* `status` is typically `"success" | "invoked"` for ok and anything else for
|
|
280
|
+
* errored (e.g., `"503"`, `"timeout"`, `"error"`). Mirrors the inline type in
|
|
281
|
+
* `printPhase1Summary`.
|
|
282
|
+
*/
|
|
283
|
+
export interface RemoteAgentInvocation {
|
|
284
|
+
readonly domain: string;
|
|
285
|
+
readonly agent: string;
|
|
286
|
+
readonly status: string;
|
|
287
|
+
}
|
|
288
|
+
/** Snapshot of the remote enrichment fleet taken from `manifest.agents_invoked`. */
|
|
289
|
+
export interface RemoteEnrichmentSnapshot {
|
|
290
|
+
readonly available: string[];
|
|
291
|
+
readonly errored: string[];
|
|
292
|
+
/** Raw entries from the manifest, kept for dossier context plumbing. */
|
|
293
|
+
readonly entries: RemoteAgentInvocation[];
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Read `manifest.agents_invoked` from the run dir and partition into
|
|
297
|
+
* successful vs errored remote enrichment agents. ADR-PIPELINE-091 §5.
|
|
298
|
+
*
|
|
299
|
+
* Treats `status === "success"` and `status === "invoked"` as available; any
|
|
300
|
+
* other status (including HTTP error codes, `"timeout"`, `"error"`) is
|
|
301
|
+
* counted as errored. Missing / unreadable manifest => empty lists.
|
|
302
|
+
*/
|
|
303
|
+
export declare function readRemoteEnrichmentSnapshot(runDir: string): RemoteEnrichmentSnapshot;
|
|
304
|
+
/**
|
|
305
|
+
* Build the `execution` block that ADR-PIPELINE-091 §5 writes back into
|
|
306
|
+
* `runDir/manifest.json`. Pure function so it can be unit-tested without
|
|
307
|
+
* spinning up the actual pipeline.
|
|
308
|
+
*/
|
|
309
|
+
export declare function computeExecutionBlock(rufloResults: ReadonlyArray<PrimaryPhaseExecutionResult | null | undefined>, enrichment: RemoteEnrichmentSnapshot): {
|
|
310
|
+
engineering_tier: 'ruflo-local' | 'template';
|
|
311
|
+
tier_counts: {
|
|
312
|
+
'ruflo-local': number;
|
|
313
|
+
template: number;
|
|
314
|
+
};
|
|
315
|
+
enrichment: {
|
|
316
|
+
remote_agents_available: string[];
|
|
317
|
+
remote_agents_errored: string[];
|
|
318
|
+
enrichment_depth_pct: number | null;
|
|
319
|
+
};
|
|
320
|
+
};
|
|
321
|
+
/**
|
|
322
|
+
* Merge the ADR-091 `execution` block into `runDir/manifest.json` in-place.
|
|
323
|
+
* Reads the existing manifest, sets `execution`, writes it back with the
|
|
324
|
+
* same mode/encoding convention used elsewhere in this file. Non-fatal on
|
|
325
|
+
* I/O or JSON errors — the pipeline continues if manifest merge fails.
|
|
326
|
+
*/
|
|
327
|
+
export declare function writeExecutionBlockToManifest(runDir: string, block: ReturnType<typeof computeExecutionBlock>): void;
|
|
328
|
+
/**
|
|
329
|
+
* Per-phase gate outcomes accumulated across the auto-chain execution.
|
|
330
|
+
* Populated as each phase's gate runs, then flushed to `manifest.json`
|
|
331
|
+
* at pipeline completion so downstream consumers (MCP `agentics-status`
|
|
332
|
+
* tool, final banner) see a stable schema.
|
|
333
|
+
*/
|
|
334
|
+
interface GateAccumulator {
|
|
335
|
+
readonly blocked: BlockedPhase[];
|
|
336
|
+
/** per-phase list of input paths that the gate produced via Ruflo */
|
|
337
|
+
readonly producedByGate: Record<GatePhaseId, string[]>;
|
|
338
|
+
/** optional scaffold-language skip record (Rule 5) */
|
|
339
|
+
phase5bSkipped: {
|
|
340
|
+
reason: string;
|
|
341
|
+
detected: string;
|
|
342
|
+
template: string;
|
|
343
|
+
} | null;
|
|
344
|
+
}
|
|
345
|
+
/**
|
|
346
|
+
* ADR-PIPELINE-093 — merge `blocked_phases`, per-phase
|
|
347
|
+
* `phase{N}_inputs_produced_by_gate`, and `phase5b_skipped` into
|
|
348
|
+
* `runDir/manifest.json`. Read-modify-write pattern mirrors
|
|
349
|
+
* `writeExecutionBlockToManifest` / `writePlanPromotionToManifest`.
|
|
350
|
+
*
|
|
351
|
+
* `blocked_phases` is always present (empty array when no phase blocked).
|
|
352
|
+
* The per-phase `inputs_produced_by_gate` keys are always present so
|
|
353
|
+
* downstream readers can treat them as a stable schema.
|
|
354
|
+
*/
|
|
355
|
+
export declare function writeGateBlockToManifest(runDir: string, acc: GateAccumulator): void;
|
|
356
|
+
/**
|
|
357
|
+
* ADR-PIPELINE-093 §Rule 3 (surface b) — same gate-block payload, written
|
|
358
|
+
* into `runDir/status.json` so the CLI `status` command + MCP
|
|
359
|
+
* `agentics-status` tool carry `blocked_phases` and the per-phase
|
|
360
|
+
* `phase{N}_inputs_produced_by_gate` arrays alongside the ADR-088 keys.
|
|
361
|
+
*
|
|
362
|
+
* Read-modify-write pattern matches the CLI's local `updateStatus` helper
|
|
363
|
+
* (`src/cli/index.ts`:~2501). Best-effort: if `status.json` does not exist
|
|
364
|
+
* (e.g. running outside the MCP fast-return path), the file is created so
|
|
365
|
+
* the gate block is always observable regardless of entry point.
|
|
366
|
+
*
|
|
367
|
+
* Both `writeGateBlockToManifest` and this function should be called from
|
|
368
|
+
* the same accumulator snapshot so manifest.json and status.json stay in
|
|
369
|
+
* sync. The CLI-surfaced `status.json` is the source of truth for the MCP
|
|
370
|
+
* `agentics-status` tool (which shells out to `agentics status`).
|
|
371
|
+
*/
|
|
372
|
+
export declare function writeGateBlockToStatusJson(runDir: string, acc: GateAccumulator): void;
|
|
373
|
+
type ScaffoldLanguage = 'typescript' | 'python' | 'go' | 'rust' | 'unknown';
|
|
374
|
+
/**
|
|
375
|
+
* Detect the target project language from Phase 1 manifest.json
|
|
376
|
+
* (`project.language`) first, then falls back to common project root
|
|
377
|
+
* marker files. Returns `'unknown'` when no signal is available — the
|
|
378
|
+
* caller decides whether to skip or proceed in that case.
|
|
379
|
+
*/
|
|
380
|
+
/**
|
|
381
|
+
* ADR-PIPELINE-093 §Rule 5 — single arbiter for which scaffold template set
|
|
382
|
+
* `copyPlanningArtifacts` should emit. Called ONCE per invocation so the TS
|
|
383
|
+
* block and the Python block gate on the same decision.
|
|
384
|
+
*
|
|
385
|
+
* - `typescript` → emit TS, skip Python, no manifest record.
|
|
386
|
+
* - `python` → skip TS, emit Python, no manifest record.
|
|
387
|
+
* - `go`|`rust`|`unknown` → skip both, record `phase5b_skipped` with the
|
|
388
|
+
* detected language and `template: 'typescript'`
|
|
389
|
+
* (kept for Scenario-5 compatibility — the
|
|
390
|
+
* skip block's shape is the ADR-093 schema).
|
|
391
|
+
*
|
|
392
|
+
* The detected-language + template-name pair in `skipped` matches what the
|
|
393
|
+
* pre-093-fix gate wrote to `manifest.json`, so downstream status.json /
|
|
394
|
+
* MCP consumers don't see a shape change on the mismatch path.
|
|
395
|
+
*/
|
|
396
|
+
export declare function decideScaffoldEmission(detected: ScaffoldLanguage): {
|
|
397
|
+
emitTs: boolean;
|
|
398
|
+
emitPy: boolean;
|
|
399
|
+
skipped: null | {
|
|
400
|
+
reason: 'language-mismatch';
|
|
401
|
+
detected: string;
|
|
402
|
+
template: string;
|
|
403
|
+
};
|
|
404
|
+
};
|
|
405
|
+
export declare function detectProjectLanguage(projectRoot: string, phase1Manifest?: Record<string, unknown>): ScaffoldLanguage;
|
|
238
406
|
/**
|
|
239
407
|
* Format the auto-chain result for stdout display.
|
|
240
408
|
* This is the consolidated pipeline summary that surfaces Phase 2-6 details
|