Add sync-lockdown release job and fix reserved FORGEJO_PAT secret name #143

Closed
opened 2026-05-28 09:04:57 +00:00 by coilysiren · 0 comments
Owner

Change

Add the canonical-bump automation so committed .claude lockdown files stay in sync with the released coily, and fix the secret-name bug found along the way.

  • New sync-lockdown job in .forgejo/workflows/release.yml: builds the just-tagged coily, renders the canonical .claude files once, and fans them out across non-archived catalog repos via the Forgejo Contents API. Idempotent, [skip ci], tolerant of repos missing/archived on Forgejo.
  • New scripts/sync-lockdown.sh doing the GET-compare-then-PUT fan-out (shellcheck clean).
  • Fix: secrets.FORGEJO_PAT is an invalid secret name (Forgejo reserves the FORGEJO_ prefix, PUT returns 400), so it always resolved to empty. The existing bump-formula step has been running without a real token. Renamed all three refs to secrets.CI_RELEASE_TOKEN, set on this repo to a write:repository-scoped token.

Design and rationale: agentic-os-kai#457 (keep committed, fail-closed). Harness/self-mod context: agentic-os#92. Open tradeoff on GitHub mirror freshness: #142.

**Change** Add the canonical-bump automation so committed `.claude` lockdown files stay in sync with the released coily, and fix the secret-name bug found along the way. - New `sync-lockdown` job in `.forgejo/workflows/release.yml`: builds the just-tagged coily, renders the canonical `.claude` files once, and fans them out across non-archived catalog repos via the Forgejo Contents API. Idempotent, `[skip ci]`, tolerant of repos missing/archived on Forgejo. - New `scripts/sync-lockdown.sh` doing the GET-compare-then-PUT fan-out (shellcheck clean). - Fix: `secrets.FORGEJO_PAT` is an invalid secret name (Forgejo reserves the `FORGEJO_` prefix, PUT returns 400), so it always resolved to empty. The existing `bump-formula` step has been running without a real token. Renamed all three refs to `secrets.CI_RELEASE_TOKEN`, set on this repo to a `write:repository`-scoped token. Design and rationale: agentic-os-kai#457 (keep committed, fail-closed). Harness/self-mod context: agentic-os#92. Open tradeoff on GitHub mirror freshness: #142.
Sign in to join this conversation.
No labels
P0
P1
P2
P3
P4
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
coilyco-bridge/coily#143
No description provided.