Finding
The actions-lock cliff is dated and unsurvivable as set.
ENFORCE_ACTIONS_LOCK_FROM defaults to 2026-10-01. Source: developer/.claude/checkpoints/2026-09-22-cicd-pipeline-delivery.md §5-1
(duplicate of developer/.claude/checkpoints/2026-09-22-pipeline-delivery-summary.md §7-12).
Complete census, gh api on default branches, 2026-09-22:
| Population |
Count |
| governance callers |
368 |
…with actions.lock |
200 |
| …without |
163 |
| …no workflows dir |
5 |
The lockless 163 split 154 ALLPINNED / 9 UNPINNED. So arming the gate
estate-wide reddens 9 today and 163 on 2026-10-01, with no human action in
between and no merge required: all 368 callers are SHA-pinned, so merging to
standards main reaches nobody — but a runtime date baked into an
already-distributed SHA needs no bump to fire.
Why this is the dangerous shape
A date inside a pinned artefact is the one mechanism in this estate that can change
caller behaviour with nobody in the loop. Everything else requires a deliberate pin
bump.
Acceptance criteria
Decision sheet: #787
Finding
The actions-lock cliff is dated and unsurvivable as set.
ENFORCE_ACTIONS_LOCK_FROMdefaults to 2026-10-01. Source:developer/.claude/checkpoints/2026-09-22-cicd-pipeline-delivery.md§5-1(duplicate of
developer/.claude/checkpoints/2026-09-22-pipeline-delivery-summary.md§7-12).Complete census,
gh apion default branches, 2026-09-22:actions.lockThe lockless 163 split 154 ALLPINNED / 9 UNPINNED. So arming the gate
estate-wide reddens 9 today and 163 on 2026-10-01, with no human action in
between and no merge required: all 368 callers are SHA-pinned, so merging to
standardsmainreaches nobody — but a runtime date baked into analready-distributed SHA needs no bump to fire.
Why this is the dangerous shape
A date inside a pinned artefact is the one mechanism in this estate that can change
caller behaviour with nobody in the loop. Everything else requires a deliberate pin
bump.
Acceptance criteria
.machine_readable/, registered inscripts/check-exemption-ratchet.shENFORCE_ACTIONS_LOCK_FROMis moved out of the pinned artefact into anenv/ledger input, so the date is not distributed inside a SHA
arrives first
lock debt: N callers) on every runDecision sheet: #787