Blocked-by: #3711
在 #3697 的门禁落地过程中全量测量 content/docs 时量到的。这一条比单纯的版本陈旧重一档:文档描述的形状本身就不是脚手架的输出。
事实
content/docs/utilities/create-plugin.mdx:145-156 展示 create-plugin 生成的 package.json,称其中有:
"peerDependencies": {
"@object-ui/core": "^0.3.0",
"@object-ui/components": "^0.3.0",
"react": "^18.0.0"
}
packages/create-plugin/src/index.ts:143-153 实际写入的是:
dependencies: {
'@object-ui/components': 'workspace:*',
'@object-ui/core': 'workspace:*',
'@object-ui/react': 'workspace:*',
'@object-ui/types': 'workspace:*',
'lucide-react': '^0.563.0'
},
peerDependencies: {
react: '^18.0.0 || ^19.0.0',
'react-dom': '^18.0.0 || ^19.0.0'
},
三处不符,逐条:
| 文档 |
实际 |
性质 |
@object-ui/core 是 ^0.3.0 的 peer |
是 workspace:* 的 dependency |
版本错 且 字段错 |
@object-ui/components 同上 |
同上 |
同上 |
react peer 为 ^18.0.0 |
^18.0.0 || ^19.0.0,另有文档完全没提的 react-dom peer |
少报了 React 19 支持,漏了一个 peer |
^0.3.0 是 0.x 预发布期的遗留数字 —— content/docs/guide/release-notes.md 自己记着 v3.3.0 是「first official release」,0.x 早已是历史。
为什么这条值得单独修
读者照这份文档手写插件的 package.json,会写出一个把 @object-ui/core 声明成 ^0.3.0 peer 的包:那个版本区间在 npm 上对不上任何当前发布物,安装即失败或拉到远古版本。这不是「读到一个旧数字」,是「照做会坏」。
处置倾向(不替分诊拍板)
最省事且符合 #3645 仓规的做法:文档不再逐字复制这个块,改为指向 packages/create-plugin/src/index.ts 的模板,或只展示 name/scripts 这类不含版本号的部分。若要保留完整样例,则它天然是一个应当由测试钉住的对照 —— 与 scripts/__tests__/ci-cd-pipeline-doc.test.ts 把文档钉到 workflow 的形状一致。
门禁现状
#3697 的 PR 已把这三行以 kind: 'stale' 记进 scripts/__tests__/doc-version-claims.test.ts 的清单。本单修好后须同步删掉那三条条目,否则 ratchet 测试会变红(设计如此:清干净文档就必须让清单缩短)。
已搜重
create-plugin scaffold docs package.json、版本 文档 失真 drift docs version 两组关键字搜过开放 issue,无命中。
Generated by Claude Code
Generated by Claude Code
Blocked-by: #3711
在 #3697 的门禁落地过程中全量测量
content/docs时量到的。这一条比单纯的版本陈旧重一档:文档描述的形状本身就不是脚手架的输出。事实
content/docs/utilities/create-plugin.mdx:145-156展示create-plugin生成的package.json,称其中有:packages/create-plugin/src/index.ts:143-153实际写入的是:三处不符,逐条:
@object-ui/core是^0.3.0的 peerworkspace:*的 dependency@object-ui/components同上reactpeer 为^18.0.0^18.0.0 || ^19.0.0,另有文档完全没提的react-dompeer^0.3.0是0.x预发布期的遗留数字 ——content/docs/guide/release-notes.md自己记着 v3.3.0 是「first official release」,0.x早已是历史。为什么这条值得单独修
读者照这份文档手写插件的
package.json,会写出一个把@object-ui/core声明成^0.3.0peer 的包:那个版本区间在 npm 上对不上任何当前发布物,安装即失败或拉到远古版本。这不是「读到一个旧数字」,是「照做会坏」。处置倾向(不替分诊拍板)
最省事且符合 #3645 仓规的做法:文档不再逐字复制这个块,改为指向
packages/create-plugin/src/index.ts的模板,或只展示name/scripts这类不含版本号的部分。若要保留完整样例,则它天然是一个应当由测试钉住的对照 —— 与scripts/__tests__/ci-cd-pipeline-doc.test.ts把文档钉到 workflow 的形状一致。门禁现状
#3697 的 PR 已把这三行以
kind: 'stale'记进scripts/__tests__/doc-version-claims.test.ts的清单。本单修好后须同步删掉那三条条目,否则 ratchet 测试会变红(设计如此:清干净文档就必须让清单缩短)。已搜重
create-plugin scaffold docs package.json、版本 文档 失真 drift docs version两组关键字搜过开放 issue,无命中。Generated by Claude Code
Generated by Claude Code