fix(readiness): exclude the resurrecting PyAutoCTI from the release gate#91
Merged
Merged
Conversation
Heart's main went red (27 readiness tests + the polled-count test) after the CTI-resurrection config change (358ef2f) added PyAutoCTI to the config 'libraries' group. That group feeds _GATE_SHA_LIBS, so the release-validation gate began demanding a matching commit_sha for PyAutoCTI on every verdict — but CTI is mid-resurrection and not released, so it has no release evidence to confirm. Result: every verdict picked up a 'release validation partially unconfirmed (unknown HEAD: PyAutoCTI)' stale (-12), and the fixtures (5 classic libs) never matched. Separate 'polled for health' from 'gates the release': - config: PyAutoCTI carries release_gate: false (polled, not gated; flip when it ships). - readiness: new load_release_gate_names() = polled libraries minus release_gate:false; _GATE_SHA_LIBS and the libs default now use it. load_library_names() stays the full polled set. - tests: polled-count sanity 22 -> 25 (CTI added 3 repos); new test asserting CTI is polled but not release-gating. Full suite: 287 passed. The one-word docs change on #90 was unrelated; this failure pre-dated it on main. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ERDgNVKpQohYXVcJwAHzmw
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.
Problem
Heart's
mainwas red — 27test_readiness.pyfailures + the polled-count test. Bisect points at358ef2f("config: poll the resurrected CTI repos"), not any readiness code change:That commit added
PyAutoCTIto the configlibrariesgroup so the tick would poll it. Butheart/readiness.pyderives the release-validation gate set (_GATE_SHA_LIBS) and the library-scoring default from that same group. So every verdict began demanding a matchingcommit_shaforPyAutoCTI— and CTI is mid-resurrection (not released), so it has no release evidence to confirm. Result: a permanentrelease validation partially unconfirmed (unknown HEAD: PyAutoCTI)stale (−12 on every score), and the 5-classic-lib fixtures never matched → 27 failures.Fix — separate "polled for health" from "gates the release"
PyAutoCTIcarriesrelease_gate: false(still polled by the tick; not part of the release gate). Flip to true / drop the key when CTI ships.load_release_gate_names()= polled libraries minusrelease_gate: false._GATE_SHA_LIBSand thelibsdefault now use it;load_library_names()stays the full polled set. Absent key ⇒ gating (default) — only an explicitfalseopts out.22 → 25(CTI added 3 repos across groups); newtest_cti_polled_but_not_release_gating.Verification
python3 -m pytest→ 287 passed (was 27 failed / 259 passed onmain).Notes
AGENTS.mdedit) and is unrelated to it — surfaced while merging the organism docs sweep.🤖 Generated with Claude Code
Generated by Claude Code