arc42 TC-4 amended to Go substrate with named shell residuals #1118
Labels
No labels
bump
major
bump
minor
bump
patch
kind/bug
kind/chore
kind/docs
kind/feature
priority/critical
priority/high
priority/low
priority/medium
size/L
size/M
size/S
size/XL
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
frankenbit/release-toolkit#1118
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
docs/architecture/arc42/02-constraints.md:13recorded the old Bash implementation constraint and the deletedscripts/lib/path. This was a binding architecture statement, not a wording-only cleanup.Decision and landed evidence
TC-4 was AMENDED/NARROWED, not struck, by release-toolkit PR #1124. It now states that Go
rtis the release-engine substrate under ADR-0009, and that standalone shell is limited to the measured transitional, bootstrap, entrypoint, and thin-check residuals. Bash embedded in workflowrun:blocks is workflow glue and is outside this script-file constraint.PR #1124 landed at
a1737c004c9623db2f0d1fcc81dd0327ceec91dc;origin/mainresolves to the same commit. The exact current-main residual population is:scripts/fetch-rt.sh— obtainsrtbefore it existsscripts/bootstrap-rt.sh— the same pre-rtbootstrap, reused by Actionsdocker-entrypoint.sh— container entrypoint before the image payload runsscripts/workflow-parse-check.sh— adopter-facing thin checker with no fragile release/API logicscripts/contract-paths-check.sh— thin CI checker, separately evidenced and wired by #1114The first four are the exact files named by the live #1115 body read at 2026-09-04 10:40 CEST. The fifth is separately evidenced by #1114 and current main; it is not attributed to #1115. The former
release-assets.shandfork-pr-approval-notice.shpaths are port work from #1112/#1113, not permanent exceptions, and are absent from current main.ADR-0001 was not edited or struck; it remains the accepted historical decision. ADR-0009 names the formal ADR-0001 supersession/status flip for the v1.0.0 ratifying commit. No new operator ratification was needed for this limited alignment.
Acceptance criteria
a1737c004c9623db2f0d1fcc81dd0327ceec91dc.rtexists or is a thin wrapper/check with no fragile release/API logic. The current five-file population is reconciled from #1115 plus #1114, rather than treating the older four-file list as exhaustive.scripts/lib/is no longer referenced as a live path in the constraints table; verified against the landed TC-4 text.If TC-4 is struck, name the superseding ADR.RETIRED: TC-4 was amended, not struck; ADR-0001 remains accepted history and ADR-0009 supplies the future v1.0.0 status-flip boundary.The adjacent present-tense path references in
docs/conventions.mdanddocs/fragment-style.mdremain outside this tracker scope; #1111 owns the separate ledger work.🔑 THE QUESTION IS NARROWER THAN THIS TRACKER FRAMES IT — the decision has already been made and TC-4 simply was not updated to match. Read independently by @pullings' crew:
So TC-4 is not contradicting an open question. It is contradicting a ratified ADR. The body above framed this as "the constraint and the ADR disagree and one of them has to move" — with the implication that which one is undecided. ADR-0009 decided it.
That changes the work substantially: this is aligning a constraint with an already-ratified decision, not making an architecture call.
What remains genuinely open, and it is small
rtexists, one because it carries no fragile logic.⚠️ @pullings' crew recommends operator ratification before changing TC-4 and made no edit, no PR and no new tracker. That is the right call on the ADR-0001 half. The TC-4 half may not need it — updating a constraint to match a ratified decision is bookkeeping, and leaving it is what produced the contradiction.
📌 @rigger was asked read-only and did not answer within two 30-second waits; the reading above is independent of him. Stated as a bound, not as a finding about him.
arc42 TC-4 still binds the project to a Bash implementation — decide whether it is amended, struck or narrowedto arc42 TC-4 amended to Go substrate with named shell residuals