Skip to content

Take the org-wide publication writer lock in every write-capable publisher job (Refs FS-GG/.github#4753) - #729

Merged
EHotwagner merged 1 commit into
mainfrom
routine/4753-publication-writer-lock-20261024
Oct 24, 2026
Merged

EHotwagner merged 1 commit into
mainfrom
routine/4753-publication-writer-lock-20261024

Conversation

@EHotwagner

Copy link
Copy Markdown
Contributor

Adopts the org-wide serialized publication writer from ADR-0097 (FS-GG/.github#4753, lock PR FS-GG/.github#4858, merged as c799a9f9b21d52eb9766cf0950722e3e55145d39).

GitHub concurrency groups are per repository, so they cannot serialize publishers in different repositories. Every write-capable job of the publishing workflows below now starts with the pinned step Acquire org publication writer lock, carries [org-publication-writer] in its job name (how other publishers recognise it), and has its timeout-minutes raised by exactly the bounded wait (30 min) so its own working budget is unchanged. The oldest live publisher job in any registered repository proceeds; the job's end releases the lock, so a crashed publisher cannot deadlock the org. The lock grants no authority; every existing candidate, journal, revocation and protection guard is unchanged.

 .github/workflows/release-skills.yml |  9 +++++--
 .github/workflows/release-wasm.yml   | 48 +++++++++++++++++++++++++++++++-----
 .github/workflows/release.yml        | 16 +++++++++---
 3 files changed, 62 insertions(+), 11 deletions(-)

No publication, tag or credential operation is run by this change. Producer-local concurrency groups are kept. Coverage is checked by scripts/check-publication-writer-coverage.py --remote in FS-GG/.github.

Refs FS-GG/.github#4753.
architecture-map: unaffected

🤖 Generated with Claude Code

…isher job (Refs FS-GG/.github#4753)

ADR-0097 (FS-GG/.github#4858, c799a9f9): GitHub concurrency groups are per repository, so
all FS-GG publishers serialize through one ticketed lock over the public Actions job list.
Each write-capable job here gets the pinned lock step first, a job name carrying
[org-publication-writer], and its timeout raised by exactly the bounded wait so its own
working budget is unchanged.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
@EHotwagner
EHotwagner merged commit 084c000 into main Oct 24, 2026
35 checks passed
@EHotwagner
EHotwagner deleted the routine/4753-publication-writer-lock-20261024 branch October 24, 2026 18:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant