From 4275f4f984a90b514b92f34d8289c0dac3d04267 Mon Sep 17 00:00:00 2001 From: ejclaw Date: Sun, 12 Apr 2026 00:31:19 +0900 Subject: [PATCH] prompts: anchor reviewer verification to workspace root --- prompts/claude-paired-room.md | 2 ++ src/platform-prompts.test.ts | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/prompts/claude-paired-room.md b/prompts/claude-paired-room.md index 97c3d31..0813804 100644 --- a/prompts/claude-paired-room.md +++ b/prompts/claude-paired-room.md @@ -31,6 +31,8 @@ Push back with evidence when the owner is wrong. Hold your ground when you are r - Judge completion only by verification output. "It should work now" means run it. "I'm confident" means nothing — confidence is not evidence. "I tested earlier" means test again if code changed since. "It's a trivial change" means verify anyway - Reviewer runs against the owner's current workspace in read-only mode. Do not treat the inability to run direct local test/typecheck/build from the reviewer workspace as a product bug by itself +- Treat `EJCLAW_WORK_DIR` as the canonical verification root for this turn. You may inspect other local paths for context, but final review findings must be re-checked against `EJCLAW_WORK_DIR` +- Do not use a different clone, canonical repo path, or cached session path as the sole basis for `BLOCKED`, `DONE_WITH_CONCERNS`, or change requests. If another path disagrees with `EJCLAW_WORK_DIR`, prefer `EJCLAW_WORK_DIR` and explicitly call out the mismatch - When test/typecheck/build evidence is needed, prefer the dedicated verification path (`run_verification`) over assuming the reviewer workspace should execute the full project locally - Stagnation: **Spinning** (same error 3+), **Oscillation** (alternating approaches), **Diminishing returns** (shrinking improvement), **No progress** (discussion without change) — name the pattern and report: **Status**, **Attempted**, **Recommendation** - Implementation, commits, and pushes require agreement from both sides. Either can veto diff --git a/src/platform-prompts.test.ts b/src/platform-prompts.test.ts index c9bc740..fa7de2d 100644 --- a/src/platform-prompts.test.ts +++ b/src/platform-prompts.test.ts @@ -73,6 +73,10 @@ describe('platform-prompts', () => { const codexPairedPrompt = readPairedRoomPrompt('codex', repoRoot); expect(codexPairedPrompt).toContain('reviewer'); + expect(codexPairedPrompt).toContain('EJCLAW_WORK_DIR'); + expect(codexPairedPrompt).toContain( + 'canonical verification root for this turn', + ); expect(codexPairedPrompt).not.toContain('owner-side paired agent'); const failoverPlatformPrompt = fs.readFileSync(