From 31fe5d144bcb5142ee2397a8944d013c3d3d2e9d Mon Sep 17 00:00:00 2001 From: I4cDeath Date: Sat, 11 Jul 2026 01:42:24 -0500 Subject: [PATCH] fix(release): rename release.yml concurrency group to avoid workflow_call deadlock MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The v0.13.0 tag run died in 7s: release.yml held concurrency group 'publish' while calling publish.yml, which declares the same group — a reusable workflow's top-level concurrency still applies when called, so GitHub detected a parent/child deadlock and canceled the run before the GitHub Release was created (nothing was published). Parent group is now 'release'; the called publish.yml keeps 'publish', which is what actually serializes npm/MCP publishing across the event-driven and tag-driven paths. Co-Authored-By: Claude Fable 5 --- .github/workflows/release.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index dca5d9c..5187671 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -19,8 +19,13 @@ permissions: contents: write id-token: write +# NOTE: this must NOT be the "publish" group — the called publish.yml declares +# that group itself, and a reusable workflow's concurrency still applies when +# called, so parent+child sharing a group is an instant deadlock-cancel +# (bit us on the v0.13.0 tag). The child's group is what serializes actual +# publishing; this one only keeps two release runs from racing each other. concurrency: - group: publish + group: release cancel-in-progress: false jobs: