@cluesmith/codev 2.0.0-rc.10 → 2.0.0-rc.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/claude.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC;IAErB;;OAEG;IACH,WAAW,IAAI,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;CAChD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,GACV,aAAa,CA2Ef"}
1
+ {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/claude.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC;IAErB;;OAEG;IACH,WAAW,IAAI,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;CAChD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,GACV,aAAa,CA4Ef"}
@@ -17,8 +17,9 @@ export function spawnClaude(prompt, outputPath, cwd) {
17
17
  fs.writeFileSync(promptFile, prompt);
18
18
  // Spawn Claude with prompt as command-line argument
19
19
  // Node's spawn handles escaping correctly for long prompts
20
- // Using --dangerously-skip-permissions so Claude can write files without prompts
20
+ // Using --print for non-interactive mode, --dangerously-skip-permissions for file writes
21
21
  const proc = spawn('claude', [
22
+ '--print',
22
23
  '--dangerously-skip-permissions',
23
24
  '-p',
24
25
  prompt, // Pass prompt directly as argument
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/commands/porch/claude.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAwB9B;;;GAGG;AACH,MAAM,UAAU,WAAW,CACzB,MAAc,EACd,UAAkB,EAClB,GAAW;IAEX,wBAAwB;IACxB,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAE9C,oCAAoC;IACpC,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC/D,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAErC,oDAAoD;IACpD,2DAA2D;IAC3D,iFAAiF;IACjF,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE;QAC3B,gCAAgC;QAChC,IAAI;QACJ,MAAM,EAAG,mCAAmC;KAC7C,EAAE;QACD,GAAG;QACH,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;QACrC,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,wDAAwD;YACxD,EAAE,EAAE,GAAG;SACR;KACF,CAAC,CAAC;IAEH,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,MAAM,aAAa,GAAkC,EAAE,CAAC;IAExD,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QACxB,QAAQ,GAAG,IAAI,IAAI,CAAC,CAAC;QACrB,OAAO,GAAG,KAAK,CAAC;QAChB,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAEvB,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE,CAAC;YACrC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;QACvB,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QAClD,OAAO,GAAG,KAAK,CAAC;QAChB,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,IAAI;YACF,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACrB,8CAA8C;gBAC9C,UAAU,CAAC,GAAG,EAAE;oBACd,IAAI,OAAO,EAAE,CAAC;wBACZ,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACvB,CAAC;gBACH,CAAC,EAAE,IAAI,CAAC,CAAC;YACX,CAAC;QACH,CAAC;QAED,SAAS;YACP,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,WAAW;YACT,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,CAAC,QAAQ;YACb,IAAI,CAAC,OAAO,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBAClC,mCAAmC;gBACnC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/commands/porch/claude.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAwB9B;;;GAGG;AACH,MAAM,UAAU,WAAW,CACzB,MAAc,EACd,UAAkB,EAClB,GAAW;IAEX,wBAAwB;IACxB,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAE9C,oCAAoC;IACpC,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC/D,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAErC,oDAAoD;IACpD,2DAA2D;IAC3D,yFAAyF;IACzF,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE;QAC3B,SAAS;QACT,gCAAgC;QAChC,IAAI;QACJ,MAAM,EAAG,mCAAmC;KAC7C,EAAE;QACD,GAAG;QACH,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;QACrC,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,wDAAwD;YACxD,EAAE,EAAE,GAAG;SACR;KACF,CAAC,CAAC;IAEH,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,MAAM,aAAa,GAAkC,EAAE,CAAC;IAExD,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QACxB,QAAQ,GAAG,IAAI,IAAI,CAAC,CAAC;QACrB,OAAO,GAAG,KAAK,CAAC;QAChB,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAEvB,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE,CAAC;YACrC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;QACvB,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QAClD,OAAO,GAAG,KAAK,CAAC;QAChB,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,IAAI;YACF,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACrB,8CAA8C;gBAC9C,UAAU,CAAC,GAAG,EAAE;oBACd,IAAI,OAAO,EAAE,CAAC;wBACZ,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACvB,CAAC;gBACH,CAAC,EAAE,IAAI,CAAC,CAAC;YACX,CAAC;QACH,CAAC;QAED,SAAS;YACP,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,WAAW;YACT,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,CAAC,QAAQ;YACb,IAAI,CAAC,OAAO,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBAClC,mCAAmC;gBACnC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAA6C,MAAM,YAAY,CAAC;AAoJpG;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,QAAQ,GACjB,MAAM,CA8DR"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAA6C,MAAM,YAAY,CAAC;AAoJpG;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,QAAQ,GACjB,MAAM,CA2ER"}
@@ -9,7 +9,7 @@
9
9
  */
10
10
  import * as fs from 'node:fs';
11
11
  import * as path from 'node:path';
12
- import { getPhaseConfig, isPhased, isBuildVerify } from './protocol.js';
12
+ import { getPhaseConfig, isPhased, isBuildVerify, getBuildConfig } from './protocol.js';
13
13
  import { findPlanFile, getCurrentPlanPhase, getPhaseContent } from './plan.js';
14
14
  /** Locations to search for protocol prompts */
15
15
  const PROTOCOL_PATHS = [
@@ -157,10 +157,17 @@ export function buildPhasePrompt(projectRoot, state, protocol) {
157
157
  if (isBuildVerify(protocol, state.phase) && state.iteration > 1 && state.history.length > 0) {
158
158
  historyHeader = buildHistoryHeader(state.history, state.iteration);
159
159
  }
160
+ // Build user answers section if they asked clarifying questions
161
+ let userAnswersSection = '';
162
+ if (state.context?.user_answers) {
163
+ userAnswersSection = `# User Answers to Your Questions\n\n${state.context.user_answers}\n\n---\n\n`;
164
+ }
160
165
  // Try to load prompt from protocol directory
161
166
  const promptsDir = findPromptsDir(projectRoot, state.protocol);
162
167
  if (promptsDir) {
163
- const promptFileName = `${state.phase}.md`;
168
+ // Get prompt filename from protocol's build config, fallback to phase.md
169
+ const buildConfig = getBuildConfig(protocol, state.phase);
170
+ const promptFileName = buildConfig?.prompt || `${state.phase}.md`;
164
171
  const promptContent = loadPromptFile(promptsDir, promptFileName);
165
172
  if (promptContent) {
166
173
  let result = substituteVariables(promptContent, state, currentPlanPhase, summary);
@@ -168,6 +175,10 @@ export function buildPhasePrompt(projectRoot, state, protocol) {
168
175
  if (summary) {
169
176
  result = `## Goal\n\n${summary}\n\n---\n\n` + result;
170
177
  }
178
+ // Add user answers if Claude asked clarifying questions
179
+ if (userAnswersSection) {
180
+ result = userAnswersSection + result;
181
+ }
171
182
  // Add plan phase context if applicable
172
183
  if (currentPlanPhase) {
173
184
  result = addPlanPhaseContext(projectRoot, state, currentPlanPhase, result);
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/commands/porch/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/commands/porch/prompts.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,9 @@ export declare function isPhased(protocol: Protocol, phaseId: string): boolean;
35
35
  */
36
36
  export declare function getPhaseCompletionChecks(protocol: Protocol): Record<string, string>;
37
37
  /**
38
- * Check if a phase is a build_verify phase
38
+ * Check if a phase uses the build-verify cycle.
39
+ * A phase uses build-verify if it has both build and verify configs,
40
+ * regardless of whether type is 'build_verify' or 'per_plan_phase'.
39
41
  */
40
42
  export declare function isBuildVerify(protocol: Protocol, phaseId: string): boolean;
41
43
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/protocol.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAYvG;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,QAAQ,CAoBhF;AA+ID;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAExF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAM7F;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAa1F;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG/E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAGrE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAEnF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAG1E;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAGtF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAGxF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAG5E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAGhG"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/protocol.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAYvG;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,QAAQ,CAoBhF;AA+ID;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAExF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAM7F;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAa1F;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG/E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAGrE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAEnF;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAG1E;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAGtF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAGxF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAG5E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAGhG"}
@@ -150,7 +150,7 @@ function normalizePhase(p) {
150
150
  type: phase.type,
151
151
  build,
152
152
  verify,
153
- max_iterations: phase.max_iterations ?? 3,
153
+ max_iterations: phase.max_iterations ?? 7,
154
154
  on_complete,
155
155
  gate: gate?.name,
156
156
  checks: checks.length > 0 ? checks : undefined,
@@ -213,11 +213,13 @@ export function getPhaseCompletionChecks(protocol) {
213
213
  return protocol.phase_completion ?? {};
214
214
  }
215
215
  /**
216
- * Check if a phase is a build_verify phase
216
+ * Check if a phase uses the build-verify cycle.
217
+ * A phase uses build-verify if it has both build and verify configs,
218
+ * regardless of whether type is 'build_verify' or 'per_plan_phase'.
217
219
  */
218
220
  export function isBuildVerify(protocol, phaseId) {
219
221
  const phase = getPhaseConfig(protocol, phaseId);
220
- return phase?.type === 'build_verify';
222
+ return !!(phase?.build && phase?.verify);
221
223
  }
222
224
  /**
223
225
  * Get build config for a phase
@@ -238,7 +240,7 @@ export function getVerifyConfig(protocol, phaseId) {
238
240
  */
239
241
  export function getMaxIterations(protocol, phaseId) {
240
242
  const phase = getPhaseConfig(protocol, phaseId);
241
- return phase?.max_iterations ?? 3;
243
+ return phase?.max_iterations ?? 7;
242
244
  }
243
245
  /**
244
246
  * Get on_complete config for a phase
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/commands/porch/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/commands/porch/protocol.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAwCH;;;GAGG;AACH,wBAAsB,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA6M/E"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAwCH;;;GAGG;AACH,wBAAsB,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA6S/E"}
@@ -80,6 +80,20 @@ export async function run(projectRoot, projectId) {
80
80
  const maxIterations = getMaxIterations(protocol, state.phase);
81
81
  // Check if we need to run VERIFY (build just completed)
82
82
  if (state.build_complete) {
83
+ // First check if the artifact was actually created
84
+ const artifactPath = getArtifactForPhase(state);
85
+ if (artifactPath) {
86
+ const fullPath = path.join(projectRoot, artifactPath);
87
+ if (!fs.existsSync(fullPath)) {
88
+ console.log('');
89
+ console.log(chalk.yellow(`Artifact not found: ${artifactPath}`));
90
+ console.log(chalk.dim('Claude may have asked questions or encountered an error.'));
91
+ console.log(chalk.dim('Check the output file for details, then respawn.'));
92
+ state.build_complete = false;
93
+ writeState(statusPath, state);
94
+ continue;
95
+ }
96
+ }
83
97
  console.log('');
84
98
  console.log(chalk.cyan(`[${state.id}] VERIFY - Iteration ${state.iteration}/${maxIterations}`));
85
99
  const reviews = await runVerification(projectRoot, state, protocol);
@@ -115,8 +129,79 @@ export async function run(projectRoot, projectId) {
115
129
  // Some reviewers requested changes
116
130
  console.log(chalk.yellow('\nChanges requested. Feeding back to Claude...'));
117
131
  if (state.iteration >= maxIterations) {
118
- console.log(chalk.yellow(`\nMax iterations (${maxIterations}) reached. Proceeding to gate.`));
119
- // Run on_complete actions anyway
132
+ // Max iterations reached without unanimity - summarize and interrupt user
133
+ console.log('');
134
+ console.log(chalk.red('═'.repeat(60)));
135
+ console.log(chalk.red.bold(' MAX ITERATIONS REACHED - NO UNANIMITY'));
136
+ console.log(chalk.red('═'.repeat(60)));
137
+ console.log('');
138
+ console.log(chalk.yellow(`After ${maxIterations} iterations, reviewers did not reach unanimity.`));
139
+ console.log('');
140
+ console.log(chalk.bold('Summary of reviewer positions:'));
141
+ // Group reviews by verdict
142
+ const byVerdict = {};
143
+ for (const r of reviews) {
144
+ if (!byVerdict[r.verdict])
145
+ byVerdict[r.verdict] = [];
146
+ byVerdict[r.verdict].push(r.model);
147
+ }
148
+ for (const [verdict, models] of Object.entries(byVerdict)) {
149
+ const color = verdict === 'APPROVE' ? chalk.green :
150
+ verdict === 'CONSULT_ERROR' ? chalk.red :
151
+ verdict === 'REQUEST_CHANGES' ? chalk.yellow : chalk.blue;
152
+ console.log(` ${color(verdict)}: ${models.join(', ')}`);
153
+ }
154
+ console.log('');
155
+ console.log(chalk.dim('Review files:'));
156
+ for (const r of reviews) {
157
+ console.log(` ${r.model}: ${r.file}`);
158
+ }
159
+ console.log('');
160
+ // Check for identical REQUEST_CHANGES (may indicate missing context)
161
+ const requestChangesReviews = reviews.filter(r => r.verdict === 'REQUEST_CHANGES');
162
+ if (requestChangesReviews.length >= 2) {
163
+ console.log(chalk.yellow('Note: Multiple REQUEST_CHANGES may indicate missing file context.'));
164
+ console.log(chalk.dim('Check if the artifact path is correct and files are committed.'));
165
+ console.log('');
166
+ }
167
+ // Wait for user decision
168
+ const readline = await import('node:readline');
169
+ const rl = readline.createInterface({
170
+ input: process.stdin,
171
+ output: process.stdout,
172
+ });
173
+ console.log('Options:');
174
+ console.log(" 'c' or 'continue' - Proceed to gate anyway (let human decide)");
175
+ console.log(" 'r' or 'retry' - Reset iteration counter and try again");
176
+ console.log(" 'q' or 'quit' - Exit porch");
177
+ console.log('');
178
+ const action = await new Promise((resolve) => {
179
+ rl.question(chalk.cyan(`[${state.id}] > `), (input) => {
180
+ rl.close();
181
+ resolve(input.trim().toLowerCase());
182
+ });
183
+ });
184
+ switch (action) {
185
+ case 'c':
186
+ case 'continue':
187
+ console.log(chalk.dim('\nProceeding to gate...'));
188
+ break;
189
+ case 'r':
190
+ case 'retry':
191
+ console.log(chalk.dim('\nResetting iteration counter...'));
192
+ state.iteration = 1;
193
+ state.build_complete = false;
194
+ state.history = [];
195
+ writeState(statusPath, state);
196
+ continue;
197
+ case 'q':
198
+ case 'quit':
199
+ console.log(chalk.yellow('\nExiting porch.'));
200
+ return;
201
+ default:
202
+ console.log(chalk.yellow('\nUnknown option. Proceeding to gate.'));
203
+ }
204
+ // Run on_complete actions
120
205
  await runOnComplete(projectRoot, state, protocol, reviews);
121
206
  // Request gate
122
207
  if (gateName) {
@@ -265,11 +350,36 @@ function getConsultArtifactType(phaseId) {
265
350
  }
266
351
  }
267
352
  /**
268
- * Run a single consultation.
353
+ * Run a single consultation with retry on failure.
269
354
  * Writes output to file and returns result with file path.
355
+ *
356
+ * Retry logic:
357
+ * - Non-zero exit code = consultation failed (API key missing, network error, etc.)
358
+ * - Retry up to 3 times with exponential backoff
359
+ * - If all retries fail, return CONSULT_ERROR (not REQUEST_CHANGES)
270
360
  */
271
361
  const CONSULT_TIMEOUT_MS = 60 * 60 * 1000; // 1 hour
362
+ const CONSULT_MAX_RETRIES = 3;
363
+ const CONSULT_RETRY_DELAYS = [5000, 15000, 30000]; // 5s, 15s, 30s
272
364
  async function runConsult(projectRoot, model, reviewType, state, outputFile) {
365
+ for (let attempt = 0; attempt < CONSULT_MAX_RETRIES; attempt++) {
366
+ const result = await runConsultOnce(projectRoot, model, reviewType, state, outputFile);
367
+ // Success - got a valid verdict
368
+ if (result.verdict !== 'CONSULT_ERROR') {
369
+ return result;
370
+ }
371
+ // Consultation failed - retry if attempts remaining
372
+ if (attempt < CONSULT_MAX_RETRIES - 1) {
373
+ const delay = CONSULT_RETRY_DELAYS[attempt];
374
+ console.log(chalk.yellow(` ${model}: failed, retrying in ${delay / 1000}s... (attempt ${attempt + 2}/${CONSULT_MAX_RETRIES})`));
375
+ await sleep(delay);
376
+ }
377
+ }
378
+ // All retries failed
379
+ console.log(chalk.red(` ${model}: FAILED after ${CONSULT_MAX_RETRIES} attempts`));
380
+ return { model, verdict: 'CONSULT_ERROR', file: outputFile };
381
+ }
382
+ async function runConsultOnce(projectRoot, model, reviewType, state, outputFile) {
273
383
  const { spawn } = await import('node:child_process');
274
384
  const artifactType = getConsultArtifactType(state.phase);
275
385
  return new Promise((resolve) => {
@@ -280,6 +390,7 @@ async function runConsult(projectRoot, model, reviewType, state, outputFile) {
280
390
  });
281
391
  let output = '';
282
392
  let resolved = false;
393
+ let exitCode = null;
283
394
  // Timeout after 1 hour
284
395
  const timeout = setTimeout(() => {
285
396
  if (!resolved) {
@@ -288,17 +399,24 @@ async function runConsult(projectRoot, model, reviewType, state, outputFile) {
288
399
  const timeoutOutput = output + '\n\n[TIMEOUT: Consultation exceeded 1 hour limit]';
289
400
  fs.writeFileSync(outputFile, timeoutOutput);
290
401
  console.log(chalk.yellow(` ${model}: timeout (1 hour limit)`));
291
- resolve({ model, verdict: 'REQUEST_CHANGES', file: outputFile });
402
+ resolve({ model, verdict: 'CONSULT_ERROR', file: outputFile });
292
403
  }
293
404
  }, CONSULT_TIMEOUT_MS);
294
405
  proc.stdout.on('data', (data) => { output += data.toString(); });
295
406
  proc.stderr.on('data', (data) => { output += data.toString(); });
296
- proc.on('close', () => {
407
+ proc.on('close', (code) => {
297
408
  if (!resolved) {
298
409
  resolved = true;
299
410
  clearTimeout(timeout);
411
+ exitCode = code;
300
412
  // Write output to file
301
413
  fs.writeFileSync(outputFile, output);
414
+ // Non-zero exit code = consultation failed (API key missing, etc.)
415
+ if (code !== 0) {
416
+ console.log(chalk.yellow(` ${model}: exit code ${code}`));
417
+ resolve({ model, verdict: 'CONSULT_ERROR', file: outputFile });
418
+ return;
419
+ }
302
420
  // Parse verdict from output
303
421
  const verdict = parseVerdict(output);
304
422
  resolve({ model, verdict, file: outputFile });
@@ -311,7 +429,7 @@ async function runConsult(projectRoot, model, reviewType, state, outputFile) {
311
429
  const errorOutput = `Error: ${err.message}`;
312
430
  fs.writeFileSync(outputFile, errorOutput);
313
431
  console.log(chalk.red(` ${model}: error - ${err.message}`));
314
- resolve({ model, verdict: 'REQUEST_CHANGES', file: outputFile });
432
+ resolve({ model, verdict: 'CONSULT_ERROR', file: outputFile });
315
433
  }
316
434
  });
317
435
  });
@@ -362,12 +480,17 @@ function parseVerdict(output) {
362
480
  return 'REQUEST_CHANGES';
363
481
  }
364
482
  /**
365
- * Check if all reviewers approved (no REQUEST_CHANGES).
483
+ * Check if all reviewers approved (unanimity required).
484
+ *
485
+ * Returns true only if ALL reviewers explicitly APPROVE.
486
+ * COMMENT counts as approve (non-blocking feedback).
487
+ * CONSULT_ERROR and REQUEST_CHANGES block approval.
366
488
  */
367
489
  function allApprove(reviews) {
368
490
  if (reviews.length === 0)
369
491
  return true; // No verification = auto-approve
370
- return reviews.every(r => r.verdict !== 'REQUEST_CHANGES');
492
+ // Unanimity: ALL must be APPROVE or COMMENT
493
+ return reviews.every(r => r.verdict === 'APPROVE' || r.verdict === 'COMMENT');
371
494
  }
372
495
  /**
373
496
  * Run on_complete actions (commit + push).
@@ -446,6 +569,14 @@ function showStatus(state, protocol) {
446
569
  * Handle gate approval flow.
447
570
  */
448
571
  async function handleGate(state, gateName, statusPath, projectRoot, outputPath, protocol) {
572
+ // E2E testing: Auto-approve gates when PORCH_AUTO_APPROVE is set
573
+ if (process.env.PORCH_AUTO_APPROVE === 'true') {
574
+ console.log(chalk.yellow(`[E2E] Auto-approving gate: ${gateName}`));
575
+ state.gates[gateName].status = 'approved';
576
+ state.gates[gateName].approved_at = new Date().toISOString();
577
+ writeState(statusPath, state);
578
+ return;
579
+ }
449
580
  console.log('');
450
581
  console.log(chalk.yellow('═'.repeat(60)));
451
582
  console.log(chalk.yellow.bold(` GATE: ${gateName}`));
@@ -527,6 +658,42 @@ async function handleSignal(signal, state, statusPath, projectRoot, protocol) {
527
658
  console.log(chalk.red(`Signal: BLOCKED - ${signal.reason}`));
528
659
  console.log(chalk.dim('Human intervention required.'));
529
660
  return false;
661
+ case 'AWAITING_INPUT':
662
+ console.log(chalk.yellow('═'.repeat(60)));
663
+ console.log(chalk.yellow.bold(' CLAUDE NEEDS INPUT'));
664
+ console.log(chalk.yellow('═'.repeat(60)));
665
+ console.log('');
666
+ console.log(signal.content);
667
+ console.log('');
668
+ console.log(chalk.dim('Answer the questions above, then Claude will be respawned.'));
669
+ console.log(chalk.dim('Your answers will be included in the next prompt.'));
670
+ console.log('');
671
+ // Wait for user input
672
+ const readline = await import('node:readline');
673
+ const rl = readline.createInterface({
674
+ input: process.stdin,
675
+ output: process.stdout,
676
+ });
677
+ const answers = await new Promise((resolve) => {
678
+ console.log(chalk.cyan('Enter your answers (end with a blank line):'));
679
+ let input = '';
680
+ rl.on('line', (line) => {
681
+ if (line === '') {
682
+ rl.close();
683
+ resolve(input.trim());
684
+ }
685
+ else {
686
+ input += line + '\n';
687
+ }
688
+ });
689
+ });
690
+ // Store answers in state for next iteration
691
+ if (!state.context)
692
+ state.context = {};
693
+ state.context.user_answers = answers;
694
+ writeState(statusPath, state);
695
+ console.log(chalk.green('\nAnswers recorded. Respawning Claude...'));
696
+ return true; // Respawn Claude
530
697
  }
531
698
  return false;
532
699
  }
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/commands/porch/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/commands/porch/run.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,9 @@ export type Signal = {
13
13
  } | {
14
14
  type: 'BLOCKED';
15
15
  reason: string;
16
+ } | {
17
+ type: 'AWAITING_INPUT';
18
+ content: string;
16
19
  };
17
20
  export interface SignalWatcher {
18
21
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"signals.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/signals.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,MAAM,MAAM,GACd;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GACvB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEhC;;OAEG;IACH,IAAI,IAAI,IAAI,CAAC;CACd;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,CAmDhE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqB1D"}
1
+ {"version":3,"file":"signals.d.ts","sourceRoot":"","sources":["../../../src/commands/porch/signals.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,MAAM,MAAM,GACd;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GACvB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEhC;;OAEG;IACH,IAAI,IAAI,IAAI,CAAC;CACd;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,CAyDhE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqB1D"}
@@ -25,6 +25,11 @@ export function watchForSignal(outputPath) {
25
25
  // Only check new content since last position
26
26
  const newContent = content.slice(lastPosition);
27
27
  lastPosition = content.length;
28
+ // Check for XML-style signal with content: <signal type=AWAITING_INPUT>content</signal>
29
+ const awaitingMatch = newContent.match(/<signal\s+type=AWAITING_INPUT>([\s\S]*?)<\/signal>/i);
30
+ if (awaitingMatch) {
31
+ return { type: 'AWAITING_INPUT', content: awaitingMatch[1].trim() };
32
+ }
28
33
  // Look for signal markers
29
34
  // These should be on their own line, possibly in output blocks
30
35
  const lines = newContent.split('\n');
@@ -1 +1 @@
1
- {"version":3,"file":"signals.js","sourceRoot":"","sources":["../../../src/commands/porch/signals.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAmB9B;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,UAAkB;IAC/C,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,OAAO;QACL,KAAK,CAAC,KAAK;YACT,IAAI,OAAO;gBAAE,OAAO,IAAI,CAAC;YAEzB,IAAI,CAAC;gBACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC/B,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAErD,6CAA6C;gBAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBAC/C,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;gBAE9B,0BAA0B;gBAC1B,+DAA+D;gBAC/D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAErC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;oBAE5B,IAAI,OAAO,KAAK,gBAAgB,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;wBACvE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;oBACpC,CAAC;oBAED,IAAI,OAAO,KAAK,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;wBACjE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;oBACjC,CAAC;oBAED,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;oBACtD,IAAI,YAAY,EAAE,CAAC;wBACjB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtD,CAAC;gBACH,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,wCAAwC;gBACxC,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,IAAI;YACF,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAE5B,IAAI,OAAO,KAAK,gBAAgB,EAAE,CAAC;YACjC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;QACpC,CAAC;QAED,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;YAC9B,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QACjC,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACtD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"signals.js","sourceRoot":"","sources":["../../../src/commands/porch/signals.ts"],"names":[],"mappings":"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"}