fix(release): include all selected platform binaries in npm tarball#30
Conversation
Abdulmuiz44
commented
Jun 2, 2026
- Fixes npm release packaging so tarballs include all selected platform binaries.
- Strengthens pack:dry validation to require expected selected platforms.
- Adds safe workflow listings for artifact/native binary debugging.
- Keeps npm publishing disabled by default and guarded.
- Does not publish to npm.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f809f3213f
ℹ️ 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".
| CODRA_ARTIFACTS_DIR: ${{ github.workspace }}/packages/codra-npm-cli/artifacts | ||
| CODRA_ALLOW_PARTIAL_BINARIES: ${{ needs.resolve-matrix.outputs.allow_partial }} | ||
| CODRA_EXPECT_PLATFORMS: ${{ needs.resolve-matrix.outputs.expect_all_pack == '1' && needs.resolve-matrix.outputs.expected_platforms || '' }} | ||
| CODRA_EXPECT_PLATFORMS: ${{ needs.resolve-matrix.outputs.expected_platforms }} |
There was a problem hiding this comment.
Keep partial dry runs from requiring every binary
When publish=false (the default), resolve-matrix sets allow_partial=1, but this now still passes every selected platform into CODRA_EXPECT_PLATFORMS. scripts/pack-dry-run.js treats that variable as a hard required list, so a dry run with any missing/undownloaded artifact fails validation even though the workflow input explicitly says dry runs allow partial binaries by default; the previous expect_all_pack guard avoided that by only requiring the full list for non-partial publish runs.
Useful? React with 👍 / 👎.