# R5 任务报告

## 目标

完成 [UniDesk #2322](https://github.com/pikasTech/unidesk/issues/2322)，提供 YAML/参数驱动的 `platform-infra observability closeout` 只读聚合入口，减少同类运行面复核的重复 CLI 调用。

## 实现

- 固定聚合现有 `status` 与 `validate`，不复制 Kubernetes、Tempo 或 Prometheus 访问实现。
- 支持可重复 `--query <PromQL>`、可选 `--trace-id <id>` 与 `--service <text>`。
- 所有子操作并发执行；聚合结果固定 `mutation=false`、`blocking=false`，可选证据失败只输出 non-blocking warning。
- 默认输出有界表格，`--full`/`--raw` 返回脱敏结构；命令与参数未写死产品、namespace 或 instance。
- query fan-out 上限由 `config/platform-infra/observability.yaml#metricsBackend.query.maxCloseoutQueries` 控制，并在远端访问前校验。
- 同步更新 `unidesk-otel` skill 与 observability 长期参考。

## 验证

- `bun test scripts/src/platform-infra-observability.test.ts`：10 pass，0 fail。
- `bun scripts/cli.ts platform-infra observability closeout --help`：scoped help 正常，无 PikaOA 产品硬编码。
- NC01 真实只读 smoke 以一次 CLI 调用汇总 status、validate、两项 readiness PromQL 与已有 trace，5 项检查全部 `ok=true`，输出 `mutation=false blocking=false`。
- `git diff --check` 通过。

## 边界

未修改公共运行面、Prometheus/Tempo/Collector、scrape/relabel、CI/CD 或业务 readiness 门禁；PR 仅创建，不合并。
