Repository navigation
v0.4.4
变更
- 发布流水线(
.github/workflows/release.yml):发布 job 不再向setup-node传registry-url;toolchain步骤打印node/npm版本并检测 OIDC 请求端点是否可用;publish步骤改为仅在存在NPM_TOKEN时写入~/.npmrc - 版本号 0.4.3 → 0.4.4(
package.json、lib/version.mjs) CHANGELOG.md增补 0.4.4 段
说明
本版没有运行时改动,只改发布流水线与版本号。
背景:由 GitHub Release 触发的发布连续两次以 npm error code ENEEDAUTH 失败。根因既不在令牌,也不在 npm 侧的信任关系条目:setup-node 收到 registry-url 后会写入一行
//registry.npmjs.org/:_authToken=${NODE_AUTH_TOKEN}
仓库没有配置 NPM_TOKEN 时,该行展开为空令牌,npm 判定"凭证存在但不可用"并直接拒绝,根本不会进入 OIDC 交换。移除 registry-url 后,本版由 Trusted Publishing(OIDC)发布成功,首次带上 SLSA provenance。
验证
- 干跑(
workflow_dispatch+dry_run=true):verify全绿;发布 job 输出node v24.22.1, npm 11.19.1与OIDC: request endpoint present — id-token: write is in effect,唯一报错是版本已存在(You cannot publish over the previously published versions: 0.4.3),即认证已经通过 - 正式发布(release 事件):
verify与publish两个 job 均为 success;日志含no NPM_TOKEN secret configured — relying on Trusted Publishing (OIDC)与+ @punchact/dsh-rpc-agent@0.4.4 - 注册表核对:
latest = 0.4.4,25 个文件,unpacked 264843 B,shasum9b897d15219884a98eb753c93eb0e5e975fee9af - provenance:
GET https://registry.npmjs.org/-/npm/v1/attestations/@punchact%2Fdsh-rpc-agent@0.4.4→200,predicate 含npm publish/v0.1与https://slsa.dev/provenance/v1 - 本地套件:单元测试 41、客户端 6、状态页 6、真宿主集成 1、方法目录冒烟 1,全部通过;
node scripts/check-package.mjs25 个文件
安装
dsh plugin add @punchact/dsh-rpc-agent