Part of the records-as-JSON protocol push (sworn ADR-0009). Once the loop records have published schemas (board/spec/proof/journeys + reconciled slice-status), the four role prompts must instruct each role to emit records as schema-validated JSON (structured output), not as hand-written markdown that a parser later scrapes. This is what makes the protocol portable across consumption models (manual slash commands, automation, end-to-end orchestration).
Scope — claude/baton/role-prompts/{planner,implementer,verifier,captain}.md
Depends on the schema issues landing first (prompts reference the schemas).
Ref: sworn ADR-0009 (emitted-vs-hand-authored framing; rendering is the implementation's job).
Part of the records-as-JSON protocol push (sworn ADR-0009). Once the loop records have published schemas (board/spec/proof/journeys + reconciled slice-status), the four role prompts must instruct each role to emit records as schema-validated JSON (structured output), not as hand-written markdown that a parser later scrapes. This is what makes the protocol portable across consumption models (manual slash commands, automation, end-to-end orchestration).
Scope —
claude/baton/role-prompts/{planner,implementer,verifier,captain}.mdboard.json+ per-slicespec.jsonagainst their schemas; intake stays prose (LLM-drafted, human-reviewed).proof.json(+ renderproof.md); updatestatus.jsonagainstslice-status-v1.Depends on the schema issues landing first (prompts reference the schemas).
Ref: sworn ADR-0009 (emitted-vs-hand-authored framing; rendering is the implementation's job).