@llm-dev-ops/agentics-cli 2.7.16 → 2.7.18

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,98 @@
1
+ /**
2
+ * ADR-PIPELINE-097 — Live phase / agent status renderer.
3
+ *
4
+ * Hand-rolled spinner + multi-row status manager (no external deps), matching
5
+ * the pattern used by `@claude-flow/cli` (ruflo). Single-line phase spinner
6
+ * uses `\r` redraw; multi-row agent panel uses ANSI cursor-up + line-clear.
7
+ *
8
+ * TTY-detection rules (gracefully degrade in CI / piped output):
9
+ * - render target is `process.stderr` (stdout is reserved for JSON results)
10
+ * - if `!stderr.isTTY` OR `process.env.NO_COLOR` OR `process.env.CI` →
11
+ * no animation; emit plain `[AGENTICS] event` lines on state transitions,
12
+ * preserving the prior log shape so log scrapers still work.
13
+ * - if `process.env.AGENTICS_NO_LIVE === '1'` → forced plain mode.
14
+ *
15
+ * All frame text written to stderr; never to stdout.
16
+ */
17
+ export type AgentStatus = 'pending' | 'running' | 'success' | 'failed' | 'skipped';
18
+ export interface AgentRow {
19
+ readonly id: string;
20
+ label: string;
21
+ status: AgentStatus;
22
+ startedAt?: number;
23
+ finishedAt?: number;
24
+ detail?: string;
25
+ }
26
+ /**
27
+ * True when stderr is a TTY and the user has NOT opted out of live rendering.
28
+ * Exported for callers that need the same decision (e.g. to decide whether to
29
+ * emit verbose plain-log lines).
30
+ */
31
+ export declare function isLiveCapable(): boolean;
32
+ export declare class PhaseSpinner {
33
+ private label;
34
+ private frameIndex;
35
+ private interval;
36
+ private rendered;
37
+ private readonly live;
38
+ constructor(label: string);
39
+ /**
40
+ * Non-live mode is silent (callers already emit phase boundary log lines).
41
+ * Live mode animates `\r`-redrawn frames at 120ms intervals.
42
+ */
43
+ start(): this;
44
+ setLabel(label: string): void;
45
+ succeed(message?: string): void;
46
+ fail(message?: string): void;
47
+ /** Stop the spinner. Final line only printed in TTY mode. */
48
+ stop(finalLine?: string): void;
49
+ private render;
50
+ private clearLine;
51
+ }
52
+ /**
53
+ * Renders one row per agent with animated frames for in-flight rows.
54
+ *
55
+ * ◓ shield/pii (running, 1.2s)
56
+ * ✓ shield/secrets (success, 0.8s)
57
+ * ✗ test-bench/benchmark — timeout
58
+ *
59
+ * Falls back to plain `[AGENTICS] event` lines in non-TTY mode.
60
+ */
61
+ export declare class AgentPanel {
62
+ private rows;
63
+ private rowIndex;
64
+ private frameIndex;
65
+ private interval;
66
+ private renderedRows;
67
+ private readonly live;
68
+ private readonly title;
69
+ constructor(title: string, agents: ReadonlyArray<{
70
+ id: string;
71
+ label: string;
72
+ }>);
73
+ /**
74
+ * Non-live mode is intentionally silent — the dispatch site already emits
75
+ * legacy `[AGENTICS] Dispatching N agents: ...` and per-result `[OK]/[FB]/
76
+ * [!!]` lines that log scrapers depend on. We only render in TTY mode;
77
+ * otherwise every method is a no-op (state still tracked for `stop()`).
78
+ */
79
+ start(): this;
80
+ /** Mark a row as in-flight. Idempotent. No-op in non-TTY mode. */
81
+ begin(id: string, detail?: string): void;
82
+ /** Mark a row as completed (success/failure/skipped). Idempotent. */
83
+ complete(id: string, status: 'success' | 'failed' | 'skipped', detail?: string): void;
84
+ /**
85
+ * Stop the timer; finalize any pending rows as 'skipped'. Returns a count
86
+ * summary so callers can decide whether to log additional context.
87
+ */
88
+ stop(): {
89
+ success: number;
90
+ failed: number;
91
+ skipped: number;
92
+ };
93
+ private row;
94
+ private renderHeader;
95
+ private renderAll;
96
+ private formatRow;
97
+ }
98
+ //# sourceMappingURL=live-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"live-status.d.ts","sourceRoot":"","sources":["../../../src/cli/ui/live-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAsBH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEnF,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAKvC;AAkBD,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,QAAQ,CAAM;IACtB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;gBAEnB,KAAK,EAAE,MAAM;IAKzB;;;OAGG;IACH,KAAK,IAAI,IAAI;IAWb,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7B,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAI/B,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAI5B,6DAA6D;IAC7D,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAa9B,OAAO,CAAC,MAAM;IAQd,OAAO,CAAC,SAAS;CAOlB;AAMD;;;;;;;;GAQG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAEnB,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAO/E;;;;;OAKG;IACH,KAAK,IAAI,IAAI;IAcb,kEAAkE;IAClE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAUxC,qEAAqE;IACrE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAWrF;;;OAGG;IACH,IAAI,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAuB5D,OAAO,CAAC,GAAG;IAKX,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,SAAS;CA+BlB"}
@@ -0,0 +1,291 @@
1
+ /**
2
+ * ADR-PIPELINE-097 — Live phase / agent status renderer.
3
+ *
4
+ * Hand-rolled spinner + multi-row status manager (no external deps), matching
5
+ * the pattern used by `@claude-flow/cli` (ruflo). Single-line phase spinner
6
+ * uses `\r` redraw; multi-row agent panel uses ANSI cursor-up + line-clear.
7
+ *
8
+ * TTY-detection rules (gracefully degrade in CI / piped output):
9
+ * - render target is `process.stderr` (stdout is reserved for JSON results)
10
+ * - if `!stderr.isTTY` OR `process.env.NO_COLOR` OR `process.env.CI` →
11
+ * no animation; emit plain `[AGENTICS] event` lines on state transitions,
12
+ * preserving the prior log shape so log scrapers still work.
13
+ * - if `process.env.AGENTICS_NO_LIVE === '1'` → forced plain mode.
14
+ *
15
+ * All frame text written to stderr; never to stdout.
16
+ */
17
+ const FRAMES = ['◐', '◓', '◑', '◒'];
18
+ const FRAME_INTERVAL_MS = 120;
19
+ const ICON = {
20
+ pending: '·',
21
+ running: '', // placeholder — running rows use the animated frame
22
+ success: '✓',
23
+ failed: '✗',
24
+ skipped: '○',
25
+ };
26
+ const COLOR = {
27
+ reset: '\x1b[0m',
28
+ dim: '\x1b[2m',
29
+ cyan: '\x1b[36m',
30
+ green: '\x1b[32m',
31
+ red: '\x1b[31m',
32
+ yellow: '\x1b[33m',
33
+ gray: '\x1b[90m',
34
+ };
35
+ /**
36
+ * True when stderr is a TTY and the user has NOT opted out of live rendering.
37
+ * Exported for callers that need the same decision (e.g. to decide whether to
38
+ * emit verbose plain-log lines).
39
+ */
40
+ export function isLiveCapable() {
41
+ if (process.env['AGENTICS_NO_LIVE'] === '1')
42
+ return false;
43
+ if (process.env['CI'])
44
+ return false;
45
+ if (process.env['NO_COLOR'])
46
+ return false;
47
+ return Boolean(process.stderr.isTTY);
48
+ }
49
+ function color(s, c) {
50
+ if (!isLiveCapable())
51
+ return s;
52
+ return COLOR[c] + s + COLOR.reset;
53
+ }
54
+ function formatElapsed(startedAt, finishedAt) {
55
+ if (!startedAt)
56
+ return '';
57
+ const ms = (finishedAt ?? Date.now()) - startedAt;
58
+ if (ms < 1000)
59
+ return `${ms}ms`;
60
+ return `${(ms / 1000).toFixed(1)}s`;
61
+ }
62
+ // ============================================================================
63
+ // PhaseSpinner — single-line spinner for "Phase N: <label>" boundaries.
64
+ // ============================================================================
65
+ export class PhaseSpinner {
66
+ label;
67
+ frameIndex = 0;
68
+ interval = null;
69
+ rendered = '';
70
+ live;
71
+ constructor(label) {
72
+ this.label = label;
73
+ this.live = isLiveCapable();
74
+ }
75
+ /**
76
+ * Non-live mode is silent (callers already emit phase boundary log lines).
77
+ * Live mode animates `\r`-redrawn frames at 120ms intervals.
78
+ */
79
+ start() {
80
+ if (!this.live)
81
+ return this;
82
+ if (this.interval)
83
+ return this;
84
+ this.render();
85
+ this.interval = setInterval(() => {
86
+ this.frameIndex = (this.frameIndex + 1) % FRAMES.length;
87
+ this.render();
88
+ }, FRAME_INTERVAL_MS);
89
+ return this;
90
+ }
91
+ setLabel(label) {
92
+ this.label = label;
93
+ if (this.live)
94
+ this.render();
95
+ }
96
+ succeed(message) {
97
+ this.stop(`${color('✓', 'green')} ${message ?? this.label}`);
98
+ }
99
+ fail(message) {
100
+ this.stop(`${color('✗', 'red')} ${message ?? this.label}`);
101
+ }
102
+ /** Stop the spinner. Final line only printed in TTY mode. */
103
+ stop(finalLine) {
104
+ if (this.interval) {
105
+ clearInterval(this.interval);
106
+ this.interval = null;
107
+ }
108
+ if (this.live) {
109
+ this.clearLine();
110
+ if (finalLine !== undefined) {
111
+ process.stderr.write(` ${finalLine}\n`);
112
+ }
113
+ }
114
+ }
115
+ render() {
116
+ const frame = color(FRAMES[this.frameIndex], 'cyan');
117
+ const line = ` ${frame} ${this.label}`;
118
+ this.clearLine();
119
+ process.stderr.write(line);
120
+ this.rendered = line;
121
+ }
122
+ clearLine() {
123
+ if (!this.rendered)
124
+ return;
125
+ // \r + spaces wide enough to wipe + \r. We can't know the visual width
126
+ // (ANSI codes have zero visual width), so over-clear with the raw length.
127
+ process.stderr.write('\r' + ' '.repeat(this.rendered.length + 4) + '\r');
128
+ this.rendered = '';
129
+ }
130
+ }
131
+ // ============================================================================
132
+ // AgentPanel — multi-row live panel for parallel agent fan-out.
133
+ // ============================================================================
134
+ /**
135
+ * Renders one row per agent with animated frames for in-flight rows.
136
+ *
137
+ * ◓ shield/pii (running, 1.2s)
138
+ * ✓ shield/secrets (success, 0.8s)
139
+ * ✗ test-bench/benchmark — timeout
140
+ *
141
+ * Falls back to plain `[AGENTICS] event` lines in non-TTY mode.
142
+ */
143
+ export class AgentPanel {
144
+ rows;
145
+ rowIndex = new Map();
146
+ frameIndex = 0;
147
+ interval = null;
148
+ renderedRows = 0;
149
+ live;
150
+ title;
151
+ constructor(title, agents) {
152
+ this.title = title;
153
+ this.rows = agents.map((a) => ({ id: a.id, label: a.label, status: 'pending' }));
154
+ this.rows.forEach((r, i) => this.rowIndex.set(r.id, i));
155
+ this.live = isLiveCapable();
156
+ }
157
+ /**
158
+ * Non-live mode is intentionally silent — the dispatch site already emits
159
+ * legacy `[AGENTICS] Dispatching N agents: ...` and per-result `[OK]/[FB]/
160
+ * [!!]` lines that log scrapers depend on. We only render in TTY mode;
161
+ * otherwise every method is a no-op (state still tracked for `stop()`).
162
+ */
163
+ start() {
164
+ if (!this.live)
165
+ return this;
166
+ if (this.interval)
167
+ return this;
168
+ this.renderHeader();
169
+ this.renderAll();
170
+ this.interval = setInterval(() => {
171
+ this.frameIndex = (this.frameIndex + 1) % FRAMES.length;
172
+ if (this.rows.some((r) => r.status === 'running')) {
173
+ this.renderAll();
174
+ }
175
+ }, FRAME_INTERVAL_MS);
176
+ return this;
177
+ }
178
+ /** Mark a row as in-flight. Idempotent. No-op in non-TTY mode. */
179
+ begin(id, detail) {
180
+ const r = this.row(id);
181
+ if (!r)
182
+ return;
183
+ if (r.status === 'success' || r.status === 'failed')
184
+ return;
185
+ r.status = 'running';
186
+ r.startedAt = r.startedAt ?? Date.now();
187
+ r.detail = detail;
188
+ if (this.live)
189
+ this.renderAll();
190
+ }
191
+ /** Mark a row as completed (success/failure/skipped). Idempotent. */
192
+ complete(id, status, detail) {
193
+ const r = this.row(id);
194
+ if (!r)
195
+ return;
196
+ if (r.status === status)
197
+ return;
198
+ r.status = status;
199
+ r.finishedAt = Date.now();
200
+ r.startedAt = r.startedAt ?? r.finishedAt;
201
+ r.detail = detail ?? r.detail;
202
+ if (this.live)
203
+ this.renderAll();
204
+ }
205
+ /**
206
+ * Stop the timer; finalize any pending rows as 'skipped'. Returns a count
207
+ * summary so callers can decide whether to log additional context.
208
+ */
209
+ stop() {
210
+ if (this.interval) {
211
+ clearInterval(this.interval);
212
+ this.interval = null;
213
+ }
214
+ let success = 0, failed = 0, skipped = 0;
215
+ for (const r of this.rows) {
216
+ if (r.status === 'pending' || r.status === 'running') {
217
+ r.status = 'skipped';
218
+ r.finishedAt = Date.now();
219
+ }
220
+ if (r.status === 'success')
221
+ success++;
222
+ else if (r.status === 'failed')
223
+ failed++;
224
+ else if (r.status === 'skipped')
225
+ skipped++;
226
+ }
227
+ if (this.live) {
228
+ this.renderAll();
229
+ const summary = `${color(`${success}✓`, 'green')} ${color(`${failed}✗`, 'red')} ${color(`${skipped}○`, 'gray')}`;
230
+ process.stderr.write(` ${color('─', 'gray')} ${this.title}: ${summary}\n`);
231
+ }
232
+ return { success, failed, skipped };
233
+ }
234
+ row(id) {
235
+ const i = this.rowIndex.get(id);
236
+ return i === undefined ? undefined : this.rows[i];
237
+ }
238
+ renderHeader() {
239
+ const line = color(` ▼ ${this.title} (${this.rows.length} agents)`, 'cyan');
240
+ process.stderr.write(line + '\n');
241
+ this.renderedRows = 0;
242
+ }
243
+ renderAll() {
244
+ if (!this.live)
245
+ return;
246
+ // Move cursor up to the first row of the panel (if we've already drawn
247
+ // anything), clear from there to end-of-screen, then redraw all rows.
248
+ if (this.renderedRows > 0) {
249
+ process.stderr.write(`\x1b[${this.renderedRows}A`); // cursor up N
250
+ process.stderr.write('\x1b[0J'); // clear to end of screen
251
+ }
252
+ let written = 0;
253
+ for (const r of this.rows) {
254
+ process.stderr.write(this.formatRow(r) + '\n');
255
+ written++;
256
+ }
257
+ this.renderedRows = written;
258
+ }
259
+ formatRow(r) {
260
+ const elapsed = r.startedAt ? formatElapsed(r.startedAt, r.finishedAt) : '';
261
+ const detail = r.detail ? color(` — ${r.detail}`, 'gray') : '';
262
+ let icon;
263
+ let labelColor;
264
+ switch (r.status) {
265
+ case 'pending':
266
+ icon = color(ICON.pending, 'gray');
267
+ labelColor = 'gray';
268
+ break;
269
+ case 'running':
270
+ icon = color(FRAMES[this.frameIndex], 'cyan');
271
+ labelColor = 'cyan';
272
+ break;
273
+ case 'success':
274
+ icon = color(ICON.success, 'green');
275
+ labelColor = 'reset';
276
+ break;
277
+ case 'failed':
278
+ icon = color(ICON.failed, 'red');
279
+ labelColor = 'red';
280
+ break;
281
+ case 'skipped':
282
+ icon = color(ICON.skipped, 'gray');
283
+ labelColor = 'gray';
284
+ break;
285
+ }
286
+ const label = color(r.label.padEnd(34, ' '), labelColor);
287
+ const elapsedStr = elapsed ? color(elapsed.padStart(7, ' '), 'dim') : ' ';
288
+ return ` ${icon} ${label} ${elapsedStr}${detail}`;
289
+ }
290
+ }
291
+ //# sourceMappingURL=live-status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"live-status.js","sourceRoot":"","sources":["../../../src/cli/ui/live-status.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"auto-chain.d.ts","sourceRoot":"","sources":["../../src/pipeline/auto-chain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-chain.d.ts","sourceRoot":"","sources":["../../src/pipeline/auto-chain.ts"],"names":[],"mappings":"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"}
@@ -4002,10 +4002,79 @@ services when the pilot validates the approach.
4002
4002
  recordPhaseFailure(PHASE_AGENTS[6], traceId, errMsg);
