Repository navigation
Fix pipeline-gate commit deadlock with mark/seal lifecycle - #2
Merged
Merged
Conversation
…mark/seal lifecycle Public port of the bob-the-builder doctrine: SPEC->RED->GREEN->REFACTOR-> CODE-QUALITY->SECURITY-FANOUT->WORKFLOW->ULTRA->QUIZ->COMMIT. Every gated step leaves a hash-chained, HMAC-signed receipt written from real execution (system pytest runner, ultracode run receipts pinned by file-bytes sha + workflow name, panel execution receipt bound by task_id/artifact hash). The gate re-runs pytest live, re-hashes covered files, and fails closed on anything it cannot verify. Commit lifecycle (the deadlock fix, mirroring the private reference's mark/seal split): pre-commit `bob gate --mark-pass` validates and records gate-pass.json but keeps ACTIVE; post-commit `bob seal` releases ACTIVE only with a recorded pass, stamping the landed commit hash. Sealing in pre-commit released the run before the commit landed, so a require-run policy blocked the very commit that passed. `bob hook-install` writes pre-commit, pre-merge-commit, and post-commit hooks; AGENT_ULTRA_REQUIRE_RUN=1 makes the pipeline mandatory. Regression test drives the cycle through real git: proven commit lands, post-commit seals, unproven follow-up commit blocks. CLI: agent-ultra bob run|gate|seal|hook-install|status (alias: build). Mock mode runs keyless end to end; doctor + demo prove the pass and three blocked-fraud scenarios; 31 offline bob tests (171 total); leak gate clean. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.
This PR fixes the pipeline-gate commit deadlock where the pre-commit gate could complete/seal a run before the commit landed, deleting ACTIVE and causing REQUIRE_RUN policy to block the same proven commit.
Changes
bob seal --if-passed.bob hook-installto install pre-commit, pre-merge-commit, and post-commit hooks.AGENT_ULTRA_REQUIRE_RUN=1behavior without grace windows or weakened checks.Verification
Upgrade note
Anyone using older hooks with
bob gate --complete-on-passshould run:🤖 Generated with Claude Code