Found while working #729(README/marketplace 数量宣称漂移,PR #1010)。属该 PR 范围外 —— #729 的落点是 README 与 content/docs 的产品面,docs/ 内部维护者文档不在其内,故记录不修。
现象
docs/STATUS.md 自称「Source of truth: pnpm validate, pnpm typecheck, and pnpm test」,但表里每一个数字都停在旧值。在 origin/main(acc37e65)上实测:
| STATUS.md 声称 |
实测(pnpm validate / pnpm build / pnpm test) |
Data: 16 Objects 318 Fields |
17 Objects 344 Fields |
4 Dashboards |
5 Dashboards |
13 Actions |
26 Actions(口径另见下方 issue) |
Logic: 23 Flows |
24 Flows |
ObjectStack packages | 17.0.0-rc.1 |
17.0.0-rc.3(#901 / PR #910 已升级) |
Unit tests | 9 files, 97 tests passing |
77 files, 1830 passed, 1 skipped |
14 Views 与 STATUS.md 的 13 Views 也差一。
页面顶部写着「Snapshot date: July 30, 2026」—— 这个 dated-snapshot 框定对「验证结果」一类内容说得通,但 ## Current Runtime Requirements 一节是以现在时陈述的事实表(Node 版本、平台包版本、端口),读者不会把它当历史读;其中的平台包版本已经错了两个 rc。
复现
cd /home/user/hotcrm && pnpm validate # => 17 Objects / 5 Dashboards / 24 Flows
sed -n '14,20p;40,46p' docs/STATUS.md
为什么 CI 没抓到
test/docs-drift.test.ts 的 #1001 版本守卫把 docs/STATUS.md 列进了 VERSION_DOCS,但它只比对 应用版本号(2.2.2),不看这张表里的任何计数或平台包版本。PR #1010 新加的计数守卫扫的是 README.md 与 content/docs/**/*.mdx,刻意没有把 docs/ 纳入 —— 因为 STATUS.md 是 dated snapshot,「它到底该被当作快照还是当作现状」需要先定性,不该由一条守卫替产品下判断。
建议(需要先做一个小决策)
先定这一页的性质,再决定执法姿态:
倾向 A:这一页是维护者(含 AI agent)判断仓库现状的第一落点,一个自称 source-of-truth 却全表过期的页面比没有这一页更糟。
Filed unassigned。
Found while working #729(README/marketplace 数量宣称漂移,PR #1010)。属该 PR 范围外 —— #729 的落点是 README 与
content/docs的产品面,docs/内部维护者文档不在其内,故记录不修。现象
docs/STATUS.md自称「Source of truth:pnpm validate,pnpm typecheck, andpnpm test」,但表里每一个数字都停在旧值。在origin/main(acc37e65)上实测:pnpm validate/pnpm build/pnpm test)Data: 16 Objects 318 Fields17 Objects 344 Fields4 Dashboards5 Dashboards13 Actions26 Actions(口径另见下方 issue)Logic: 23 Flows24 FlowsObjectStack packages | 17.0.0-rc.117.0.0-rc.3(#901 / PR #910 已升级)Unit tests | 9 files, 97 tests passing77 files, 1830 passed, 1 skipped14 Views与 STATUS.md 的13 Views也差一。页面顶部写着「Snapshot date: July 30, 2026」—— 这个 dated-snapshot 框定对「验证结果」一类内容说得通,但
## Current Runtime Requirements一节是以现在时陈述的事实表(Node 版本、平台包版本、端口),读者不会把它当历史读;其中的平台包版本已经错了两个 rc。复现
为什么 CI 没抓到
test/docs-drift.test.ts的 #1001 版本守卫把docs/STATUS.md列进了VERSION_DOCS,但它只比对 应用版本号(2.2.2),不看这张表里的任何计数或平台包版本。PR #1010 新加的计数守卫扫的是README.md与content/docs/**/*.mdx,刻意没有把docs/纳入 —— 因为 STATUS.md 是 dated snapshot,「它到底该被当作快照还是当作现状」需要先定性,不该由一条守卫替产品下判断。建议(需要先做一个小决策)
先定这一页的性质,再决定执法姿态:
package.json断言;「Snapshot date」改成会随之更新的字段或直接去掉。## Current Runtime Requirements这种现在时事实表,把这类内容移走或改写成带日期的观测记录,并明确它不受守卫约束。倾向 A:这一页是维护者(含 AI agent)判断仓库现状的第一落点,一个自称 source-of-truth 却全表过期的页面比没有这一页更糟。
Filed unassigned。