Repository navigation
Require a reviewed use-stage pass for an accepted platform status - #164
Merged
seathatflowsinourveins merged 5 commits intoSep 24, 2026
Merged
Conversation
A reviewed native_proven install pass (a version call proves the binary resolves, not that the component works) now supports conditional at most; accepted needs a reviewed use-stage pass at the current pin. A native_proven fail at install or use still blocks. Dated decision record with the alternatives and the overturning comparison: docs/decisions/2026-09-24-accepted-needs-use-stage.md. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 276101e677
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…ison and fix stale guidance Review of #164 (github-automation, reproduced by agent-lab-e9; Codex cross-family lane): the install-only early return ran before the Linux winner-level route, so a reviewed version receipt demoted a native_proven or measured_comparison winner accepted on registered evidence. The cap now sits inside the macOS receipt route and after the Linux winner-level routes; added evidence never lowers a status. Regression test for both native classes. The platform_status docstring and the generated component-matrix guidance no longer say an install pass qualifies. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
9 of 22 tasks
…g stages, add the missing status tests #164 review items 1-5: - use means the component doing its job: host_receipts.py record refuses --stage use when every command is a help or version call, validate rejects such a receipt, and the receipt summary counts one as install (its pass supports conditional at most, its fail still blocks). contributing-evidence.md defines install and use and its recording examples pass a functional --cmd. - component_matrix.build_alternative is host_verified only on a reviewed use pass (ACCEPTING_STAGES). - Tests: an install-stage fail blocks; install plus an unreviewed or dissented use pass is conditional; install-only plus a blocking fail is conditional on both platforms; a help-only use receipt counts as install. - QUALIFYING_STAGES is renamed BLOCKING_STAGES; verdict_flip_candidates reports supporting_receipts. - The decision record's overturn is a measurable comparison. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
… a narrow lint Codex re-check of be09a5e (P1-a, P1-b): the help/version classifier passed wrapped calls (sh -c 'rtk --version', rtk help gain), refused functional ones (du -h /dev/null), and its summary reclassification let a use fail stop blocking after an install pass on the same host (conditional to accepted in 44 of 82,944 synthetic comparisons). - The summary reclassification and the validate rule are removed; a recorded use receipt stays use. - record refuses --stage use only when every command is exactly a program and one of --help, --version, -V, help or version; documented as a knowingly incomplete convenience (-h left out: df -h, du -h). - contributing-evidence.md step 8 makes the reviewer record needs_changes on a use receipt that only calls help or version, however wrapped; the dissent rule then withholds accepted. - Tests: a use fail followed by an install pass still blocks (three command forms, both platforms); a help-only use pass is withheld by a needs_changes review, not by its text; the lint's exact matches. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
…otion reproduced separately Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
seathatflowsinourveins
deleted the
claude/platform-status-use-stage-20260924
branch
September 24, 2026 08:19
7 of 8 tasks
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
scripts/platform_status.py: only an independently reviewednative_provenuse-stage pass (current pin, second machine, platform identity) can make a winneracceptedon a platform. A reviewed install-stage pass, for example a version call, now supportsconditionalat most, with the reason "independently reviewed install-stage pass; accepted needs a reviewed use-stage pass". Anative_provenfail at either stage still blocks.Why
With
QUALIFYING_STAGES = {install, use}, an honest version-only install receipt from a second machine could move a winner fromconditionaltoaccepted, for example gitleaks once #160's receipts merge. The question was raised by agent-lab-e9 and routed by the #145 independent reviewer. It must land before #160 merges.Evidence
tests/test_platform_status.py::test_a_reviewed_install_pass_alone_is_conditional_on_either_platformfails on the previous rule (both platformsaccepted) and passes on this one.use; its pin-binding tests are unchanged in intent.scripts/landscape.py --root .passed, andscripts/component_matrix.py --checkreportedcheckedon all 32 rows: no recorded row claims more than the new rule derives.scripts/validate.pyexits 0.Decision record
docs/decisions/2026-09-24-accepted-needs-use-stage.mdnames the alternatives (install counts; use only, chosen; both required) and the comparison that would overturn it: a component whoseusestage cannot be exercised headlessly. It also notes the limit that the Linux winner-level route does not read receipt stages.Trust-path change, separate from verdict data.
🤖 Generated with Claude Code