chore(工作区): 纳入版本控制基线(回收 411 MB 过程产物)

回收 411 MB(470 M → 58.8 M),全部经回收站,可恢复:
- 待清理/(146.2 M,含 relay 分片 128 M 与 42 项过程目录)
- tmp/(32.4 M,按接续棒命名的过程临时区)
- .workbuddy/tmp/(39.5 M)
- 4 份 workbuddy.db 冗余副本(101 M,09-23 事故的坏副本 / 抢救产物)
- tmp/im16/gw/centrifugo 二进制(63.9 M,可重下)+ 缓存残留

入库范围:常驻规则(CODEBUDDY.md / README.md / state.py)、在途接续入口与
接续包、docs/、交付物/、交接单/、归档/、scripts/、.codebuddy/、
.workbuddy/memory/;共 398 件,其中 >60 KB 的 26 件全为文档。

排除(.gitignore):tmp/、待清理/、运行态日志与缓存、*.db 与 DB 备份整目录、
打包二进制(*.tar.gz / *.tgz)、记忆修复前备份。
This commit is contained in:
admin committed 2026-09-24 07:51:03 +08:00
commit ce8e6ceed9
396 files changed
+66045

No files matched your search

@@ -0,0 +1,30 @@
# 覆盖网络线 · 序 ⑲ 执行棒(automation `107b8e38`)— 运行记忆
> 用途:下一棒开工前扫一眼,确认本棒没有遗留「未落盘的状态 / 未告知的拍板」。
> ⛔ 只记高层结论与指针,不复制正文。
---
## 2026-09-17 17:28–18:16(收口 18:19)· 第 1 次运行 —— ✅ 全部完成(presence 上线 + 探针 1 项红已停报)
**任务**:按 `交接单_presence在线态_20260917.md`(§8 前缀指纹 `f612858344077420cff5f1f9ef1c942f`)执行 §5 的 S0–S7。
**结果**:✅ **S0–S7 全走完;presence(节点/端点在线态)已上线并真机验收。**
- S0 只读前置 **5/5 绿**(P1=0 / P2 仅 `placement.ts:21` 注释 / P3=413 / P4=`8f08e74b…` / P5=161 pass)。
- S6 本机多实例真机 **8/8**:稳态 60 s **Δ帧=0**(期间 24 个心跳帧在流)|一次上下线**各 1 帧**|断连→改口 **40985 ms**|首帧 `snapFrames=1`|跨网显式拒绝 `rejected 0→1`|降幅 **63×**(字面)/10.5×(同消费者)/∞(稳态)。
- 零回归:`npm test` **169/0/1**(基线 161 + 新用例 T25–T32)|`--scene all` **12 PASS/0 FAIL**|探针 **15 PASS/1 FAIL**。
- S7 部署完成:build RC=0 → 备份 → `scp` 四处 `lib/net/relay/*.js`(47 `/opt/dshs/lib` + `/opt/dsh-relay/lib`;106 `/opt/dshs-cluster/lib` + `/opt/dsh-relay/lib`)+ 47 `web/server.js` → 远端 md5 逐条一致 → 四单元重启后全 active、池口 64。
**🔴 本棒两个必须记住的实测(下一棒别踩)**:
1. **落点假死(本棒最重要发现)**:`presenceTouch` 原在 `ensureEndpoint` **之前**,而 `localPort` 是 `listen(0)` **异步**落地的 ⇒ 首帧推 **`localPort=0`** 且**永不重推** ⇒ 订阅方 `addressOf` 查不到 ⇒ **页面打不开但不报错**。修法 = touch 后移 + 落点落地/端口变更时 `publishPresence(..., force=true)`;新用例 **T32 先红后绿**覆盖。
2. **`OBS-09` 红 = 步骤与判据冲突**:§5-S7 要求 `systemctl restart dshs`,而 §6-E9 要求用户实例面(47 `127.0.0.1:20000` / 对端 21000)可达 —— 重启会收掉 `dsh-*.scope`,平台**按需拉起、⛔ 无 reconciler** ⇒ 无人访问时实例**不自回**(重启后 4 分钟仍 inactive,Manager 日志零 spawn)⇒ 探针必红。**已按该单 §9-8 停下报告**(不是缺陷,是口径冲突)。
**判据要点(可复用)**:presence 的"事实"走**推送**(变化驱动),带**时钟刻度**的心跳量(`offlineInMs` / `lastSeenAgoMs`)走**兜底读取** `/status` —— 推送镜像里字段是 `undefined` **属设计正确行为**,⛔ 别当 bug 修(T25 曾因这个误判)。
**收口 6 件**:① 锁已释放 ✅ ② 下一棒 = 序 ⑳ automation **`51cfd12f-918d-4069-81d8-c148fc174282`**(一次性 · 2026-09-17 18:20 = 收口 +4 min)✅ ③ 入口 `接续入口_覆盖网络线_20260916.md` §0 + §2 已推进 ✅ ④ 日志 `.workbuddy/memory/2026-09-17.md` 已追加(124661 B / CR 0)✅ ⑤ 该单 **§8★ 回报(8.0–8.9)已回填**,回填后 **§8 前缀指纹 `f612858344077420cff5f1f9ef1c942f` 保持不变** ✅ ⑥ 指纹已输出 ✅
**另**:`.workbuddy/memory/MEMORY.md` 在途单已更新(7725 → **7766** chars,⛔ 仍须 ≤ 7790 注入上限)。
**指纹**:参数表 `8f08e74b026e6e5b5e1b3db813f031ae` → **`13de5f9b77c486d71e5b83ec909b17b2`**(口径 = `sed '/^## §10 指纹/,$d' … | md5sum`);交接单 **`f612858344077420cff5f1f9ef1c942f`**。
**边界自证**:⛔ 未改任何生产值(六值逐项未变,D1 自证成立)· `COOLDOWN_MS=0` 计数 **0** · ⛔ 未新增公网口 / 未改 nft·nginx · ⛔ 未 commit / 未 push。
**⏳ 未决(⛔ 不作为任何一棒前置)**:① B(内容分发 / 块级内容寻址)仍待拍板;② 「Manager 重启后是否自动拉起既有实例」= **业务取向**(可用性 vs 资源/复杂度)⇒ 待拍板。详见该单 §8.8 + 本棒最终回报最后一节。