Merge pull request 'Backfill the svc-autorecover task card (PR link, verification summary)' (#400) from feature/svc-autorecover into main
ci / test-pg (push) Successful in 59s
ci / test (push) Successful in 2m32s

This commit was merged in pull request #400.
This commit is contained in:
2026-10-11 22:15:11 +00:00
+5 -4
View File
@@ -1,6 +1,6 @@
# feature/svc-autorecover 任务卡
任务主记录:<PR 链接,交付前填写>;状态:进行中;owner:weichen
任务主记录:https://git-home.u1680832.nyat.app:30319/weichen/Agent-System-Dev/pulls/396;状态:已完成(已合入 main);owner:weichen
## 基线与授权
@@ -70,9 +70,9 @@
## 结果与验证(完成后填写)
- 结果:
- 验证:<结论摘要 PASS/FAIL/SKIP/NOT_RUN 逐项;逐条证据由 make evidence 写入上方证据表>
- 影响与剩余项:
- 结果:svc 自恢复能力落地:autostart 期望态(svc.env)+ `svc.sh recover`(postgres 优先、逐服务 .start.lock、recover 事件)+ `svc.sh watchdog`(systemd 用户 timer 每分钟 recover,cron 降级指引);start/stop/restart/deploy/update 全程持生命周期锁;修复锁 fd 继承与 exec 重定向吞 stderr 两个实测缺陷;端口守卫增加无 ss 环境的 /dev/tcp 兜底。
- 验证:PASS —— tests/test_svc_recover.py 10/10(本地,含 SIGKILL→recover 拉回、stop 不复活、锁占用跳过、端口被抢 fail 事件);make test-governance 146/146(本地 SELF,sync 后重跑已入证据表);CI(GATE)PR HEAD e0b49d1 test=success test-pg=success(test-pg 首跑 TestToolCallDeltaBeforeExecution 抖动,rerun 后绿);本机 watchdog 落地与 kill -9 实测见收尾后 runtime/dev/history.jsonl 的 recover 事件。
- 影响与剩余项:agent SQLite 数据目录尚无自动备份(本次数据丢失真因是 runtime 被人工删除)——后续可加 `svc.sh <agent> backup`;postgres 实例的真实 recover 路径仅代码审查,未起真实 PG 实测。
## 规划进展与下一步
@@ -356,3 +356,4 @@
}
```
| 同步前验收 | 3de5791e0841e9c7c40c3dc236be6d95b3969827 | c514bc4f4d8f3236d6d001fe9046fc2a6a72705a | 2026-10-11T21:56:41Z |
| 同步前验收 | bbce8db9054b67fd8bacf3935ceb65b205682e63 | 6fe00a3a5c180df716f10d1c10d01d405c5362e7 | 2026-10-11T22:12:03Z |