Commit 9383c98
committed
feat: migrate npm-release.yml to OIDC trusted publishing
Replace static NPM_TOKEN authentication with OIDC token exchange for
npm publishing. OIDC provides short-lived tokens derived from the
GitHub Actions workflow identity, eliminating the risk of long-lived
credential compromise.
Key changes:
- Node version: 18.20 → 24 (bundles npm 11 with native OIDC support)
- Remove NODE_AUTH_TOKEN env var (leaving it undefined triggers OIDC)
- Set NPM_TOKEN to empty string (forces OIDC fallback)
- Fix package.json repository field from SSH shorthand to structured
HTTPS format (required for OIDC provenance attestation)
- id-token: write permission already present from PR 1
Build gate: verified build + 794 tests pass on Node 24.14.0 (npm 11.9.0)
Snapit OIDC migration deferred — only npm-release.yml is configured as
a Trusted Publisher on npmjs.com. Snapit continues using NPM_TOKEN.1 parent c6173bc commit 9383c98
2 files changed
Lines changed: 10 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
36 | | - | |
| 36 | + | |
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
| |||
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
59 | | - | |
60 | | - | |
61 | | - | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
15 | | - | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
16 | 19 | | |
17 | 20 | | |
18 | 21 | | |
| |||
0 commit comments