# 平台资源治理

- 范围：主机与 Kubernetes 的 CPU、物理内存、swap、进程生命周期、控制面对象、存储、缓存和资源压力治理。
- 配置真相：资源预算、留存窗口、自动回收 cadence 与安全边界统一由 owning YAML 表达，CLI 只负责校验、预览、执行和实证。
- 运行原则：先用全局 overview 完成业务归因，再执行受控回收；物理内存资格只认 `/proc/meminfo` 的 `MemAvailable`，swap 不计入。
- 历史入口：WebProbe/Chrome 专属生命周期仍归属 [Web Observe 运行时可靠性](./web-observe-runtime-reliability.md)；其中 R1.2.1-R1.2.8 保留为 #1710 的历史实施记录，后续平台级资源治理统一在本文件登记。


## R1 [completed]

完成 [UniDesk #1710](https://github.com/pikasTech/unidesk/issues/1710) 的 NC01 平台资源治理首阶段：修复 Decision Center 子进程泄露，提供一次调用可见物理内存、PSS、swap、僵尸进程归属与 Kubernetes 对象压力的 overview；YAML-first 调优 Kafka 资源预算、扩容 64 GiB swap 安全垫，并把五个 CI namespace 的 Tekton 历史对象纳入自动留存，最终以真实 `MemAvailable` 超过 4 GiB、自动定时回收成功且不触碰 Webterm/PK01 为验收，历史实施明细引用 Web Observe R1.2.1-R1.2.8，完成任务后将详细报告写入[任务报告](./details/platform-resource-governance/R1_Task_Report.md)。

### R1.1 [completed]

执行 [UniDesk #2458](https://github.com/pikasTech/unidesk/issues/2458)：修复 NC01 上 HWLAB PaC/Tekton 大型内联 PipelineRun spec 被复制到 status.pipelineSpec、持续以约 1 MB 对象写入 Kine/SQLite并在 compaction 窗口阻塞 node lease，最终导致 k3s NodeNotReady 和 UniDesk backend-core endpoint 中断；将大段脚本拆入原生文件或复用 Task，补齐对象体积、Kine/WAL、API 延迟和 retention 的受控可见性，经正常 PR 自动交付并用 NC01 原入口验收，不以人工重启 k3s 或强删 Pod 作为最终修复，完成任务后将详细报告写入[任务报告](./details/platform-resource-governance/R1.1_Task_Report.md)。

### R1.2 [in_progress]

继续执行 [UniDesk #1710](https://github.com/pikasTech/unidesk/issues/1710) 的 NC01 内存恢复：先用一次全局 `memory-distribution` 从业务、进程、cgroup、swap、僵尸进程和 Kubernetes 对象分布归因，目标是让 `/proc/meminfo` 的真实 `MemAvailable` 稳定超过 4 GiB；只执行 YAML 明确允许且 plan 判定可运行的受控 GC，禁止把 swap 计入目标、禁止触碰 Webterm/PK01、禁止重启 k3s或裸删 workload，若低风险候选不足则报告业务优化或废弃建议并收敛长期策略，完成任务后将详细报告写入[任务报告](./details/platform-resource-governance/R1.2_Task_Report.md)。
