GitHub 在 9 月 3 日让 npm 的三项发布能力进入正式可用。
最主要的一条是可信发布的 OIDC 配置解除了每个包一套的上限。受这个上限所限,维护者此前要么在工作流里绕,要么留一枚长期令牌来覆盖 OIDC 顾不到的发布路径。现在可以挂多套,分别对应稳定版、预发布和暂存版的发布路径。每套配置独立生效,各自带自己的仓库、工作流和环境条件,互相叠加而不互相限制。进来的 OIDC 令牌只要满足其中任意一套就算通过,匹配顺序不作保证,所以不要写依赖某一套优先命中的逻辑。
暂存是每套配置的默认能力,直接发布需要逐套显式打开。GitHub 建议只配暂存,理由是中间那道人工审批意味着被攻陷的工作流没法直接推到 registry。
另外两条,一是包还在做恶意软件扫描时审批控件保持禁用,扫完才解锁,队列页每分钟刷新一次状态。二是 npmjs.com 的版本页开始向相关维护者展示每个版本的历史,通过、被拒还是仍在暂存都能看到。配置的增删查都在包的设置页。