fix(gate-check): stage decisions read from the Decisions table only; Stage 7 accepts a dated CONFIRMED - #176
Merged
Merged
Conversation
…Stage 7 accepts a dated CONFIRMED has_confirmed_decision and check_stage_7 scanned every pipe row, so an Open-questions row numbered 4 or 7 with Status CONFIRMED passed the stage. Both now count only rows under a header whose first cell is Stage, falling back to the old scan when no such header exists. Stage 7 now uses the word-anchored CONFIRMED match the other stages use. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VJgWP5vEoAsNsJYqCDMGNw
MendixMau
marked this pull request as ready for review
September 29, 2026 23:49
… Unreleased lines) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VJgWP5vEoAsNsJYqCDMGNw
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.
What changed and why (one paragraph)
has_confirmed_decision(Stages 3 and 4) andcheck_stage_7scanned every pipe row in the register. The template register has a second table, Open questions (| # | Question | Raised at | Status |), so a question numbered 4 or 7 with Status CONFIRMED passed that ✋ gate with no decision behind it. Both readers now count only rows under a header whose first cell isStage. A register with no such header keeps the old every-row scan, so hand-built registers do not regress. Stage 7 also matched the status string-exactly, soCONFIRMED 2026-08-10failed Stage 7 while passing Stages 3 and 4. It now uses the same word-anchored match (TD-07);NOT CONFIRMEDand a Notes cell that mentions the word still fail.Field evidence
Ran
bin/gate-check.shon scratch projects, pre-fix (master cee5c9a) vs this branch:CONFIRMED 2026-08-10CONFIRMED 2026-08-10onlyAlso ran against a copy of a real greenfield PoC register (Mendix 11.x, 69 decision rows plus Open questions and a defects table): Stage 4 PASS as before, Stage 7 WAIVED by entry mode as before.
Checklist
tests/wave2/test-bug03-gates.sh, T7's message grep updated. Verified by running the gate on the same scratch registers; the fixture itself runs in CI🤖 Generated with Claude Code
https://claude.ai/code/session_01VJgWP5vEoAsNsJYqCDMGNw