Summary
JSR publish job runs npx --yes jsr publish without pinning the CLI version. A publish-capable OIDC token is exposed to whatever @latest resolves to at run time — supply-chain risk.
Audit ID: Section 2 Med — Wave 2
Note: npm provenance tracked separately in #7.
Root cause
.github/workflows/publish.yml:84:
- run: npx --yes jsr publish
Fix
Pin exact version, e.g.:
- run: npx --yes jsr@0.13.4 publish
Look up current jsr CLI version in lockfile or npm registry at implementation time; document bump process in workflow comment.
Acceptance criteria
Verification
- Dry-run or review workflow syntax; full verify on next release.
Summary
JSR publish job runs
npx --yes jsr publishwithout pinning the CLI version. A publish-capable OIDC token is exposed to whatever@latestresolves to at run time — supply-chain risk.Audit ID: Section 2 Med — Wave 2
Note: npm provenance tracked separately in #7.
Root cause
.github/workflows/publish.yml:84:Fix
Pin exact version, e.g.:
Look up current jsr CLI version in lockfile or npm registry at implementation time; document bump process in workflow comment.
Acceptance criteria
publish.yml.Verification