# Demo-Freeze Hotfix Procedure — a11oy > Author: Yachay · Doctrine v11 LOCKED (749/14/163) · cosign keyid: szlholdings-cosign > Freeze window: **2026-06-09 .. 2026-06-20 (UTC)**. During this window the > `demo-freeze` CI gate REJECTS any push/PR whose branch is not `hotfix/*`. ## The only permitted write path during the freeze ```bash # 1. branch off main with a hotfix/ prefix (CI gate only allows hotfix/*) git checkout main && git pull git checkout -b hotfix/ # 2. make the smallest possible fix, then ONE signed commit. # The commit message MUST contain the literal tag [demo-hotfix] AND an issue ref. git add -p git commit -s -m "fix(a11oy): [demo-hotfix] Fixes #. " # 3. open a PR into main. Two checks must pass: # demo-freeze / guard -> branch is hotfix/* ✅ # demo-freeze-hotfix-validate -> single signed commit, [demo-hotfix], issue ref, DCO ✅ gh pr create --base main --head hotfix/ --fill # 4. AUTO-MERGE rule: between T-7 (2026-06-09) and T+0, ONLY hotfix/* PRs merge. ``` ## If the hotfix goes wrong — roll back the live Space ```bash HF_TOKEN= ops/demo-freeze/rollback.sh # resets SZLHOLDINGS/a11oy to frozen baseline HF SHA a436bebd551d2221348b99e29d9ea6c1b0311402 ``` ## Hard rules (CI-enforced, not advisory) - branch name **must** match `hotfix/*` - PR **must** be a **single** commit (squash if needed) - commit message **must** contain `[demo-hotfix]` - commit message **must** reference an issue (`#123`, `fixes #123`, …) - commit **must** be DCO-signed (`git commit -s`) ## Frozen baseline (tag `demo-freeze-baseline-2026-06-09`) - HF Space `SZLHOLDINGS/a11oy` @ `a436bebd551d2221348b99e29d9ea6c1b0311402` - GitHub `szl-holdings/a11oy` @ `c0c4ad164ccb258f34cea7b433fd4bf27cc6120d`