JianFeeeee
c25ee1e97e
docs(欠账): build-stamp 因产物陈旧而长期红 —— 并修掉两处 JSON 里的坏字节
## 新增 `build-stamp-stale-artifact-blocks-verification`(debts 33 → 34)
`build-stamp` 断言产物自报的 `gitRev` 精确等于 HEAD。实测产物记 `87c55ac`,
而 HEAD 随本轮工作走到 `f1c74fc` ⇒ **无论谁提交什么,这条判据都不会自己
变绿**,只能被一次重构建救。
★ `BUILD_INFO.json` 经 `git ls-files` 确认**未被跟踪** ⇒ 缺的那次构建
从来没人提交过,不是被谁回滚。
★ 已在**干净 HEAD** 上复现 ⇒ 不是本轮引入(`f1c74fc` 之前就红)。
## 为什么值得单独记一笔:它会**训练人忽略红色**
套件汇总里 `build-stamp` 与真缺陷并列显示。真实的危害不是这条判据本身,
是人一旦习惯「哦又是 build-stamp」,就会把**同一行里的真缺陷一起放过**。
这与本仓反复消的「看不到 ⇒ 绿」是同一族,方向相反:
**看到了 ⇒ 当没看见**。而 `d3a7873` 那笔 HIGH 记的「判据说干净而构建物
不干净」正是它的成因 —— 本条是那笔债的**日常形态**:不危险,但会钝化。
到期动作只认一个:**重跑构建**。判据自己的报错文案已警告不要去改
`gitRev`/`srcHash` 了事(那是把它废掉),本条认同并把正确修法写进 `due`。
**未做**:没触发构建、没改 `BUILD_INFO.json`、没加进任何跳过名单 ——
构建是部署动作,而本工作区正被多个会话并发提交(见下)。
## 顺带修掉两处 JSON 里的坏字节(U+FFFD)
写新条目时自查发现 `docs/DEBTS.json` 里有 6 个替换字符:
① **我这次笔误**:「无论谁提交什么,这条判据」被写成 3 个 `\ufffd`;
② **前人笔误**(HEAD 里就有,已用 `git show HEAD:` 确认):`harmony-system-back-key`
的「正确的那一个钩子」同样烂了 3 个字节。
两处都已修,`replacement chars: 6 → 0`,JSON 复验合法。
★ 这与 `d3a7873` 里记的 `python-probe-shadowing-in-tmp` 同源:
改机器可读文件必须**立刻回读验证**。这次是回读时**顺带**发现的,
说明那条判据的价值不在"校验格式",在"逼你去看一眼内容"。
## 验证
· `node test/run-all.mjs`:files=35 ran=35 checks=582 pass=571 fail=2
skip=9(**不是通过**)red=2。红的仍是那两条:本次故意红的
`cross-bridge-prompt` 与本条新登记的 `build-stamp`。
`RESULT … debts=37` 已把新条目计入(static-only=5==登记 ✓)。
· `debt-visibility` 1 pass / `criteria-hygiene` 10 pass / `commit-hygiene` 4 pass。
· go 侧:除故意红的 notify 外 16 包全绿(须 `GOCACHE=.tmp/gocache`)。
## 共享工作树实况(`shared-workspace-unserialized-deploy` 持续发生)
`server/internal/repo/` 下现有**四个不属于本会话**的未跟踪探针
(`zz_toctou_` / `zz_proposedfix_` / `zz_correctedshape_` / `zz_naivevscorrected_`),
本轮又多了两个 ⇒ **同一包内并发写入正在进行**。本 commit 只 stage
`docs/DEBTS.json`,四个探针原样留在工作树未动。
2026-09-28 10:19:51 +08:00
..
2026-09-28 10:19:36 +08:00
2026-09-28 08:46:02 +08:00
2026-09-27 04:11:38 +08:00
2026-09-26 07:44:33 +08:00
2026-09-28 10:19:51 +08:00
2026-09-25 07:47:13 +08:00
2026-09-19 12:47:32 +08:00
2026-09-14 16:11:00 +08:00
2026-09-15 11:17:23 +08:00
2026-09-24 10:10:32 +08:00
2026-09-15 11:21:00 +08:00
2026-09-13 06:16:59 +08:00
2026-09-08 19:16:35 +08:00
2026-09-08 19:16:35 +08:00
2026-09-14 23:50:35 +08:00
2026-09-21 07:04:04 +08:00