mind: file the three CTI CI follow-ups left open by Phase 5 - #300
Merged
Conversation
All three were surfaced by the arcticpy / wiki-currency / Phase-5-smoke work shipped 2026-08-24 and deliberately not taken then, to avoid widening those tasks. Each carries the evidence already gathered so a fresh session does not re-derive it. draft/maintenance/ci/autocti_workspace_navigator_check.md (priority: high) Heart requires ["Smoke Tests", "Navigator Check"] for the `workspaces` group; autocti_workspace has only the former. This is not cosmetic: verified against heart/checks/ci_status.py that a required workflow with no runs never satisfies all_green, so the repo rolls up as permanently `in_progress` — never green, never red. It can go red but cannot go green, so the readiness gate can never see it as CI-clean. Adding Smoke Tests was necessary but not sufficient. draft/maintenance/ci/wiki_currency_check_version_gate.md The regenerated API baseline will rot again: --check-version gates on a hash of the ENTIRE public surface of autoarray and autofit, and the red it just produced was 14 symbols of which not one is cited by the assistant. The workflow installs from the libraries' main clones, so the clock is every export-touching merge. Two options written up (gate on removals only, or let --scope all subsume it); the task is to choose deliberately. Records that pinning to a released stack was already considered and rejected. draft/maintenance/ci/heart_smoke_table_autocti.md config/repos.yaml's `smoke:` block has no autocti entries and import_names has no PyAutoCTI, so heart/smoke.py cannot prepare or run either CTI smoke suite locally — a blind spot exactly where two suites just landed. Not a two-line config edit: a composite action cannot be called from smoke.py, so the arcticpy recipe needs an equivalent without re-creating the second copy PyAutoHeart#170 just removed. Three options written up. Declared Difficulty: medium on all three. The sizing faculty derives too-large/too-large/large, but it scores on prompt length and these are long because they carry measured evidence, not because the work is large. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018nDAxBEavkzb6Zkz1cYHef
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.
Three prompts for the follow-ups surfaced by the arcticpy / wiki-currency / Phase-5-smoke work shipped 2026-08-24 and deliberately not taken then, so those tasks stayed scoped. Each carries the evidence already gathered, so a fresh session doesn't re-derive it.
draft/maintenance/ci/autocti_workspace_navigator_check.md— priority: highHeart requires
["Smoke Tests", "Navigator Check"]for theworkspacesgroup; autocti_workspace has only the former.This is not cosmetic. Verified against
heart/checks/ci_status.py's realrollup():A required workflow with no runs never satisfies
all_green, so the repo rolls up permanentlyin_progress— it can go red but can never go green, and the readiness gate can never see it as CI-clean. Adding Smoke Tests in #28 was necessary but not sufficient.The prompt also notes that
Navigator Checkis not a Heart reusable — it lives per-workspace — so the work starts by reading a sibling that has one, not by inventing a check from the name.draft/maintenance/ci/wiki_currency_check_version_gate.mdThe baseline regenerated yesterday will rot again.
--check-versiongates on a hash of the entire public surface of autoarray and autofit; the red it just produced was 14 symbols, of which not one is cited by the assistant. The workflow installs from the libraries'mainclones, so the clock is every export-touching merge into either.Two options written up — gate on removals only, or accept that
--scope allsubsumes it as a gate — with the observation that even removals produce false reds here (both removed symbols were uncited), so removals of cited symbols may be the real line. The task is to choose deliberately.Records that pinning to a released stack was already considered and rejected: autocti's PyPI release is pre-resurrection, so that would grade today's docs vacuously green.
draft/maintenance/ci/heart_smoke_table_autocti.mdconfig/repos.yaml'ssmoke:block has no autocti entries andimport_nameshas no PyAutoCTI, soheart/smoke.pycannot prepare or run either CTI smoke suite locally — a blind spot exactly where two suites just landed.Not a two-line config edit: a composite action can't be called from
smoke.py, so the arcticpy recipe needs a local equivalent without re-creating the second copy PyAutoHeart#170 just removed. Three options written up, plus the verified recipe and the two traps (--no-depssuppresses scipy/matplotlib; arcticpy has no__version__).Sizing note
Declared
Difficulty: mediumon all three. The sizing faculty derives too-large/too-large/large — but it scores on prompt length (107 lines / 627 words), and these are long because they carry measured evidence, not because the work is large. Flagging the disagreement rather than hiding it.lifecycle check,index --checkOK; dashboard regenerated. (datesreports 2 undated prompts — both pre-existing, neither mine.)Generated by Claude Code