Skip to content

fix(release): allow promotion to verify draft - #777

Merged
jeremi merged 1 commit into
mainfrom
fix/release-draft-promotion-permission
Aug 14, 2026
Merged

fix(release): allow promotion to verify draft#777
jeremi merged 1 commit into
mainfrom
fix/release-draft-promotion-permission

Conversation

@jeremi

@jeremi jeremi commented Aug 14, 2026

Copy link
Copy Markdown
Member

What changed

  • restore job-scoped contents: write for the image-promotion job
  • add a focused regression test binding that permission to the live draft re-read immediately before public image access

Root cause

Publication run 31768565679 failed before registry login because the image-promotion job could not read the unpublished bound draft with a read-only GITHUB_TOKEN. GitHub returned 403 Resource not accessible by integration. A recent permission minimization had reintroduced this previously fixed failure.

The workflow-level default remains contents: read; the write permission is limited to the protected-main job that already promotes final images. Checkout credentials remain disabled.

Recovery

The existing immutable v0.22.0 tag and exact candidate remain valid. The failed run created an exact unpublished draft but wrote no final OCI, npm, PyPI, public release, or docs state. After this PR merges and protected-main CI passes, a new publication dispatch will reconcile that same tagged candidate and draft.

Validation

  • 99 focused workflow, guard, and gate-inventory tests passed
  • full release-script test discovery passed
  • gate inventory passed for 151 gates
  • targeted and full actionlint passed
  • git diff --check passed
  • independent least-privilege and recovery review found no issues

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
@jeremi
jeremi marked this pull request as ready for review August 14, 2026 04:35
@jeremi
jeremi merged commit a066ca3 into main Aug 14, 2026
32 checks passed
@jeremi
jeremi deleted the fix/release-draft-promotion-permission branch August 14, 2026 04:35

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 68e1997cff

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

permissions:
actions: read
contents: read
contents: write

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Add the required DCO sign-off

The reviewed commit message has no Signed-off-by: trailer, so it violates the repository's requirement that every commit be created with git commit -s and will fail DCO enforcement. Recreate this commit with the required sign-off before merging.

AGENTS.md reference: AGENTS.md:L272-L275

Useful? React with 👍 / 👎.

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