feat(harness): Builder hard-stop protocol — stop and escalate on walls - #108
Open
MKuckert wants to merge 2 commits into
Open
feat(harness): Builder hard-stop protocol — stop and escalate on walls#108MKuckert wants to merge 2 commits into
MKuckert wants to merge 2 commits into
Conversation
added 2 commits
September 3, 2026 12:06
…s (issue #90) Adds a <hard_stop_protocol> section to Builder.md with 5 triggers: 2 consecutive identical failures, permission wall, out-of-scope fix, ~80/100 step budget, reviewer iteration limit. Exit path writes a ## Blocker entry in PLAN.md, triggers a Committer commit, and escalates via question. Also: - doom_loop: allow -> deny, steps: 500 -> 100 in Builder frontmatter - Planner gains a 4th mandatory interrogation question (Required Tooling & Permissions) - implement_next_task.md documents the escalation line - AGENTS.md Builder section gains a Hard Stop bullet Note: doom_loop deny + steps 100 are mechanical backstops. Doom-loop platform semantics verified only against in-repo docs (opencode/opencode.jsonc documents 3-repeat identical-input trigger); installed opencode source not available in sandbox, verification blocked. For issue #90
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #90
Problem
The Builder burns up to 500 steps when it hits a wall — denied command (permission wall), build failing repeatedly with the same error, or an out-of-scope fix — instead of stopping and escalating.
Changes
Builder.md— new<hard_stop_protocol>: 5 objective triggers (2× consecutive identical-signature failure, permission denial, out-of-scope fix anchored to the PLAN.md task scope, ~80/100 self-counted step budget, CodeReviewer 3-strike deadlock). Identical exit behavior for all: stop → write## Blockerto PLAN.md (trigger, error signature, what was tried, exact permission/change needed) → commit via Committer → escalate viaquestion. New principle 8: "Permission walls are stop signals, not puzzles."Builder.mdfrontmatter — mechanical backstops:doom_loop: allow → deny,steps: 500 → 100.Planner.md— 4th mandatory interrogation question +## Required Tooling & Permissionstemplate section, so permission gaps surface before the build starts.implement_next_task.md/ rootAGENTS.md— aligned hard-stop wording.Review
Plan reviewed over 2 rounds (CHANGES REQUESTED → APPROVED); code review APPROVED. Full record in
PLAN.md.Notes
main(opencode harness), independent of the WIP pi port (WIP: Port OpenCode harness to pi (pi-open-agents + permission-system) #107).doom_loopplatform semantics verified against in-repo docs only (opencode/opencode.jsoncdocuments the 3-identical-repeat trigger); installed opencode source was not available in the sandbox.