feat(release): Wave 4 Phase I — unified release pipeline (npm + Marketplace + VS Code + Open VSX + smoke)#16
Merged
Conversation
Extends the Changesets-driven release workflow into a full one-merge pipeline. After merging the auto-generated "Version Packages" PR, the workflow now ships every artifact: - npm: tokenometer + @tokenometer/core (with provenance) — already shipped - GitHub Release on the new tag — Marketplace re-publishes the Action - VS Code Marketplace via vsce publish (gated on VSCE_PAT) - Open VSX via ovsx publish (gated on OVSX_PAT) — Cursor + VSCodium - Marketplace verify HTTP probe (best-effort) - Vercel deploy hook (gated on VERCEL_DEPLOY_HOOK; redundant since Vercel auto-rebuilds on main, kept as belt-and-suspenders) - smoke-test job in fresh runner asserting the published npm artifact: --version + SARIF v2.1.0 output structure Steps that need a missing secret log a clear skip notice and continue — the npm publish path always proceeds. Local pre-release: `npm run smoke` runs the full sweep — lint, typecheck, test, build, web build, benchmarks, plus CLI smoke (--version, SARIF shape, --by-file, auto-detect). Required secrets (documented in workflow header): - NPM_TOKEN — already configured - VSCE_PAT — new; needed for VS Code Marketplace - OVSX_PAT — new; needed for Open VSX (Cursor users) - VERCEL_DEPLOY_HOOK — new; optional Files changed: - .github/workflows/release.yml — Phase I steps, smoke-test job - packages/vscode/package.json — package:vsix now builds first; ovsx dep - package.json (root) — `npm run smoke` script - scripts/smoke.sh — full local pre-release sweep - CONTRIBUTING.md — release flow + smoke command - .github/release-notes-v1.0.0.md — Phase I landed status Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
faraa2m
added a commit
that referenced
this pull request
May 11, 2026
Extends the Changesets-driven release workflow into a full one-merge pipeline. After merging the auto-generated "Version Packages" PR, the workflow now ships every artifact: - npm: tokenometer + @tokenometer/core (with provenance) — already shipped - GitHub Release on the new tag — Marketplace re-publishes the Action - VS Code Marketplace via vsce publish (gated on VSCE_PAT) - Open VSX via ovsx publish (gated on OVSX_PAT) — Cursor + VSCodium - Marketplace verify HTTP probe (best-effort) - Vercel deploy hook (gated on VERCEL_DEPLOY_HOOK; redundant since Vercel auto-rebuilds on main, kept as belt-and-suspenders) - smoke-test job in fresh runner asserting the published npm artifact: --version + SARIF v2.1.0 output structure Steps that need a missing secret log a clear skip notice and continue — the npm publish path always proceeds. Local pre-release: `npm run smoke` runs the full sweep — lint, typecheck, test, build, web build, benchmarks, plus CLI smoke (--version, SARIF shape, --by-file, auto-detect). Required secrets (documented in workflow header): - NPM_TOKEN — already configured - VSCE_PAT — new; needed for VS Code Marketplace - OVSX_PAT — new; needed for Open VSX (Cursor users) - VERCEL_DEPLOY_HOOK — new; optional Files changed: - .github/workflows/release.yml — Phase I steps, smoke-test job - packages/vscode/package.json — package:vsix now builds first; ovsx dep - package.json (root) — `npm run smoke` script - scripts/smoke.sh — full local pre-release sweep - CONTRIBUTING.md — release flow + smoke command - .github/release-notes-v1.0.0.md — Phase I landed status Co-authored-by: Claude Opus 4.7 (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.
Summary
Wave 4 Phase I — extends the existing Changesets-driven release workflow into a unified pipeline that ships every artifact from one merge of the auto-generated "Version Packages" PR.
This is the last code PR before v1.0.0. After this merges, the next Version Packages PR (which currently bundles 11 accumulated changesets from Waves 1-4) becomes the v1.0.0 launch.
Release flow recap
The user does not run anything manually. Pipeline:
main(any PR merge) → workflow runs..changeset/has unconsumed changesets → workflow opens (or updates) a "Version Packages" PR. Auto-bumpspackage.jsonversions, auto-generatesCHANGELOG.mdentries.What this PR adds to step 3
vsce publish(gated onVSCE_PAT).ovsx publish(gated onOVSX_PAT) — needed for Cursor + VSCodium.VERCEL_DEPLOY_HOOK; redundant since Vercel auto-rebuilds on main, kept as belt-and-suspenders).smoke-testjob in a fresh runner: asserts the just-published npm artifact runs (tokenometer --version) and emits valid SARIF (version: 2.1.0).Steps gracefully skip with a clear notice when a secret is missing — the npm publish path always proceeds.
Local pre-release
New
npm run smokescript runs the full sweep:@tokenometer/webbuild--version, SARIF v2.1.0 shape,--by-file, auto-detectRequired GitHub repo secrets (one-time setup before the v1.0.0 release)
NPM_TOKENVSCE_PATOVSX_PATVERCEL_DEPLOY_HOOKTest plan
npm run lint— clean (89 files)npm run typecheck— cleannpm test— 227/227 across 20 filesnpm run build— cleannpm run build -w @tokenometer/web— cleannpm run benchmarks— 10 prompts × 63 models × 5 formats matchnpm run smoke— full local sweep passesVSCE_PAT,OVSX_PAT, optionallyVERCEL_DEPLOY_HOOKto repo Settings → Secrets and variables → Actions0.1.0for1.0.0, then merge — workflow does the restOut of scope
~/Downloads/tokenometer-content-todo.md. Manual posting after the v1.0.0 release is live.🤖 Generated with Claude Code