AgentDock

Web Nextjs Npmrc Fix

Archived on 2026-08-16 · roadmap: web-nextjs-npmrc-fix

Archived: 2026-08-16 · roadmap-id: web-nextjs-npmrc-fix

Why

templates/web-nextjs/.npmrc 有一行:

only-built-dependencies = @fission-ai/openspec,@parcel/watcher,...

.npmrc 只能存字符串,pnpm 把它映射成 onlyBuiltDependencies 的字符串, 而 pnpm/action-setup 的 self-installer 对它调 .sort():

ERROR  onlyBuiltDependencies?.sort is not a function

这不是推测。 2026-08-17 用 skills-registry 模板(它从 web-nextjs 继承了同一行) 真建了第一个仓,它的 CI 第一跑就挂在这里,三道门全部 skipped。 skills-registry 那份已在 PR #35 修掉,web-nextjs 当时属那一刀的 Non-goal,只登记未修。

为什么至今没人撞到

没有任何工作流会 scaffold web-nextjs 并在产物里跑 pnpm install。 template-validation.yml 跑的是 scripts/validate-template.sh,它检查的是模板源目录, 不是脚手架产物。

所以这是一条从未被真实 CI 跑过的路径——「没人跑过」和「跑过且通过」, 在仪表盘上是同一个绿色。

Non-goals

  • ❌ 不给 web-nextjs 补脚手架级 CI——那是「让模板产物被真实跑一遍」这件更大的事, 需要单独立项(skills-registry 已经有了这样一条工作流,可作为它的参照)。 本刀只修这一行确定的缺陷,不顺手扩建。
  • ❌ 不动 web-nextjs 的任何其它文件,不动 game-web-phaser。
  • ❌ 不改 scripts/validate-template.sh。
  • ❌ 不重新生成 templates/web-nextjs/pnpm-lock.yaml——该行不进 lockfile 的 settings 块(已在 skills-registry 上实测:去掉它后 lockfile 无变化)。

On this page