# R1.1 调查与临时缓解报告

## 上下文

- Issue：https://github.com/pikasTech/unidesk/issues/1842
- 止血证据：https://github.com/pikasTech/unidesk/issues/1842#issuecomment-4950814142
- 既有长期方案：https://github.com/pikasTech/unidesk/issues/1710
- 既有 PR：https://github.com/pikasTech/unidesk/pull/1712

## 判定

- 指定 run 的 runner 已脱离调用方，PPID 为 1，并持续运行约 18 小时。
- CLI 通过 observer id 定位日期分层 stateDir；直接绝对 stateDir 被安全校验拒绝，未绕过保护。
- `observe status` 显示 run 可由正式 control channel 接收 stop；因此使用 graceful stop，不需要 force-stop、raw kill 或目录删除。

## 临时缓解

- 执行正式 `web-probe observe stop webobs-mrgj09ow-e3e28e`。
- exact command `cmd-mrhmyw5s-a02c31` 返回 done/ok=true。
- PID `3487047` 与 Chrome 子树全部退出。
- 进程树 RSS 约从 992.5 MiB 降为 0。
- swap used 约从 3.9 GiB 降为 2.3 GiB，swap free 约从 94 MiB 升为 1.7 GiB。
- memory PSI avg10/avg60/avg300 保持 0。
- NC01 UniDesk、HWLAB 和 AgentRun readiness 前后不变。

## GC 与保护边界

- stop 后 GC dry-run 状态为 completed。
- 剩余对象仅因 retention window 被标记 protected；本次未删除 artifact。
- 未使用 raw kill、swapoff、Docker/k3s prune，也未触碰 PVC、Secret、运行面数据库或其他代理 worktree。

## 后续

- 本次问题属于 #1710 的复发；#1712 已包含日期分层扫描和 YAML 控制的 observer TTL/maxSamples，但尚未合并。
- R1.2 先审查并更新 #1712，确认调用方所有终态 stop 是否仍有缺口；不得另建第二套生命周期 authority。
