Skip to content

站点文档 content/docs/utilities/cli.mdx 的兼容表有两行失真:@objectstack/spec ^3.3.0(实为 ^17.0.0-rc.5)与 Node ≥ 18(根 engines 为 ">=22") #3689

Description

@yinlianghui

越界发现,记录于 #3645(退役 36 个包 README 的 release-metadata 生成块,PR #3688)期间。未在 PR #3688 中顺手修改 —— 那单的文件面被锁死在 packages/*/README.md,本条在 content/docs/ 下,是站点文档面,形状上不属于那一单。

事实(对 origin/main 复核,切点 9961df297)

content/docs/utilities/cli.mdx 第 277–283 行是 @object-ui/cli 的元信息表,其中两行与实现对不上:

| **Node** | ≥ 18 |
| **Compatibility** | `@objectstack/spec` ^3.3.0 |

复核:

$ grep -rn '"@objectstack/spec"' packages/*/package.json | wc -l
27          # 全部为 "^17.0.0-rc.5",零个包锁 ^3.3.0

$ node -e 'console.log(JSON.stringify(require("./package.json").engines))'
{"node":">=22","pnpm":">=9"}          # 全仓唯一可执行的 Node 下限
$ 39 个 packages/*/package.json 中有 engines.node 的:0 个

即:spec 那行差了一个大版本区间;Node 那行与根 engines.node 直接矛盾(该字段由 pnpm 在安装期强制,是真相)。

#3645 的关系

同源。#3645 处置的是 36 个包 README 里逐字相同的 §Compatibility 生成块,内容与本表同出一辙(同样的 ^3.3.0、同样的 ≥ 18)。PR #3688 已把包 README 侧删干净,本条是它在站点文档侧遗留的副本,扫描面不同(content/docsscripts/check-doc-links.mjs 的第 1 个扫描根,但该门禁只校验链接可达性,不校验版本事实),所以不会被任何现有门禁发现。

建议处置(留待分诊,不自评定级)

#3645 同一条仓规:「版本号入散文即漂移保证 —— 删」。建议删这两行而非改成 ^17.0.0-rc.5 / ≥ 22 —— 改写会在下个 major 再错一次,把同一台漂移机器重新上膛。真相在 package.json(根 engines 与各包 dependencies),由包管理器安装期强制。

顺带:content/docs/guide/release-notes.md:41 也有一处 ^3.3.0,但那是历史发布说明里对某次升级动作的叙述(「Bump every @object-ui/* dependency to ^3.3.0」),是当时的事实记录,不是对当前版本的宣称 —— 不应改。已区分,一并记录以免后来者误伤。

已搜重

cli.mdx Compatibility specpeer dependencies React 19release-metadata generator 三组关键字搜过开放 issue,total_count: 0,无重复。与 #3645 同族但文件面不同,故单列而非作为其子单(#3645 的完成范围明确不含 content/docs/)。

关联


Generated by Claude Code

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions