You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
install-tools.sh regenerated estate-wide WITHOUT the #678 cure — fake exit-0 gate re-propagated to 245/248 copies (fix the template, not the copies) #702
The estate-wide regeneration of .machine_readable/scripts/lifecycle/install-tools.sh (post-#678) shipped without the #678 cure. The fake exit-0 gate was re-propagated: of 248 copies on disk today, 245 have no mise branch and no non-zero exit path — the else-path still ends echo "Installer complete." and exits 0. On a bare CI runner every one of the 245 no-ops green.
Evidence (measured 2026-08-31, during #678 re-verification)
31 repos are the sweep-victim shape (.mise.toml present, .tool-versions absent, script still tests .tool-versions, no mise support). 26 of them fire the no-op unconditionally today (no branch file present at all): stateful-artefacts, methodologies, session-sentinel, boj-server, idrisiser, somethings-fishy, hermeneia, cicd-squabbler, dictask, iseriser, ideas-to-alphas, knot-rider, patch-bridge, snifs, natsci-studio, lithoglyph, contractiles, bofj-kitt, hybrid-automation-router, nesy-solver, game-server-admin, fraying-model-computational-testbed, cookie-rebound, gv-clade-index, road-skate, proof-burrower.
The remaining 5 (bitfuckit, recon-silly-ation, panoply, scaffoldia, trope-checker) match a branch locally via flake.nix/guix.scm, but still exit 0 on a runner with neither.
The one lesson
Fixing individual copies is futile until the template source is cured. Any per-repo sweep will be overwritten by the next regeneration, exactly as happened here.
First step
Cure the generator/template copy of install-tools.sh (rsr-template-repo lifecycle scripts): add a mise branch (.mise.toml/mise.toml) and make the no-match path exit 1 with a loud message. Only then sweep the 248 deployed copies.
Found while re-verifying #678; filed per the discoveries-become-issues rule.
Claim
The estate-wide regeneration of
.machine_readable/scripts/lifecycle/install-tools.sh(post-#678) shipped without the #678 cure. The fake exit-0 gate was re-propagated: of 248 copies on disk today, 245 have no mise branch and no non-zero exit path — the else-path still endsecho "Installer complete."and exits 0. On a bare CI runner every one of the 245 no-ops green.Evidence (measured 2026-08-31, during #678 re-verification)
9d60ab91×193,07914100×36. The generation Estate: 132 repos track files their own .gitignore hides; template-sync sweep (92 repos) left a SILENT fake gate in 29 #678 measured (a0b3846b/7d3b7536/191227c7) is gone — so a regeneration definitely ran after the issue was filed, and did not include the fix..mise.tomlpresent,.tool-versionsabsent, script still tests.tool-versions, no mise support). 26 of them fire the no-op unconditionally today (no branch file present at all): stateful-artefacts, methodologies, session-sentinel, boj-server, idrisiser, somethings-fishy, hermeneia, cicd-squabbler, dictask, iseriser, ideas-to-alphas, knot-rider, patch-bridge, snifs, natsci-studio, lithoglyph, contractiles, bofj-kitt, hybrid-automation-router, nesy-solver, game-server-admin, fraying-model-computational-testbed, cookie-rebound, gv-clade-index, road-skate, proof-burrower.The one lesson
Fixing individual copies is futile until the template source is cured. Any per-repo sweep will be overwritten by the next regeneration, exactly as happened here.
First step
Cure the generator/template copy of
install-tools.sh(rsr-template-repo lifecycle scripts): add a mise branch (.mise.toml/mise.toml) and make the no-match pathexit 1with a loud message. Only then sweep the 248 deployed copies.Found while re-verifying #678; filed per the discoveries-become-issues rule.