release: require manual registry publication - #678
Conversation
📝 WalkthroughWalkthroughRelease automation now separates tag creation from manual registry publication. The autotag workflow prints a manual Release dispatch command, and the PR, preflight, and runbook text now follow that flow. ChangesRelease publication flow
Sequence Diagram(s)sequenceDiagram
participant Maintainer
participant ReleaseAutotag as Release Autotag
participant ReleaseWorkflow as Release workflow
participant Registries as npm and JSR registries
Maintainer->>ReleaseAutotag: merge commit reaches release-autotag
ReleaseAutotag->>Maintainer: print gh workflow run release.yml -f tag=vX.Y.Z
Maintainer->>ReleaseWorkflow: dispatch Release with the existing tag
ReleaseWorkflow->>Registries: publish the package
Maintainer->>Registries: verify both registry releases
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Release Preflight
If this PR is from a |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/release-pr.yml:
- Line 82: The release workflow’s actions/github-script step is interpolating
the untrusted steps.predict.outputs.version directly into inline JavaScript,
which creates a code-injection risk. Bind that output through env first and read
it from process.env inside the script, and apply the same pattern to any other
step outputs referenced in this github-script block so the script body never
embeds PR-derived values directly.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 0812d748-73e7-4b56-8815-9921a29cf03a
📒 Files selected for processing (4)
.github/RELEASE.md.github/workflows/release-autotag.yml.github/workflows/release-pr.ymlscripts/release-preflight.sh
Release Preflight
If this PR is from a |
Code Lawyer Activity SummaryAudit target:
Local gate evidence:
Merge gate judgment:
Result: merge gate remains locked solely on the explicit two-approval requirement. |
Summary
release.ymlasgithub-actions[bot]release.ymldispatch command in the autotag job summaryactions/github-scriptuses themIssue
Refs #677
Test plan
actionlint .github/workflows/release-autotag.yml .github/workflows/release-pr.ymlbash -n scripts/release-preflight.shgit diff --checknpm run lint:md -- .github/RELEASE.mdnpm run lint:md:codenpm run lint:docs-topologynpm run lint -- --no-warn-ignored scripts/release-preflight.shd16ce18and resolved/outdated by CodeRabbitADR checks