From ce5761701d584d5e5ef03d6880424f9d9ee27b4b Mon Sep 17 00:00:00 2001 From: Renn F Date: Tue, 12 May 2026 06:34:24 +0200 Subject: [PATCH] =?UTF-8?q?docs(prompts):=20D1=20fixup=20=E2=80=94=20role-?= =?UTF-8?q?correct=20circuit-breaker=20escalation=20paths?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit QA / Documenter / Board don't have i_am_blocked in their manifests. The D1 snippet's "escalate via i_am_blocked" line is now role-correct: - QA / Documenter: unclaim(task_id) + dm(cell-pm, ...) with rejection - Board: dm(ceo, ...) for PO/HoM; Auditor uses note(scope='reflect', ...) --- agents/prompts/roles/board.md | 6 ++++-- agents/prompts/roles/documenter.md | 6 ++++-- agents/prompts/roles/qa.md | 6 ++++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/agents/prompts/roles/board.md b/agents/prompts/roles/board.md index 0b5f4c98..f9691473 100644 --- a/agents/prompts/roles/board.md +++ b/agents/prompts/roles/board.md @@ -102,5 +102,7 @@ immediately. The breaker tracks repeated rejections of the same verb Read the `remediate` field — it names what was missing across the last N rejections. Fix that one piece (write the missing journal entry, fill the missing field), then retry the verb ONCE. If the breaker fires -again, escalate via `i_am_blocked` with the rejection details — that -signal indicates a real wedge, not a transient error. +again, you don't have an `i_am_blocked` verb — `dm(recipient='ceo', text=...)` +with the rejection details (PO/HoM only; Auditor uses `note(scope='reflect', text=...)`) +so the wedge is captured. The signal indicates a real wedge, not a transient +error. diff --git a/agents/prompts/roles/documenter.md b/agents/prompts/roles/documenter.md index c2d02668..93c2b313 100644 --- a/agents/prompts/roles/documenter.md +++ b/agents/prompts/roles/documenter.md @@ -100,5 +100,7 @@ immediately. The breaker tracks repeated rejections of the same verb Read the `remediate` field — it names what was missing across the last N rejections. Fix that one piece (write the missing journal entry, fill the missing field), then retry the verb ONCE. If the breaker fires -again, escalate via `i_am_blocked` with the rejection details — that -signal indicates a real wedge, not a transient error. +again, you don't have an `i_am_blocked` verb — `unclaim(task_id)` to +release the claim back to pending and `dm(recipient='', text=...)` +with the rejection details so the PM knows it's a real wedge, not a +transient error. diff --git a/agents/prompts/roles/qa.md b/agents/prompts/roles/qa.md index 36f7aea0..68fb6dfb 100644 --- a/agents/prompts/roles/qa.md +++ b/agents/prompts/roles/qa.md @@ -102,5 +102,7 @@ immediately. The breaker tracks repeated rejections of the same verb Read the `remediate` field — it names what was missing across the last N rejections. Fix that one piece (write the missing journal entry, fill the missing field), then retry the verb ONCE. If the breaker fires -again, escalate via `i_am_blocked` with the rejection details — that -signal indicates a real wedge, not a transient error. +again, you don't have an `i_am_blocked` verb — `unclaim(task_id)` to +release the claim back to pending and `dm(recipient='', text=...)` +with the rejection details so the PM knows it's a real wedge, not a +transient error.