# R16.1 任务报告

## 根因

- Temporal schedule 与 worker activity 一直按 10 分钟周期成功执行。
- API/worker 拆分后，worker 原子写共享 PVC cache，但 API 的 `AccountScoreService` 只在进程启动时读取一次，导致 `/api/scores` 长期返回 API 私有旧内存快照。

## 修复

- ApiState PR #18 已合并，merge commit 为 `2f280e519924cb28b9965e7b8728492870528b91`。
- API 每次读取状态时同步共享 cache，并按 `nextRefreshAt` 投影 `ready/stale`；worker 刷新失败时也原子写回 stale/error。
- 未改变 Temporal schedule、刷新周期、dispatcher、HTTP 合同、SQLite 或 YAML authority。

## 分级验证

- L0：同一 service instance 能读取外部 cache 更新，future `nextRefreshAt` 为 ready，overdue 为 stale。
- L1：同一 API 进程在外部 writer 原子更新 cache 后无需重启即可返回新时间。
- L3：API/worker 均 `1/1 Ready`；受控 production API 返回 `status=ready`、`refreshedAt=2026-07-17T04:22:37.535Z`、`nextRefreshAt=2026-07-17T04:32:37.535Z`。
- 公网 product smoke 三页通过；评分页截图显示北京时间 `07/17 12:22:37` 和正常倒计时 `09:05`，无写请求。