4003
4003
  phases.push({ phase: 6, label: 'ERP Surface Push', status: 'failed', timing: Date.now() - phaseStart, artifacts: [], outputDir: phaseDir, error: errMsg });
4004
4004
  await ensureAdrsExist(runDir, traceId, scenarioQuery);
4005
- return buildResult(traceId, runDir, phases, pipelineStart, mode);
4005
+ // ADR-PIPELINE-098 D1 Phase 7 still runs after a Phase 6 failure
4006
+ // (only Phase 1 input loss skips it). Fall through to the Phase 7
4007
+ // block instead of returning here.
4006
4008
  }
4007
4009
  }
4008
4010
  }
4011
+ // ── Phase 7: Consulting Deliverables (ADR-PIPELINE-098) ──
4012
+ {
4013
+ const phaseStart = Date.now();
4014
+ const phaseDir = path.join(runDir, 'deliverables');
4015
+ console.error('');
4016
+ console.error('-'.repeat(72));
4017
+ console.error(' >> Phase 7: Consulting Deliverables (85-document enterprise decision pack)');
4018
+ console.error('-'.repeat(72));
4019
+ try {
4020
+ const { executePhase7 } = await import('./phase7/coordinator.js');
4021
+ const p7 = await executePhase7({ runDir, traceId, scenarioQuery, options });
4022
+ const timing = Date.now() - phaseStart;
4023
+ if (p7.status === 'skipped-due-to-upstream') {
4024
+ console.error(` [P7] skipped-due-to-upstream — reason: ${p7.reason ?? 'unknown'}`);
4025
+ // ADR-094 D4 — always-emit a phases[] entry.
4026
+ phases.push({
4027
+ phase: 7,
4028
+ label: 'Consulting Deliverables',
4029
+ status: 'skipped-due-to-upstream',
4030
+ timing,
4031
+ artifacts: [],
4032
+ outputDir: phaseDir,
4033
+ error: `Upstream phase 1 inputs missing: ${p7.reason ?? 'phase1-inputs-missing'}`,
4034
+ });
4035
+ }
4036
+ else {
4037
+ console.error(` [P7] ${p7.deliverables_emitted}/${p7.deliverables_total} emitted, ` +
4038
+ `${p7.deliverables_skeleton} skeleton, ${p7.deliverables_failed} failed, ` +
4039
+ `${p7.coherence_violations.length} coherence violations in ${timing}ms`);
4040
+ const phaseStatus = p7.status === 'completed' ? 'completed'
4041
+ : p7.status === 'failed' ? 'failed'
4042
+ : 'completed';
4043
+ // 'partial' from the coordinator is still a successful phase from
4044
+ // the chain's POV — it produced 85 files (mix of full + skeleton).
4045
+ // We emit `completed` so `success` calc holds, but record the
4046
+ // skeleton/violation counts in error for visibility.
4047
+ const errorDetail = p7.status === 'partial'
4048
+ ? `partial: skeleton=${p7.deliverables_skeleton} failed=${p7.deliverables_failed} coherence_violations=${p7.coherence_violations.length}`
4049
+ : p7.status === 'failed'
4050
+ ? (p7.reason ?? 'phase7-failed')
4051
+ : undefined;
4052
+ phases.push({
4053
+ phase: 7,
4054
+ label: 'Consulting Deliverables',
4055
+ status: phaseStatus,
4056
+ timing,
4057
+ artifacts: [...p7.output_paths],
4058
+ outputDir: phaseDir,
4059
+ ...(errorDetail ? { error: errorDetail } : {}),
4060
+ });
4061
+ }
4062
+ }
4063
+ catch (err) {
4064
+ const errMsg = err instanceof Error ? err.message : String(err);
4065
+ console.error(` [FAIL] Phase 7 failed: ${errMsg}`);
4066
+ // ADR-094 D4 — always emit the phases[] entry, even on hard error.
4067
+ phases.push({
4068
+ phase: 7,
4069
+ label: 'Consulting Deliverables',
4070
+ status: 'failed',
4071
+ timing: Date.now() - phaseStart,
4072
+ artifacts: [],
4073
+ outputDir: phaseDir,
4074
+ error: errMsg,
4075
+ });
4076
+ }
4077
+ }
4009
4078
  // Progressive copy already happened after each phase via copyPlanningArtifacts()
4010
4079
  // ── Project mode: materialize to repo root and commit on current branch ──
4011
4080
  let commitHash;