main
md 79 lines 4.24 KB
Rendered Raw
1 ---
2 name: "reviewer-protocol"
3 description: "Reviewer rejection workflow and strict lockout semantics"
4 domain: "orchestration"
5 confidence: "high"
6 source: "extracted"
7 ---
8
9 ## Context
10
11 When a team member has a **Reviewer** role (e.g., Tester, Code Reviewer, Lead), they may approve or reject work from other agents. On rejection, the coordinator enforces strict lockout rules to ensure the original author does NOT self-revise. This prevents defensive feedback loops and ensures independent review.
12
13 ## Patterns
14
15 ### Reviewer Rejection Protocol
16
17 When a team member has a **Reviewer** role:
18
19 - Reviewers may **approve** or **reject** work from other agents.
20 - On **rejection**, the Reviewer may choose ONE of:
21 1. **Reassign:** Require a *different* agent to do the revision (not the original author).
22 2. **Escalate:** Require a *new* agent be spawned with specific expertise.
23 - The Coordinator MUST enforce this. If the Reviewer says "someone else should fix this," the original agent does NOT get to self-revise.
24 - If the Reviewer approves, work proceeds normally.
25
26 ### Strict Lockout Semantics
27
28 When an artifact is **rejected** by a Reviewer:
29
30 1. **The original author is locked out.** They may NOT produce the next version of that artifact. No exceptions.
31 2. **A different agent MUST own the revision.** The Coordinator selects the revision author based on the Reviewer's recommendation (reassign or escalate).
32 3. **The Coordinator enforces this mechanically.** Before spawning a revision agent, the Coordinator MUST verify that the selected agent is NOT the original author. If the Reviewer names the original author as the fix agent, the Coordinator MUST refuse and ask the Reviewer to name a different agent.
33 4. **The locked-out author may NOT contribute to the revision** in any form — not as a co-author, advisor, or pair. The revision must be independently produced.
34 5. **Lockout scope:** The lockout applies to the specific artifact that was rejected. The original author may still work on other unrelated artifacts.
35 6. **Lockout duration:** The lockout persists for that revision cycle. If the revision is also rejected, the same rule applies again — the revision author is now also locked out, and a third agent must revise.
36 7. **Deadlock handling:** If all eligible agents have been locked out of an artifact, the Coordinator MUST escalate to the user rather than re-admitting a locked-out author.
37
38 ## Examples
39
40 **Example 1: Reassign after rejection**
41 1. Fenster writes authentication module
42 2. Hockney (Tester) reviews → rejects: "Error handling is missing. Verbal should fix this."
43 3. Coordinator: Fenster is now locked out of this artifact
44 4. Coordinator spawns Verbal to revise the authentication module
45 5. Verbal produces v2
46 6. Hockney reviews v2 → approves
47 7. Lockout clears for next artifact
48
49 **Example 2: Escalate for expertise**
50 1. Edie writes TypeScript config
51 2. Keaton (Lead) reviews → rejects: "Need someone with deeper TS knowledge. Escalate."
52 3. Coordinator: Edie is now locked out
53 4. Coordinator spawns new agent (or existing TS expert) to revise
54 5. New agent produces v2
55 6. Keaton reviews v2
56
57 **Example 3: Deadlock handling**
58 1. Fenster writes module → rejected
59 2. Verbal revises → rejected
60 3. Hockney revises → rejected
61 4. All 3 eligible agents are now locked out
62 5. Coordinator: "All eligible agents have been locked out. Escalating to user: [artifact details]"
63
64 **Example 4: Reviewer accidentally names original author**
65 1. Fenster writes module → rejected
66 2. Hockney says: "Fenster should fix the error handling"
67 3. Coordinator: "Fenster is locked out as the original author. Please name a different agent."
68 4. Hockney: "Verbal, then"
69 5. Coordinator spawns Verbal
70
71 ## Anti-Patterns
72
73 - ❌ Allowing the original author to self-revise after rejection
74 - ❌ Treating the locked-out author as an "advisor" or "co-author" on the revision
75 - ❌ Re-admitting a locked-out author when deadlock occurs (must escalate to user)
76 - ❌ Applying lockout across unrelated artifacts (scope is per-artifact)
77 - ❌ Accepting the Reviewer's assignment when they name the original author (must refuse and ask for a different agent)
78 - ❌ Clearing lockout before the revision is approved (lockout persists through revision cycle)
79 - ❌ Skipping verification that the revision agent is not the original author