Skip to content

fix: release readiness gate checks every non-private package#499

Merged
creatornader merged 2 commits into
mainfrom
fix/release-readiness-ignores-ignore
Jul 10, 2026
Merged

fix: release readiness gate checks every non-private package#499
creatornader merged 2 commits into
mainfrom
fix/release-readiness-ignores-ignore

Conversation

@creatornader

Copy link
Copy Markdown
Owner

Follow-up to #497, taking up the redesign session's suggested check extension after the 2026-07-10 release.yml failure.

changeset publish attempts every non-private workspace package whose local version is absent from npm and never consults the Changesets ignore list. The readiness gate previously exempted ignored packages from the npm-existence check, so an ignored-but-public unseeded package passed the gate and then failed the publish step (npm rejects an OIDC PUT for a name with no trusted-publishing config).

The gate now checks every non-private package regardless of the ignore list:

  • A missing package fails with guidance pointing at the "private": true-until-seed guard from the corrected runsheet, and the report marks whether the missing package sat in the ignore list (the trap fix: keep atribd private until npm first-publish seed #497 closed).
  • The ignore list is reported as informational only.
  • The runsheet's gate description now matches the enforced behavior.

Verified both directions: current main state passes (all 18 non-private packages exist on npm), and flipping atribd to public while unseeded fails with the teaching message, which is exactly the pre-#497 breakage scenario. pnpm doc-sync green (13 checks).

changeset publish attempts every non-private workspace package whose
local version is absent from npm and never consults the Changesets
ignore list, so the readiness gate no longer exempts ignored packages
either. Every non-private package must exist on npm; a missing one
fails with guidance pointing at the private-until-seed guard, and the
report marks whether the missing package sat in the ignore list. The
runsheet's gate description now matches. Follows the 2026-07-10
release.yml failure where an ignored-but-public unseeded package
reached the publish step.
@creatornader creatornader enabled auto-merge (squash) July 10, 2026 15:45
@creatornader creatornader merged commit 520d4e7 into main Jul 10, 2026
15 checks passed
@creatornader creatornader deleted the fix/release-readiness-ignores-ignore branch July 10, 2026 15:51
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