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,41 @@
# 自动化执行记录 · 覆盖网络线-序29执行棒(106 候选链建成冗余)
> automation id = `22170b0b-a606-461c-82a7-2f72fea68082`|一次性 · 计划 2026-09-18 05:45|**执行 2026-09-18 05:45–06:2x**
## 结论(一句话)
✅ **达成**:106 侧 relay 候选链由"退化单点"变成 **3 条**,探针 `OBS-21` **红 → 绿**,全库探针 **22 PASS / 0 SKIP / 0 FAIL(rc=0)**。⛔ 未放宽 `CAND_MIN` 判据。
## 做了什么
- 106 `/etc/dshs-worker.env` **只追加一行** `DSHS_OVERLAY_DIR_PUBKEYS=fd81a6dd7ee22cc121239253d9bee33585638823f5425b537da930e5054f3349`(= 47 同一把)+ `systemctl restart dshs-worker`。
- 回滚点 = 106 `/opt/dsh/backups/seq29-20260918-054852/dshs-worker.env.orig`(md5 `6b509ce447d9519241aa73243e07a69f`);回滚 = 删该行 + restart(秒级)。
## 验收(全部通过)
| 项 | 结果 |
|---|---|
| `OBS-21` | 两条路径都 `count=3`(`dshs@47` / `dshs-worker@106`),≥ `CAND_MIN`=2,rc=0 |
| `npm.cmd test` | **201/200/0/1**(与基线逐字相同) |
| `--scene all --table` | **12 PASS / 0 SKIP / 0 FAIL** |
| `overlay-probe --table` | **22 PASS / 0 SKIP / 0 FAIL**(基线 21P/0S/1F,该 1F 即 `OBS-21`) |
## 遇到的关键情况(供下次同类任务复用)
1. **先取证推翻了"必阻塞"的假设**:106 的失败码是 `no-trusted-keys`,该码在 `fetchDirectory` 里位于 `fetch → res.json() → parseDirectory` **之后** ⇒ 说明**目录取到了、只是验不过** ⇒ 公网路径可达(`curl` 实测 200 / CF `172.67.194.206` / 443 字节)。已知边界"106 → 47:3080 = TCP_BLOCKED"**不构成阻塞**(取目录走 443/nginx)。
2. **`restart dshs-worker` 会留下"孤儿端点条目"且不自愈**:`relay-tunnel.ts#cancel()` 只撤当前进程 `forwarded` 集里的端口 ⇒ 上一进程遗留条目无人撤 ⇒ `OBS-08`/`OBS-09` 必红。收口顺序:`restart dshs-worker` → `restart dshs`(两客户端归零回 47 relay)→ 一次真实访问(`mksess` 临时 session + `enter`,Host 用 `alotbuy.com`)→ 实例落回 21000 基址 ⇒ 全绿。临时 session 已清(残留 0)。
3. `--scene all` 演练会把两客户端留在 106 relay ⇒ 必须做"归零"才能让探针读回基线。
## 边界自证
⛔ 未改任何生产值 · ⛔ 未新增监听口(`OBS-11` 77/多出 0)· ⛔ 未动 nft·nginx · 🔴 `COOLDOWN_MS=0` 两机计数 0 · ⛔ 未 commit / 未 push(HEAD `04776af`,`git status` 33 与开工时逐数相同)· 参数表指纹 `3b295a8c43aafc4a62c6f1a59ea0b43a` **未变**。
## 产出落点
- 工作区根 `接续入口_覆盖网络线_20260916.md` §0 最新行 + §2(本棒无独立交接单)
- `参数表_覆盖网络_20260917.md` **§11.2**(`OBS-21` 状态改判;在 §10 指纹口径之外 ⇒ 指纹未变)
- 工作区日志 `.workbuddy/memory/2026-09-18.md`(append)
## 接续
➡️ 已登记 **单 B 执行棒(组密钥加密)**,automation **`65d2fc24-770e-4f33-93a3-db6e739aded7`**(一次性 · 2026-09-18 06:22 = 收口 +~6 min)。依据 = 工作区根 `交接单_组密钥加密_20260918.md`(§8 前前缀 `149596460288ca1a5b7abddc490f7909`,已复核一致)。**同一时刻只挂这一个**(自本线的角度)。全局执行锁已释放。