Repository navigation
fix: automatically publish npm releases after main checks - #9
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (7)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe release process now uses semantic-release. Custom analysis promotes initial 0.x releases to 1.0.0. CI runs release tests, and publishing follows successful checks on pushes to ChangesAutomated release pipeline
Priority: ➖ Normal Estimated code review effort: 4 (Complex) | ~45 minutes Change: Feature Sequence Diagram(s)sequenceDiagram
participant GitHubPush
participant publishWorkflow
participant ciWorkflow
participant semantic-release
participant npmRegistry
participant GitHubReleases
GitHubPush->>publishWorkflow: trigger push to main
publishWorkflow->>ciWorkflow: run reusable checks
ciWorkflow-->>publishWorkflow: return successful checks
publishWorkflow->>semantic-release: calculate and publish release
semantic-release->>npmRegistry: publish package
semantic-release->>GitHubReleases: create tag and release
Merge Risk: ⚪ Minimal · up to The automated release pipeline is ready to merge: releases are gated on CI and use the documented versioning, npm publishing, tagging, and GitHub release flow. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Merging to
maincurrently runs CI but does not create a release: the npm workflow waits for a GitHub release to already exist. This change makes a main update run the full test matrix, then calculate the version, publish the npm package, and create its Git tag and GitHub release in the same workflow.The first release from the existing 0.x tags is 1.0.0. Subsequent changes increment patch by default, minor for
feat:, and major for conventional breaking changes. Successful reruns do not create duplicate versions. The published package receives the computed version; Git tags track releases without requiring bot commits to protectedmain.The workflow keeps the existing
publish.ymlnpm Trusted Publisher identity. Release dependencies run separately on Node 24, while the CLI retains Node 18+ support. Publishing requires all Linux/macOS/Windows checks to pass and grants write/OIDC permissions only to the publishing job.Validation: 13 release tests pass, exercising real local tags and package tarballs for 1.0.0, 1.0.1, 1.1.0, 2.0.0, and repeat runs; clean release-dependency install,
actionlint, and diff checks pass. Production and release dependency audits report zero vulnerabilities.Merging this PR enables automatic publication and is expected to publish arbella@1.0.0 once the main checks pass.
Summary by CodeRabbit
New Features
main.Documentation
Chores