Close P20 operator digest review queue

This commit is contained in:
Codex
2026-05-12 08:43:12 +08:00
parent e53ef895ae
commit 03cd2aa915
16 changed files with 758 additions and 21 deletions
@@ -409,6 +409,7 @@ candidate -> decision alert -> dispatcher -> 外部消息 -> delivery record
- 2026-05-12 P17 已完成 `visual trigger ROI router` 本地闭环:视觉触发策略现在区分 `triggered` / `skipped`,普通 observe/monitoring 状态不触发视觉复核,actionable、blocked、market degraded、broker/reconciliation degraded 与 council watch item 会输出可审计 trigger type / reason codes,并在 runtime、alert quality summary、脚本和 workbench 中暴露 trigger/skip/ROI 计数。
- 2026-05-12 P18 已完成 `visual evidence media dispatch` 本地闭环:visual review 现在会生成稳定 `media_evidence` block,外部文本通道不支持文件时降级为 `media_linked`,workbench 可消费本地截图路径时标记 `media_attached`,无视觉证据时标记 `media_unavailable`;dispatcher、delivery summary、runtime、脚本和 workbench 均可见媒体证据状态。
- 2026-05-12 P19 已完成 `multi-channel alert routing` 本地闭环:channel router 现在输出 workbench/webhook/WeCom/Email capability 与 health summary,WeCom/Email 在凭据缺失或 adapter 未实现时会以 disabled adapter 形式返回 `credential_missing` / `adapter_not_implemented`,dispatcher、delivery summary、runtime、脚本和 workbench 均可见 per-channel 状态。
- 2026-05-12 P20 已完成 `operator digest / review queue` 本地闭环:operator digest 会把高价值告警、被抑制 delivery、失败/重试 delivery、视觉 mismatch 与待反馈项聚合成 bounded review queue,并通过脚本、API 和 workbench `Alert Quality` 面板暴露。
### 验收
- 非重大错误不打断主循环
@@ -109,6 +109,11 @@
2026-05-12 P19 已落地:当前 channel router 保持现有 workbench/webhook 行为,同时输出结构化 `channel_route`、channel capability 与 channel health summary。WeCom / Email 已预留为 disabled adapter;凭据缺失时暴露 `credential_missing`,凭据存在但 adapter 未实现时暴露 `adapter_not_implemented`,不会把未配置通道伪装为成功发送。dispatcher、delivery summary、runtime 与 workbench 均可查看 per-channel 状态。
#### `src/services/alerts/operator_digest_service.py`
职责:把 recent alerts、delivery history、visual reviews、alert/visual feedback 和 alert quality summary 聚合成 operator digest。
2026-05-12 P20 已落地:digest 输出 high-value alerts、suppressed deliveries、failed/retry deliveries、visual mismatches、pending feedback items、quality flags 与 bounded review queue。该服务只做复盘聚合与 operator 可观测性,不改变 execution allowed、real live readiness、risk governor、trust bucket 或 operator confirmation protocol。
#### `src/services/alerts/delivery_policy_service.py`
职责:
@@ -217,6 +217,10 @@
- digest 能列出需要 operator 复核的 top items。
- 不改变交易权限或自动下单边界。
- 2026-05-12 P20 已完成 `Operator Digest And Review Queue` 本地闭环:新增 `OperatorDigestService` 聚合 recent alerts、delivery history、visual reviews、quality flags 与 feedback gaps,输出 `high_value_alerts`、`suppressed_alerts`、`failed_retry_items`、`visual_mismatch_items`、`pending_feedback_items` 与 bounded `review_queue`。
- 2026-05-12 P20 已新增 `scripts/run_operator_digest.py` 与 `GET /trading/alerts/operator-digest`,并将 digest status/counts/top queue items 接入 workbench `Alert Quality` 面板。
- 2026-05-12 P20 本地闭环已验证:focused P20 tests 通过,`tests/unit` 全量 685 个测试通过,script static checks 68 个脚本通过,`node --check src/web/app.js` 通过;digest 在无数据时返回 safe idle/no-op,有数据时可列出 operator top review items,脚本/API/runtime smoke 均可见 review queue/counts 且 runtime blockers=none;该层只读聚合,不改变交易权限或自动下单边界。
---
## 11. P21 Runtime Incident Journal