From 190e650d9734e059618ea02c849fc4224f06c44b Mon Sep 17 00:00:00 2001 From: garrytan Date: Wed, 30 Sep 2026 21:56:57 +0000 Subject: [PATCH] test(autoplan-dual-voice): the fixture declares that delivered bash blocks run alone, diagnostics separately --- test/autoplan-dual-voice-fixture.test.ts | 5 +++-- test/skill-e2e-autoplan-dual-voice.test.ts | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/test/autoplan-dual-voice-fixture.test.ts b/test/autoplan-dual-voice-fixture.test.ts index f55d0d423..980b871bc 100644 --- a/test/autoplan-dual-voice-fixture.test.ts +++ b/test/autoplan-dual-voice-fixture.test.ts @@ -64,7 +64,8 @@ mock.module(${JSON.stringify(path.join(ROOT, 'test/helpers/session-runner.ts'))} noPriorReview: actualPlan.split('## Review record')[1].trim() === '', originalRestore: fs.readFileSync(path.join(opts.env.HOME, 'restore.md'), 'utf8') === fs.readFileSync(plan, 'utf8'), currentInput: actualPlan.includes(fs.readFileSync(plan, 'utf8')), - hasActualRanges: /ranges: \\[\\{\"offset\":1,\"limit\":/.test(entry)}, + hasActualRanges: /ranges: \\[\\{\"offset\":1,\"limit\":/.test(entry), + blocksAsDelivered: entry.includes('Run each bash block below as\\ndelivered, alone in one Bash call; run any extra diagnostics as separate calls.')}, timeout: opts.timeout, maxTurns: opts.maxTurns, allowedTools: opts.allowedTools, tools: opts.tools, appendedPrompt: opts.appendSystemPrompt, model: opts.model, @@ -255,7 +256,7 @@ await import(${JSON.stringify(path.join(ROOT, 'test/skill-e2e-autoplan-dual-voic expect(attempt.initial).toBe(ORIGINAL_PLAN); expect(attempt.prompt).toBe(`Read ${JSON.stringify(attempt.entryPath)} and execute the standalone CEO dual-voice review described there.`); expect(attempt.entryPath).toBe(path.join(attempt.env.HOME, 'ceo-dual-entry.md')); - expect(attempt.entry).toEqual({exactDual: true, exactPreflight: true, scopeDeclared: true, noPriorReview: true, originalRestore: true, currentInput: true, hasActualRanges: true}); + expect(attempt.entry).toEqual({exactDual: true, exactPreflight: true, scopeDeclared: true, noPriorReview: true, originalRestore: true, currentInput: true, hasActualRanges: true, blocksAsDelivered: true}); expect(attempt.timeout).toBe(600_000); expect(attempt.maxTurns).toBe(40); expect(attempt.allowedTools).toEqual(['Bash', 'Read', 'Write', 'Edit', 'Grep', 'Glob', 'Agent', 'Skill']); diff --git a/test/skill-e2e-autoplan-dual-voice.test.ts b/test/skill-e2e-autoplan-dual-voice.test.ts index ca3ba74e4..a14820cf8 100644 --- a/test/skill-e2e-autoplan-dual-voice.test.ts +++ b/test/skill-e2e-autoplan-dual-voice.test.ts @@ -199,7 +199,8 @@ Before dispatch, Read the bound methodology file completely using these actual ranges: ${JSON.stringify(methodology.readRanges)}. They contain the full current CEO methodology, not an abridged test rubric. Then execute the following exact current preflight and dual-voice section; preserve its native completion barrier, -input binding, outside fallback and consensus rules. +input binding, outside fallback and consensus rules. Run each bash block below as +delivered, alone in one Bash call; run any extra diagnostics as separate calls. ${principles}${preflight}${dual}`, { mode: 0o444, flag: 'wx' }); };