fix(release): declare repository in npm sub-package manifests - #320
Merged
Conversation
The v0.27.7 release failed at the npm step with 422 Unprocessable Entity: "repository.url is '', expected to match https://github.com/c3-oss/prosa from provenance". OIDC trusted publishing publishes with --provenance, and npm validates the manifest's repository.url against the repo recorded in the sigstore bundle. The four platform sub-packages only declared homepage, so the check failed on the first publish. This never surfaced under NPM_TOKEN because no provenance statement was generated. Adds the repository field to all four sub-packages and a pre-flight assertion next to the existing version check, so a future mismatch aborts before any package is published rather than midway through the loop. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
upsetbit
added a commit
to c3-oss/q
that referenced
this pull request
Jul 25, 2026
OIDC trusted publishing publishes with --provenance, and npm validates each manifest's repository.url against the repo recorded in the sigstore bundle. The four platform sub-packages only declared homepage, so the first publish would fail with 422 Unprocessable Entity — as it did for c3-oss/prosa#320. Nothing surfaces this under NPM_TOKEN, because no provenance statement is generated. Adds the repository field to all four sub-packages and a pre-flight assertion next to the existing version check, so a mismatch aborts before any package is published rather than midway through the loop. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
upsetbit
added a commit
to c3-oss/slack-mcp-server
that referenced
this pull request
Jul 25, 2026
OIDC trusted publishing publishes with --provenance, and npm validates each manifest's repository.url against the repo recorded in the sigstore bundle. The four platform sub-packages only declared homepage, so the first publish would fail with 422 Unprocessable Entity — as it did for c3-oss/prosa#320. Nothing surfaces this under NPM_TOKEN, because no provenance statement is generated. Adds the repository field to all four sub-packages and a pre-flight assertion next to the existing version check, so a mismatch aborts before any package is published rather than midway through the loop. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
upsetbit
added a commit
to c3-oss/mcp-plane
that referenced
this pull request
Jul 25, 2026
OIDC trusted publishing publishes with --provenance, and npm validates each manifest's repository.url against the repo recorded in the sigstore bundle. The four platform sub-packages only declared homepage, so the first publish would fail with 422 Unprocessable Entity — as it did for c3-oss/prosa#320. Nothing surfaces this under NPM_TOKEN, because no provenance statement is generated. Adds the repository field to all four sub-packages and a pre-flight assertion next to the existing version check, so a mismatch aborts before any package is published rather than midway through the loop, and documents the check in AGENTS.md. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The
v0.27.7release pipeline failed at the npm step:--provenance(now always on under OIDC trusted publishing, #318) makes npmcompare each manifest's
repository.urlagainst the repo recorded in thesigstore bundle. The four platform sub-packages only declared
homepage, so thevery first publish was rejected. This was invisible under
NPM_TOKENbecause noprovenance statement was generated at all.
What changed
repositoryadded to all fournpm/prosa-*/package.jsonmanifests, matchingthe metapackage's existing value. The metapackage already had it and would
have passed.
scripts/publish-npm.sh, sitting next to theexisting version-coherence check. It matters that this runs before the
publish loop: a mismatch caught mid-loop would leave some sub-packages
published and others not, and npm will not let you re-publish a version.
docs/distribution/npm.mdupdated to describe the check.Release state this leaves behind
v0.27.7is currently half-shipped and this PR does not by itself finish it:latestis still0.27.6Re-running the failed job on the existing tag will not help, since the workflow
checks out the tag and the tag predates this fix. Recovering
v0.27.7needs atag decision, which is left to the maintainer.
🤖 Generated with Claude Code