From 85d7ac128b92bd75f736581d94fb6fb4323726a7 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 25 Jul 2026 16:56:32 +0600 Subject: [PATCH 1/3] [drill] positive control: benign on:push echo workflow --- .github/workflows/drill-echo.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 .github/workflows/drill-echo.yml diff --git a/.github/workflows/drill-echo.yml b/.github/workflows/drill-echo.yml new file mode 100644 index 00000000..a7a8cb5b --- /dev/null +++ b/.github/workflows/drill-echo.yml @@ -0,0 +1,12 @@ +# Positive control for the sanitize drill (design section 4, R25): a benign +# self-authored on:push workflow, direct-pushed by the admin. Its run FIRING +# proves the zero-runs assertion instrument can show non-zero. Deleted after. +name: drill-echo +on: push +jobs: + echo: + runs-on: windows-latest + steps: + - name: echo + shell: pwsh + run: Write-Host "positive control fired on $env:GITHUB_REF" From 1d23e8f72791b303095f5f12533c231ed1e8aad8 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 25 Jul 2026 16:57:08 +0600 Subject: [PATCH 2/3] [drill] robot-tag attempt with explicit contents:write --- .github/workflows/drill-echo.yml | 12 ------------ .github/workflows/drill-robot-tag.yml | 24 ++++++++++++++++++++++++ 2 files changed, 24 insertions(+), 12 deletions(-) delete mode 100644 .github/workflows/drill-echo.yml create mode 100644 .github/workflows/drill-robot-tag.yml diff --git a/.github/workflows/drill-echo.yml b/.github/workflows/drill-echo.yml deleted file mode 100644 index a7a8cb5b..00000000 --- a/.github/workflows/drill-echo.yml +++ /dev/null @@ -1,12 +0,0 @@ -# Positive control for the sanitize drill (design section 4, R25): a benign -# self-authored on:push workflow, direct-pushed by the admin. Its run FIRING -# proves the zero-runs assertion instrument can show non-zero. Deleted after. -name: drill-echo -on: push -jobs: - echo: - runs-on: windows-latest - steps: - - name: echo - shell: pwsh - run: Write-Host "positive control fired on $env:GITHUB_REF" diff --git a/.github/workflows/drill-robot-tag.yml b/.github/workflows/drill-robot-tag.yml new file mode 100644 index 00000000..7e7a2421 --- /dev/null +++ b/.github/workflows/drill-robot-tag.yml @@ -0,0 +1,24 @@ +# Robot-tag drill (design section 4, R26/R27): an admin-authored throwaway +# workflow that EXPLICITLY declares contents:write (otherwise the read-only +# default token refuses BEFORE the ruleset is consulted -- fused-guard, and +# the drill would discriminate nothing) and attempts to create a v* tag. +# EXPECTED: the v-tags-admin-only ruleset rejects the push (github-actions is +# not a bypass actor). This drill simultaneously MEASURES the D10 limit: an +# explicit permissions: key DOES elevate past the read-only default. +name: drill-robot-tag +on: push +permissions: + contents: write +jobs: + tag: + runs-on: windows-latest + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: attempt v-tag creation with GITHUB_TOKEN + shell: pwsh + run: | + git tag v0.0.1-b1 HEAD + git push origin v0.0.1-b1 + if ($LASTEXITCODE -eq 0) { Write-Host 'DRILL-FAIL: robot tag push SUCCEEDED (ruleset did not block)'; exit 1 } + Write-Host "DRILL-OK: robot tag push REFUSED (exit $LASTEXITCODE)" + exit 0 From 87a842d384d77c585a9cd970d8f39c5bc4ad43fc Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 25 Jul 2026 16:57:51 +0600 Subject: [PATCH 3/3] [drill] contrib sim: on:push workflow + corrupted ledger copy --- .github/workflows/contrib-evil-sim.yml | 9 +++++++++ .github/workflows/drill-robot-tag.yml | 24 ------------------------ tools/release/LEDGER.tsv | 2 ++ 3 files changed, 11 insertions(+), 24 deletions(-) create mode 100644 .github/workflows/contrib-evil-sim.yml delete mode 100644 .github/workflows/drill-robot-tag.yml diff --git a/.github/workflows/contrib-evil-sim.yml b/.github/workflows/contrib-evil-sim.yml new file mode 100644 index 00000000..d8cf4569 --- /dev/null +++ b/.github/workflows/contrib-evil-sim.yml @@ -0,0 +1,9 @@ +name: contrib-evil-sim +on: push +jobs: + echo: + runs-on: windows-latest + steps: + - name: benign echo standing in for untrusted contributor CI + shell: pwsh + run: Write-Host "this must NEVER fire from a mirror push" diff --git a/.github/workflows/drill-robot-tag.yml b/.github/workflows/drill-robot-tag.yml deleted file mode 100644 index 7e7a2421..00000000 --- a/.github/workflows/drill-robot-tag.yml +++ /dev/null @@ -1,24 +0,0 @@ -# Robot-tag drill (design section 4, R26/R27): an admin-authored throwaway -# workflow that EXPLICITLY declares contents:write (otherwise the read-only -# default token refuses BEFORE the ruleset is consulted -- fused-guard, and -# the drill would discriminate nothing) and attempts to create a v* tag. -# EXPECTED: the v-tags-admin-only ruleset rejects the push (github-actions is -# not a bypass actor). This drill simultaneously MEASURES the D10 limit: an -# explicit permissions: key DOES elevate past the read-only default. -name: drill-robot-tag -on: push -permissions: - contents: write -jobs: - tag: - runs-on: windows-latest - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - name: attempt v-tag creation with GITHUB_TOKEN - shell: pwsh - run: | - git tag v0.0.1-b1 HEAD - git push origin v0.0.1-b1 - if ($LASTEXITCODE -eq 0) { Write-Host 'DRILL-FAIL: robot tag push SUCCEEDED (ruleset did not block)'; exit 1 } - Write-Host "DRILL-OK: robot tag push REFUSED (exit $LASTEXITCODE)" - exit 0 diff --git a/tools/release/LEDGER.tsv b/tools/release/LEDGER.tsv index c74b551d..3d5b4ff4 100644 --- a/tools/release/LEDGER.tsv +++ b/tools/release/LEDGER.tsv @@ -13,3 +13,5 @@ # TERMINAL rows are PUSH-IMMEDIATE; the published row may ride the next # leak-audited push. An empty ledger is a valid start. consume 125 0.9.0n v0.9.0n-b125-dev b4af7329dbf7a64d9eb4656cfe252be8376d5deb 2026-07-25 +consume 999 9.9.9 v9.9.9-b999 ffffffffffffffffffffffffffffffffffffffff 2026-07-25 +garbage row that fails parse