diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 19867304a..4a0c6de93 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -642,16 +642,6 @@ jobs: --post \ --allow-missing-webhook - - name: Clean up next dist-tag - if: ${{ !inputs.dry_run }} - env: - VERSION: ${{ inputs.version }} - run: | - # Point next to the stable release so @next never returns something - # older than @latest. This prevents stale pre-release installs. - npm dist-tag add "@opengsd/gsd-core@${VERSION}" next 2>/dev/null || true - echo "✓ next dist-tag updated to v${VERSION}" - - name: Verify publish if: ${{ !inputs.dry_run }} env: diff --git a/docs/adr/660-release-from-next-head.md b/docs/adr/660-release-from-next-head.md index 9100940b0..ea531257c 100644 --- a/docs/adr/660-release-from-next-head.md +++ b/docs/adr/660-release-from-next-head.md @@ -79,7 +79,7 @@ or a movable tag — as the RC surface.** Concretely: 4. **RC = the `@next` dist-tag, full stop.** Testers run `npm i -g @opengsd/gsd-core@next`. Because each `rc` run is cut from `next` HEAD, every rc.N already includes all prior fixes. No long-lived branch, no tag movement. `finalize` promotes the released version to `@latest` - (and keeps the existing `npm dist-tag add … next` so `@next` never trails `@latest`). + (`@next` remains the prerelease channel managed exclusively by the `rc` job; `finalize` does not repoint it). 5. **Everything else stays:** custom changesets + CHANGELOG render, release-notes formatter, smoke-test gates, provenance, `main`/`next`, `auto-backmerge` (main→next).