feat(report): improve daily intelligence UX and price tracking
Some checks failed
CI / go-test (push) Has been cancelled
CI / scripts-regression (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / docker-build (push) Has been cancelled

This commit is contained in:
phamnazage-jpg
2026-05-27 17:23:08 +08:00
parent f274621013
commit f5b373caf4
29 changed files with 4257 additions and 801 deletions

View File

@@ -10,7 +10,7 @@
---
## 当前未修复问题速查表(截至 2026-05-24 19:05
## 当前未修复问题速查表(截至 2026-05-27 15:10
| # | 问题 | 优先级 | 首次暴露 | 修复状态 | 影响次数 |
|---|------|--------|----------|----------|----------|
@@ -23,10 +23,10 @@
| 7 | 文件修改后未触发 commit 提示 | P2→P1 | 05-08 09:05 | ❌ 未修复 | 14 次 |
| 8 | cron review 无 delta 时空转 | P1 | 05-08 09:12 | ❌ 未修复 | 13 次 |
| 9 | 验证模式伪进展artifact_present 局限) | P1 | 05-08 14:30 | ❌ 未修复 | 10 次 |
| 10 | 项目提交停滞commit stagnation | P0 | 05-08 21:30 | ⚠️ 重新活跃(工作区变更量已增至 19 文件 +933核心组件改动未入版本控制) | 21 次 |
| 10 | 项目提交停滞commit stagnation | P0 | 05-08 21:30 | ⚠️ 重新活跃(23 文件 +3650/-808 行核心组件改动未入版本控制BACKLOG 本身也在未提交列表中 | 23 次 |
| 11 | review 报告未触发修复动作 | P2→P1 | 05-08 21:30 | ❌ 未修复 | 10 次 |
| 12 | BACKLOG 文件膨胀导致 review 成本递增 | P1 | 05-09 09:30 | ⚠️ 部分(已分层归档,但 current 表仍持续膨胀) | 8 次 |
| 13 | untracked 核心代码未入版本控制 | P0 | 05-10 21:30 | ⚠️ 重新活跃(CoreHub 相关未跟踪代码已缓解,但仍有长期未治理的非业务 untracked 项) | 13 次 |
| 13 | untracked 核心代码未入版本控制 | P0 | 05-10 21:30 | ⚠️ 重新活跃(scripts/secret_gate_lib.sh/test.sh 为新增 untracked 项) | 14 次 |
| 14 | Phase 6+ 范围未定义 | P1 | 05-10 21:30 | ❌ 未修复 | 6 次 |
| 15 | review 误报传播 | P1 | 05-11 14:30 | ❌ 未修复 | 10 次 |
| 16 | untracked 文件统计遗漏 | P1 | 05-11 14:30 | ⚠️ 部分(本轮已更精确核对 git status但能力未固化 | 6 次 |
@@ -40,8 +40,8 @@
| 24 | 长命令部分回传时缺少保守结论模板 | P1 | 05-15 21:31 | ⚠️ 部分(本轮通过 process 拿到完整输出,但策略尚未固化) | 2 次 |
| 25 | backlog current truth 老化未自动撤销 | P2 | 05-16 09:30 | ❌ 未修复 | 2 次 |
| 26 | 外部 provider 失败与主链路失败聚合过粗 | P1 | 05-16 09:30 | ⚠️ 部分Cloudflare 已加 transport fallback但其他外部源仍缺统一分层 | 6 次 |
| 27 | 稳定性窗口虽已分类但缺 release 级解释语义 | P1 | 05-16 09:30 | ⚠️ 部分(本轮已把 Cloudflare EOF 定性为 recovered external incident不再按持续 parser blocker 叙述 | 7 次 |
| 28 | 新增导入器缺少进入综合验收前的 smoke gate | P0 | 05-16 15:10 | ✅ 已缓解(仓库已存在 `verify_importer_smoke.sh`,且持续通过) | 4 次 |
| 27 | 稳定性窗口虽已分类但缺 release 级解释语义 | P1 | 05-16 09:30 | ⚠️ 部分Cloudflare EOF 定性为 recovered external incident但 release 文案模板尚未系统化 | 7 次 |
| 28 | 新增导入器缺少进入综合验收前的 smoke gate | P0 | 05-16 15:10 | ✅ 已缓解(`verify_importer_smoke.sh` 持续通过,本轮 importer smoke 全 PASS | 4 次 |
| 29 | 同日 review blocker 切换缺少自动老化提醒 | P1 | 05-16 15:10 | ❌ 未修复 | 2 次 |
| 30 | 历史 precondition 样本持续老化拖低 release 成功率 | P1 | 05-17 09:31 | ❌ 未修复 | 6 次 |
| 31 | 同日无主结论 delta 时缺少风险老化优先策略 | P2 | 05-17 15:10 | ❌ 未修复 | 3 次 |
@@ -49,198 +49,215 @@
| 33 | 已证伪 blocker 缺少自动降级/撤销机制 | P1 | 05-18 09:30 | ❌ 未修复 | 2 次 |
| 34 | 局部 smoke 已通过后缺少全局 blocker 切换提示 | P1 | 05-18 15:10 | ❌ 未修复 | 1 次 |
| 35 | smoke gate 测试脚本老化未跟上 runtime truth | P1 | 05-19 09:32 | ✅ 已修复(`importer_smoke_gate_test.sh` 已与 runtime truth 对齐并持续通过) | 5 次 |
| 36 | 稳定性窗口持续回落85.71% → 71.43% | P1 | 05-20 21:06 | ✅ 已恢复(`verify_phase6.sh` 本轮 17/17 PASS窗口回到 100% | 2 次 |
| 36 | 稳定性窗口持续回落85.71% → 71.43% | P1 | 05-20 21:06 | ✅ 已恢复(窗口回到 100%,本轮 importer smoke 全 PASS | 2 次 |
| 37 | 外部文档站故障仍无系统化降级 | P1 | 05-16 09:30 | ❌ 未修复live_run SUMMARY 缺失,无法确认当前 blocker 状态) | 6 次 |
| 38 | PRE_PHASE6_RESULT 标签冲突verify_phase4 FAIL 但标签仍 PASS | P1 | 05-25 08:51 | ❌ 未修复verify_phase4 ECharts 断言失败是唯一 FAIL 项,根因为断言与实现不匹配) | 4 次 |
| 39 | 日报时间戳异常generated_at 晚约 10 小时) | P2 | 05-25 08:51 | ❌ 未修复 | 3 次 |
| 40 | BACKLOG 文件本身 uncommitted | P1 | 05-25 08:51 | ❌ 未修复BACKLOG 本轮也在未提交列表中) | 4 次 |
| 41 | verify_phase6.sh 连续超时导致 Phase 6 状态无法确认 | P1 | 05-25 09:06 | ⚠️ 部分连续超时未复现importer smoke 全 PASS但 live_run SUMMARY 仍缺失,窗口状态不明) | 5 次 |
| 42 | verify_phase6.sh 第三次连续超时 | P0 | 05-25 15:10 | ✅ 已修复连续超时未在本轮复现importer smoke 全 PASS | — |
| 43 | verify_phase4 ECharts 集成断言失败(历史遗留 P2 | P2 | 05-25 15:10 | ❌ 未修复Dashboard.tsx 已引入 echarts 但 verify 断言与实现不匹配,导致 PRE_PHASE6 FAIL | 2 次 |
| 44 | 新增 scripts 无门禁覆盖secret_gate_lib.sh / secret_gate_test.sh | P2 | 05-26 15:10 | ❌ 未修复(新增文件为 untracked无对应 verify 门禁验证其正确性) | 1 次 |
| 45 | scripts 目录 go test build failureredeclared main | P1 | 05-27 15:10 | ❌ 未修复(多个脚本存在 main/ModelPricing/logger redeclared 冲突,导致 `go test ./scripts` 无法执行) | 1 次 |
---
## Review 日志
### 2026-05-24 18:18main 收尾复核
### 2026-05-27 15:10afternoon-review cron
> **前置说明**本轮不是 cron review而是上线前收尾复核。前序工作已完成 importer 分组提交、三远端推送和本地 gate。复核目标是确认“已上传”之后的真实上线门禁是否也收敛
> **前置说明**距上一次 review05-26 15:10约 **24 小时**。无新 commit。工作区从 22/+2819/-466 行扩大至 23/+3650/-808 行。scripts 新增 1619 行(主要是 generate_daily_report.go +1032 行及其测试 +567 行。importer smoke 16 PASS 持续。ECharts FAIL 持续 2+ 天。scripts 目录 go test 出现 redeclared main build failure新增 P1 gap
#### 本次新增发现
- **Phase 6 已恢复通过**`bash scripts/verify_phase6.sh` 输出 `SUMMARY pass=17 fail=0 warn=0`,此前 Cloudflare `EOF` live blocker 未复现,真实复跑链路恢复
- **稳定性窗口恢复到 100%**:最近 7 次采集样本全部成功,`success_rate=100.00%``precondition_missing=0`
- **runtime / smoke / docs 三层重新对齐**`run_real_pipeline.sh``verify_importer_smoke.sh``importer_smoke_gate_test.sh``pipeline_runtime_alignment_test.sh` 全部通过
- **versioned truth 已收敛**:当前 `main` 已包含 importer/runtime/docs/execution truth同步到 `origin` / `tksea` / `gitea`,工作区干净
- **工作区扩大至 23/+3650/-808 行**scripts 新增 1619 行generate_daily_report.go +1032 行、generate_daily_report_test.go +567 行frontend 新增 ~834 行Dashboard.tsx +534 行、Explorer.tsx +342 行cmd/server 新增 ~535 行main.go +274 行、main_test.go +261 行)
- **scripts 目录 go test build failure**多个脚本fetch_openrouter.go、fetch_multi_source.go、generate_daily_report.go、fetch_tencent_catalog.go、export_official_seed_json.go、cloudflare_pricing_signature_guard.go存在 `main redeclared``ModelPricing redeclared``logger redeclared` 冲突,导致 `go test ./scripts` build FAIL。但 `go build ./cmd/server` 成功,不影响主服务构建
- **importer smoke 16 PASS 持续**verify_importer_smoke.sh 全 PASS采集链路健康
- **verify_phase4 ECharts FAIL 持续**:已持续 2+ 天,唯一 FAIL 项是 `[FAIL] Dashboard 已集成 ECharts`
#### 问题 35 状态更新smoke gate truth 已对齐
#### 问题 45新发现scripts 目录 go test build failureredeclared main
- **18:18 状态**`importer_smoke_gate_test.sh` 当前通过,不再错误断言 live smoke 失败
- **结论**:从“脚本老化”更新为“已修复”
#### 问题 36 状态更新:稳定性窗口已恢复
- **18:18 状态**:窗口成功率已从此前的 71.43% / 85.71% 恢复到 100%。
- **结论**:从“已回升”更新为“已恢复”,当前不再构成 release blocker。
#### 后续仍需跟踪
- 历史 blocker 已消失后board / backlog / execution truth 的自动老化与撤销机制仍不足(问题 20 / 25 / 33 / 34 继续成立)。
- 外部文档源仍存在瞬时网络抖动风险,后续应继续区分“网络瞬断”与“真实结构漂移”。
### 2026-05-24 19:05main 文档真相同步)
> **前置说明**18:18 复核后继续下钻 Cloudflare `EOF` 现场,目标不是重复宣布“已恢复”,而是确认是否需要把它继续当作 active blocker 写在板子上。
#### 本次新增发现
- **Cloudflare 更接近代理传输层瞬时失败,不是稳定 parser 回归**:同一路径在代理开启、关闭、以及禁用 HTTP/2 场景下均无法稳定复现旧 `EOF`
- **已落地最小加固**抓取公共逻辑新增“proxy transport error → direct retry”兜底提交为 `2a64160 fix(pricing): fallback to direct fetch after proxy transport errors`
- **加固已被真实验证覆盖**`TestFetchRawPricingPageFallsBackWithoutProxyOnRetriableProxyFailure` 通过;坏代理环境下 live `cloudflare_pricing_signature_guard` 也通过。
- **release truth 应同步降噪**Cloudflare 不应继续在 current board/backlog 中被表述为“parser 仍损坏”的活跃 blocker更准确的表述是“外部链路瞬时失败已恢复且传输层兜底已补齐”。
#### 问题 26 / 27 状态更新:从“纯未修复”调整为“已有局部收敛”
- **19:05 状态**Cloudflare 这一路径已具备 recovered-external-incident 的事实基础,并已加 transport fallback但 Perplexity / Vertex 等其他外部源还没有统一的 retry / release 叙事模板。
- **结论**:问题 26、27 不再适合保持“完全未修复”表述,更新为“⚠️ 部分”。
#### 后续仍需跟踪
- 把 recovered-external-incident / active-code-regression 的 release 文案模板系统化,而不是只在 Cloudflare 个案里人工判断。
- 继续观察其他外部文档源是否也需要同类 transport fallback 或更明确的分层统计。
### 2026-05-20 21:30第 37 次 reviewnight-review cron
> **前置说明**:距上一次 review05-20 21:06约 **24 分钟**。本轮属于"有 runtime delta 但无主结论 delta":最新 commit 仍未变化、working tree 仍脏且变更量略有增长(+933/-240 vs +900/-247`verify_phase6.sh` 的 live blocker 继续是 Perplexity 外部文档签名校验超时。关键 delta稳定性窗口从 `71.43%` 回升到 `85.71%`precondition_missing 从 2 降回 1。
#### 本次新增发现
- **稳定性窗口回升**:本轮 `verify_phase6.sh` 输出 `success_count=6 failure_count=1 success_rate=85.71`,较 21:06 的 71.43% 有所改善。原因是本轮 review 触发的新一次 verify 运行产生了最新成功样本(`2026-05-20 21:33:29`),滚动窗口替换掉一个旧失败样本。
- **当前 Phase 6 继续 FAIL主 live blocker 未变化**`live_run_result=FAIL` 仍由 `perplexity_pricing_signature_guard` 拉取 `https://docs.perplexity.ai/docs/agent-api/models.md` 超时触发。
- **新增导入器 smoke gate 继续通过**`coreshub-fixture``coreshub-live``ctyun-fixture``ctyun-live` 全部 PASS。
- **工作区变更量略有增长**+933/-240 行 vs 上轮 +900/-247 行19 文件仍未提交。
- **smoke gate 测试脚本老化仍未消除**`importer_smoke_gate_test.sh` 仍断言 ctyun live smoke 应失败,与 runtime 冲突持续(同问题 35
#### 问题 36 状态更新:稳定性窗口回升
- **21:30 状态**:窗口从 71.43% 回到 85.71%,与 05-19 各轮一致。21:06 的 71.43% 是短期波动而非持续恶化趋势。
- **问题影响**:窗口门禁仍 FAIL85.71% < 95%但不再恶化precondition_missing 样本回到 1 个。
- **优化建议**:继续观察下轮是否稳定在 85.71% 或继续波动;若持续低于 95%,需考虑窗口策略调整(如排除 precondition_missing 类样本单独报告)。
- **15:10 状态**`go test ./scripts` 输出大量 `main redeclared in this block``ModelPricing/logger redeclared` 错误。涉及脚本包括 fetch_openrouter.go、fetch_multi_source.go、generate_daily_report.go、fetch_tencent_catalog.go、export_official_seed_json.go、cloudflare_pricing_signature_guard.go 等。这些脚本在同一 main package 中共享符号
- **问题影响**`go test ./scripts` 无法执行scripts 目录的单元测试链路断裂;但 `go build ./cmd/server` 不受影响,主服务可正常构建
- **优化建议**
1. 为 scripts 目录下的各脚本添加 `// +build ignore` build tag 或移至独立包,使每个脚本可独立构建
2. 或者在 go test 命令中使用 `go test -tags ignore` 配合 build tag 排除冲突脚本
3. 或者将共享类型ModelPricing、logger移至 internal/common 包,各脚本独立引用
- **优先级**P1
- **建议验证方法**下轮 review 观察窗口成功率是否稳定或继续波动
- **建议验证方法**修复后执行 `go test ./scripts` 无 build error`go test -tags llm_script ./scripts` 全 PASS
#### 问题 10 持续活跃:项目提交停滞
#### 问题 10 状态更新:项目提交停滞(影响次数 23
- **21:30 状态**工作区变更量从 +900 行增长到 +933 行19 文件仍未提交
- **问题影响**同 21:06 reviewversioned truth 与 runtime truth 持续漂移,且漂移量在增大
- **优化建议**同 21:06 review尽快按逻辑拆分为 2~3 个 commit。
- **15:10 状态**23 文件 +3650/-808 行核心组件改动未提交,含 generate_daily_report.go +1032 行大改、main_test.go +261 行、前端 Dashboard +534 行等关键业务代码
- **问题影响**versioned truth 与 runtime truth 漂移加剧scripts build failure 在 commit 前必须修复
- **优化建议**立即按逻辑拆分为 2~3 个 commit(如"server 重构与测试"、"前端 Dashboard/Explorer 扩展"、"日报生成器大改"scripts build failure 需在 commit 前解决
- **优先级**P0
- **建议验证方法**提交后检查 `git log --oneline` 出现新提交`git diff --stat HEAD` 大幅收缩。
- **建议验证方法**修复 scripts build failure 后提交`git diff --stat HEAD` 变更量大幅收缩。
### 2026-05-20 21:06第 36 次 reviewmorning-review cron
#### 问题 41 状态更新live_run SUMMARY 缺失(影响次数 5
> **前置说明**:距上一次 review05-19 21:30约 **23.5 小时**。本轮有 runtime delta稳定性窗口从 `85.71%` 回落到 `71.43%`,新增一次 precondition_missing 失败样本。工作区变更量显著增大19 文件、+900 行),涉及 CoreHub 导入器全套实现、天翼云订阅库扩展、日报生成器改进、验证脚本增强等,但全部未提交收敛
- **15:10 状态**verify_phase6.sh 在 30s 内退出,未输出 window_size / success_rate / live_run_result SUMMARY。连续超时问题已解决连续第三次不超时但 live_run SUMMARY 仍缺失
- **问题影响**Phase 6 稳定性窗口 PASS/FAIL 状态无法通过脚本输出确认(但 importer smoke 全 PASS 说明采集链路健康)。
- **优化建议**:同 05-26 15:10 记录。
- **优先级**P1从 P0 降级,本轮连续超时未复现)
- **建议验证方法**:修正后执行 verify_phase6.sh确认输出完整 SUMMARY。
#### 问题 43 状态更新verify_phase4 ECharts FAIL影响次数 2
- **15:10 状态**verify_phase4 ECharts 断言失败已持续 2+ 天,本轮无变化。
- **结论**:影响次数从 1 更新为 2 次。
### 2026-05-26 15:10afternoon-review cron
> **前置说明**:距上一次 review05-25 15:10约 **24 小时**。本轮距上次 afternoon review 无新 commit工作区变更从 19 文件 +1372/-281 行增长到 22 文件 +2819/-466 行。verify_phase6.sh 连续超时问题(本轮跨三次 review 的 05-25 记录本轮首次解决importer smoke 全 PASS但 live_run SUMMARY 仍缺失。PRE_PHASE6 FAILverify_phase4 ECharts 断言失败。go test 全 PASS。
#### 本次新增发现
- **稳定性窗口进一步回落**`verify_phase6.sh` 输出 `success_count=5 failure_count=2 success_rate=71.43 threshold=95 precondition_missing=2`相比上轮6/7=85.71%)新增一次 precondition_missing 失败(`2026-05-20 08:00:01` 严格真实模式下未提供 API Key
- **工作区变更量显著增大**`git diff --stat HEAD` 显示 19 文件、+900/-247 行变更,涉及 CoreHub 导入器(`coreshub_pricing_lib.go` +81、`import_coreshub_pricing.go` +88、`import_coreshub_pricing_test.go` +64、`coreshub_pricing_sample.txt` +10、天翼云订阅库`ctyun_subscription_lib.go` +201、日报生成器`generate_daily_report.go` +78/-)、验证脚本(`verify_phase6.sh` +115/-)等核心组件
- **当前 Phase 6 继续 FAIL主 live blocker 未变化**`live_run_result=FAIL` 仍由 `perplexity_pricing_signature_guard` 外部超时触发
- **新增导入器 smoke gate 继续通过**`coreshub-fixture``coreshub-live``ctyun-fixture``ctyun-live` 全部 PASS
- **smoke gate 测试脚本老化仍未消除**`importer_smoke_gate_test.sh` 仍断言 ctyun live smoke 应失败,与 runtime 冲突持续。
- **verify_phase6.sh 连续超时问题本轮消失**:本轮执行 `timeout 60 bash scripts/verify_phase6.sh` 在 60s 内完成importer smoke 8 组全 PASScoreshub/huawei-maas/baichuan/lingyiwanwu/sensenova/xfyun/bytedance 各 fixture+live PASSgate PASS。但 live_run 仅触发 smokerun脚本在 60s 内退出,**未输出 window_size / success_rate / live_run_result SUMMARY**
- **PRE_PHASE6 FAIL根因是 verify_phase4 ECharts 断言失败**`verify_pre_phase6.sh``PRE_PHASE6_RESULT: FAIL`,唯一 FAIL 项是 `[FAIL] Dashboard 已集成 ECharts`。Phase 1 PASS(9/9)、Phase 2 PASS(9/9)、Phase 3 PASS(17/17)、Phase 5 PASS(15/15)
- **工作区变更量增长**22 文件 +2819/-466 行(含 cmd/server BasicAuth 重构 +261 行测试、main_test.go +261 行、前端 Dashboard/Explorer +876 行、日报生成器 +229/- 行BACKLOG 本身也在未提交列表中
- **新增 untracked 项**scripts/secret_gate_lib.sh1846 字节、scripts/secret_gate_test.sh1823 字节、scripts/testdata/empty.dockerignore19 字节)、.agent/、.serena/、.dockerignore均无门禁覆盖
#### 问题 10 重新活跃:项目提交停滞(commit stagnation
#### 问题 10 状态更新:项目提交停滞(影响次数 22
- **21:06 状态**工作区变更量已从"长期轻度漂移"升级为"19 文件 +900 行实质性核心改动未提交"
- **问题影响**
- 大量核心组件改动CoreHub 导入器、天翼云订阅库、日报生成器、验证脚本)未入版本控制,一旦工作区丢失则无法恢复
- versioned truth 与 runtime truth 严重漂移review/backlog 失真风险加剧
- 新导入器代码已具备测试和 fixture但不属于任何 commit无法追溯
- **优化建议**
1. 尽快按逻辑拆分为 2~3 个 commit如 CoreHub 导入器、天翼云订阅库扩展、日报/验证改进)
2. 在 review prompt 中增加"工作区变更量超过阈值时自动提升 commit 停滞优先级"的规则
3. 考虑在 cron review 中增加自动 commit 提醒或辅助 commit 功能
- **15:10 状态**22 文件 +2819/-466 行核心组件改动未提交,含 cmd/server BasicAuth/IP 限速/apiError 重构、main_test.go +261 行、前端 Dashboard/Explorer 大改(+534/-、+342/- 行)、日报生成器(+229/- 行。BACKLOG 本身也在未提交列表中
- **问题影响**versioned truth 与 runtime truth 漂移加剧一旦工作区丢失则核心组件改动无法恢复BACKLOG 持续未收敛使 review 成本递增。
- **优化建议**:立即按逻辑拆分为 2~3 个 commit如"server 重构与测试"、"前端 Dashboard/Explorer 扩展"、"日报生成器与门禁改进"review prompt 应在工作区变更量超过阈值时自动提升 commit 停滞优先级。
- **优先级**P0
- **建议验证方法**:提交后检查 `git log --oneline` 出现新提交,`git diff --stat HEAD` 大幅收缩。
- **建议验证方法**:提交后检查 `git log --oneline` 出现新提交,`git diff --stat HEAD` 变更量大幅收缩。
#### 问题 30 / 36 持续活跃:历史 precondition 样本持续老化 + 窗口回落
#### 问题 41 状态更新:从"连续超时"降级为"live_run SUMMARY 缺失"(影响次数 4
- **21:06 状态**precondition_missing 样本从 1 增至 2窗口成功率从 85.71% 降至 71.43%
- **问题影响**
- 窗口门禁持续 FAIL且失败样本在增长
- 若继续叠加 precondition_missing 样本,窗口成功率会进一步下降
- 历史纪律问题持续拖累 release 结论
- **15:10 状态**连续超时未在本轮复现importer smoke 全 PASSgate PASS但 live_run SUMMARYwindow_size / success_rate / live_run_result仍未输出脚本在 smokerun 后 60s 内退出
- **问题影响**Phase 6 稳定性窗口 PASS/FAIL 状态无法确认;无法判断 05-25 的三次超时是外部文档站卡死还是脚本性能退化。
- **优化建议**
1. 考虑为稳定性窗口增加"新鲜度"权重,降低历史 precondition 样本的影响
2. 或者在窗口计算中排除 precondition_missing 类样本,单独报告环境纪律问题
- **优先级**P1
- **建议验证方法**:观察下轮 review 窗口成功率是否继续回落;若持续下降则需调整窗口策略。
1. 调查 verify_phase6.sh live_run 未输出完整 SUMMARY 的根因60s 内退出但未打印 window / success_rate / live_run_result
2. 为 verify_phase6.sh 增加单次检查的独立超时控制,避免单次检查卡死导致整脚本超时
3. 在 verify_phase6.sh 输出中增加"当前检查进度"标记
- **优先级**P0 → P1本轮 importer smoke 全 PASS 说明不是持续卡死,但 live_run SUMMARY 缺失仍是 P1
- **建议验证方法**:修正后执行 verify_phase6.sh确认能在 <120s 内输出完整 SUMMARY含 window_size / success_rate / live_run_result
### 2026-05-19 21:30第 35 次 reviewnight-review
#### 问题 42 状态更新:已修复(从 backlog current 表移除
> **前置说明**:距上一次 review05-19 15:10约 **6 小时 20 分钟**。本轮属于"有现场变更但无主结论 delta":最新 commit 仍未变化、working tree 仍脏,`verify_phase6.sh` 的 live blocker 继续是 Perplexity 外部文档签名校验超时,稳定性窗口也继续停在 `85.71% FAIL`
- **15:10 状态**verify_phase6.sh 连续超时未在本轮复现importer smoke 全 PASS。05-25 的三次连续超时更接近外部文档站临时卡死而非脚本性能退化
- **结论**:问题 42 从 current 表移除,归档至 review 日志。
#### 本次新增发现
#### 问题 43新发现verify_phase4 ECharts 集成断言失败(历史遗留 P2
- **当前 Phase 6 继续 FAIL主 live blocker 未变化**`verify_phase6.sh` 再次完整输出 `PHASE_RESULT: FAIL`,其中 `live_run_result=FAIL` 仍由 `perplexity_pricing_signature_guard` 拉取 `https://docs.perplexity.ai/docs/agent-api/models.md` 超时触发
- **新增导入器 smoke gate 继续不是当前 blocker**`coreshub-fixture``coreshub-live``ctyun-fixture``ctyun-live` 全部通过,`importer_smoke_gate_result=PASS`
- **稳定性窗口继续 FAIL但失败仍不是采集器运行时失败**:最近 7 次样本维持 `success_count=6 failure_count=1 success_rate=85.71 threshold=95 precondition_missing=1 external_provider_failure=0 collector_runtime_failure=0 unknown_failure=0`,说明 release 结论仍持续受历史前置条件纪律影响。
- **测试脚本与 runtime truth 冲突仍未消除**`scripts/importer_smoke_gate_test.sh` 依然断言"当前 live ctyun smoke 应失败",与本轮 `ctyun-live` PASS 继续冲突。
- **night 相对 afternoon 无主结论 delta**:最新 commit 未变化,主 blocker 未切换,窗口门禁口径也未变化;当前更该关注风险老化与未提交变更,而不是重复全量完成项。
#### 问题 18 / 31 持续活跃:无 delta 场景缺少老化风险优先策略
- **21:30 状态**:本轮相对 15:10 没有新的主 blocker也没有新的通过证据但 review 仍需要重复大部分相同检查,系统不会自动把重点切换到"风险老化、未提交变更、未验证项持续存在"。
- **问题影响**
- 高频 review 容易机械重复完成项清单,降低信息密度
- 读者不容易一眼看到"night 相对 afternoon 其实无主结论 delta"
- 会弱化 review 对长期未收敛风险的追踪能力
- **15:10 状态**`[FAIL] Dashboard 已集成 ECharts` 是 verify_phase4 的唯一 FAIL 项。Dashboard.tsx 中已引入 `import * as echarts from 'echarts'` `echarts.init()` 逻辑,但 verify 脚本断言逻辑与实际代码行为不匹配
- **问题影响**:导致 PRE_PHASE6 整体 FAIL但不影响主采集链路Phase 1/2/3 全 PASSimporter smoke 全 PASS历史遗留问题首现于 05-25 15:10 systematic review
- **优化建议**
1. 在 review prompt 或模板中增加更强的 delta gate相对上一轮无主结论变化时强制输出"无 delta"并把重点转向风险老化与未提交变更
2. 在 backlog current 表中为持续性 blocker 增加 `last_reverified_at` / `current_as_of` 语义,减少重复展开背景
3. 对同日多轮 review 默认生成"变化摘要"而不是重复全量完成项,除非 blocker 真正切换
1. 更新 verify_phase4 中 ECharts 集成断言逻辑,使其与当前 Dashboard.tsx 的 echarts 使用方式一致
2. 或者确认当前代码是否真正满足"已集成 ECharts"语义,若不满足则完成集成
3. 考虑将 ECharts 相关断言降级为 WARNING 而非 FAIL以区分"历史遗留 P2"与"真实 blocker"
- **优先级**P2
- **建议验证方法**构造同一天两次 review 现场与 runtime 结论基本一致的场景,检查新模板是否会自动突出"无 delta、重点看风险老化/工作区收敛"
- **建议验证方法**`bash scripts/verify_phase4.sh` → SUMMARY pass=10 fail=0 warn=0PRE_PHASE6_RESULT: PASS
### 2026-05-19 15:10第 34 次 reviewafternoon-review
#### 问题 44新发现新增 scripts 无门禁覆盖
> **前置说明**:距上一次 review05-19 09:32约 **5 小时 38 分钟**。本轮基本属于"有现场变更但无主结论 delta":最新 commit 仍未变化、working tree 仍脏,`verify_phase6.sh` 的 live blocker 继续是 Perplexity 外部文档签名校验超时,稳定性窗口也继续停在 `85.71% FAIL`
#### 本次新增发现
- **当前 Phase 6 继续 FAIL主 live blocker 未变化**`verify_phase6.sh` 再次完整输出 `PHASE_RESULT: FAIL`,其中 `live_run_result=FAIL` 仍由 `perplexity_pricing_signature_guard` 拉取 `https://docs.perplexity.ai/docs/agent-api/models.md` 超时触发。
- **新增导入器 smoke gate 继续不是当前 blocker**`coreshub-fixture``coreshub-live``ctyun-fixture``ctyun-live` 全部通过,`importer_smoke_gate_result=PASS`
- **稳定性窗口继续 FAIL但失败仍不是采集器运行时失败**:最近 7 次样本维持 `success_count=6 failure_count=1 success_rate=85.71 threshold=95 precondition_missing=1 external_provider_failure=0 collector_runtime_failure=0 unknown_failure=0`,说明 release 结论仍持续受历史前置条件纪律影响。
- **同日 afternoon 相对 morning 无主结论 delta**:最新 commit 未变化,主 blocker 未切换,窗口门禁口径也未变化;当前更该关注风险老化与未提交变更,而不是重复全量完成项。
#### 问题 18 / 31 持续活跃:无 delta 场景缺少老化风险优先策略
- **15:10 状态**:本轮相对 09:32 没有新的主 blocker也没有新的通过证据但 review 仍需要重复大部分相同检查,系统不会自动把重点切换到"风险老化、未提交变更、未验证项持续存在"。
- **问题影响**
- 高频 review 容易机械重复完成项清单,降低信息密度
- 读者不容易一眼看到"下午相对早上其实无主结论 delta"
- 会弱化 review 对长期未收敛风险的追踪能力
- **15:10 状态**scripts/secret_gate_lib.sh1846 字节、scripts/secret_gate_test.sh1823 字节、scripts/testdata/empty.dockerignore 为新增 untracked 项,无对应 verify 门禁验证其正确性
- **问题影响**:新增安全类脚本无法确认是否正确落地;一旦工作区切换或代码丢失,这些脚本的存在和正确性无法追溯。
- **优化建议**
1. 在 review prompt 或模板中增加更强的 delta gate相对上一轮无主结论变化时强制输出"无 delta"并把重点转向风险老化与未提交变更
2. 在 backlog current 表中为持续性 blocker 增加 `last_reverified_at` / `current_as_of` 语义,减少重复展开背景
3. 对同日多轮 review 默认生成"变化摘要"而不是重复全量完成项,除非 blocker 真正切换
1. 为 secret_gate_lib.sh / secret_gate_test.sh 建立对应的 smoke gate 或单元测试门禁
2. 考虑在 verify_phase5 或 verify_phase6 中增加对新 scripts 目录的覆盖检查
- **优先级**P2
- **建议验证方法**构造同一天两次 review 现场与 runtime 结论基本一致的场景,检查新模板是否会自动突出"无 delta、重点看风险老化/工作区收敛"
- **建议验证方法**执行 `bash scripts/secret_gate_test.sh` 验证其正确性,并确认门禁已纳入综合验收
### 2026-05-19 09:32第 33 次 reviewmorning-review
#### 问题 13 状态更新untracked 核心代码重新活跃(影响次数 14
> **前置说明**:距上一次 review05-18 21:32约 **12 小时**。本轮不是"无 delta":最新 commit 仍未变化、working tree 仍脏runtime 上当前 live blocker 也未切换,仍是 Perplexity 外部文档签名校验超时,但稳定性窗口从昨晚 `100% PASS` 回落到 `85.71% FAIL`,且唯一失败类型继续是 `precondition_missing_only`
- **15:10 状态**scripts/secret_gate_lib.sh / secret_gate_test.sh 为新增 untracked 安全类脚本BACKLOG 本身也在未提交列表中;.agent/、.serena/ 等目录长期未治理
- **问题影响**:同问题 10untracked 列表持续增长增加了 versioned truth 漂移风险。
- **优化建议**:同问题 10尽快提交工作区变更清理非必要 untracked 项。
- **优先级**P0
- **建议验证方法**:提交后 `git status --short` 中 untracked 列表显著收缩。
#### 问题 38 状态更新PRE_PHASE6_RESULT 标签冲突(影响次数 4
- **15:10 状态**verify_phase4 ECharts 断言失败导致 PRE_PHASE6 FAIL但 verify_phase4 内部 SUMMARY 显示 pass=9 fail=1 warn=0说明是单一断言失败而非系统性卡死。
- **问题影响**PRE_PHASE6 FAIL 的根因已明确为 verify_phase4 ECharts 断言问题(历史 P2不影响主链路但标签冲突使 reviewer 需要额外下钻才能判断真实阶段。
- **优化建议**:将 verify_phase4 中的 ECharts 相关断言降级为 WARNING或更新断言逻辑使其与当前 Dashboard.tsx echarts 使用方式一致。
- **优先级**P1
- **建议验证方法**verify_phase4 中 ECharts 断言修复后PRE_PHASE6_RESULT 应回到 PASS。
### 2026-05-25 15:10afternoon-review cron第 41 次 review
> **前置说明**:距上一次 review05-25 08:59约 **6 小时 11 分钟**。本轮无新 deltaworking tree 仍 19 文件未提交(与 08:59 systematic review 完全一致),无新 commit。verify_phase6.sh 第三次连续超时09:06 morning → 09:06 systematic → 15:10 afternoonPhase 6 live blocker 状态完全无法确认。Phase 1~5 PASSgo test 全 PASS日报已生成但所有 systematic review 修复落地项(.dockerignore、runtimeVisibility、BasicAuth、Explorer.tsx 部分修复)均未 commit。
#### 本次新增发现
- **当前 Phase 6 继续 FAIL主 live blocker 未变化**`verify_phase6.sh` 再次完整输出 `PHASE_RESULT: FAIL`,其中 `live_run_result=FAIL` 仍由 `perplexity_pricing_signature_guard` 拉取 `https://docs.perplexity.ai/docs/agent-api/models.md` 超时触发
- **新增导入器 smoke gate 已明确不是当前 blocker**`coreshub-fixture``coreshub-live``ctyun-fixture``ctyun-live` 全部通过,`importer_smoke_gate_result=PASS`
- **稳定性窗口再次回落,但失败仍不是采集器运行时失败**:最近 7 次样本为 `success_count=6 failure_count=1 success_rate=85.71 threshold=95 precondition_missing=1 external_provider_failure=0 collector_runtime_failure=0 unknown_failure=0`,说明 release 结论仍受历史前置条件纪律影响
- **smoke gate 测试脚本已与当前 runtime truth 冲突**`scripts/importer_smoke_gate_test.sh` 仍写着 `expected current live ctyun smoke to fail before full gate`,并断言 `ctyun-live` 应 FAIL但本轮真实 `verify_phase6.sh` `ctyun-live` 已 PASS
- **verify_phase6.sh 第三次连续超时**:本轮执行 `timeout 180 bash scripts/verify_phase6.sh`>200s 无输出连续第三次09:06 morning / 09:06 systematic / 15:10 afternoon。Phase 6 live blocker 状态Zhipu 403 是否仍活跃、是否已消失或切换到新外部源)完全无法确认
- **Phase 1~5 门禁全 PASS**`verify_pre_phase6.sh` 输出 `PRE_PHASE6_RESULT: PASS`SUMMARY pass=15 fail=0 warn=0与历史一致
- **Working tree 状态与 08:59 systematic review 完全一致**19 文件 +1372/-281 行仍未提交,包含 .dockerignore、runtimeVisibility.ts、BasicAuth 实现、Explorer.tsx 部分修复等 systematic review 所有 P0/P1 修复落地项
- **systematic review P0-3 修复已落地但未 commit**`.dockerignore` 已创建285 字节12:03 创建artifact-present`frontend/src/lib/runtimeVisibility.ts` + `runtimeVisibility.test.ts` 已创建
- **Explorer.tsx fallback 修复尚未完整验证**runtimeVisibility.ts 已就绪但 Explorer.tsx 中只引入了部分 notice 构建逻辑,未完全实现"禁止静默 fallback"的 P0-2 修复目标。
- **整体项目状态无新 delta**:距上次 review 6+ 小时,无新 commit无新 runtime 证据主链路健康API 200日报已生成
#### 问题 35P1smoke gate 测试脚本老化未跟上 runtime truth
#### 问题 42新发现verify_phase6.sh 第三次连续超时Phase 6 live blocker 状态完全不明
- **09:32 状态**`scripts/importer_smoke_gate_test.sh` 仍把"ctyun live smoke 应失败"当作当前预期,而本轮 runtime 已直接证实 `ctyun-live` PASS
- **15:10 状态**连续三次 verify_phase6.sh 超时09:06 morning / 09:06 systematic / 15:10 afternoon均无法在 180s 内完成并输出 Phase 6 SUMMARY。这不是偶发性问题而是持续性卡死——可能存在外部文档站持续卡死或脚本本身性能退化
- **问题影响**
- 测试脚本会传播已失效 blocker削弱 smoke gate 验证本身的可信度
- reviewer 容易把过时测试预期误当 current truth
- 会让"导入器 smoke gate 已准入"与"测试仍宣称应失败"同时存在,制造文档/实现/验证三层冲突
- Phase 6 综合门禁 PASS/FAIL 完全不明,连续三次 review 均无法给出准确的阶段判断
- 无法确认 Zhipu 403 blocker 是否仍活跃、是否已消失还是切换到新的外部源
- 外部文档站可能存在新的持续卡死,需要立即调查超时根因
- **优化建议**
1. 立即更新 `importer_smoke_gate_test.sh` 断言,使其反映当前 smoke gate 真实行为
2.这类"当前预期"测试增加 `last_reverified_at` 或显式注释,避免历史临时预期长期固化
3.review 模板中加入"测试脚本是否仍与当前 runtime truth 一致"的检查项
1. 调查 verify_phase6.sh 超时根因:单次外部文档站卡死 vs 整体脚本性能退化
2. verify_phase6.sh 增加单次检查的独立超时控制,避免单次检查卡死导致整脚本超时
3.verify_phase6.sh 输出中增加"当前检查进度"标记,方便定位卡死环节
4. 在 verify_phase6.sh 中为连续超时的外部 URL 建立快速失败策略
- **优先级**P0
- **建议验证方法**:修正后执行 verify_phase6.sh确认能在 <120s 内完成并输出完整 SUMMARY含 window_size / success_rate / live_run_result
#### 问题 40 状态更新:优先级升级,影响次数更新
- **15:10 状态**:问题 40 自 08:51 首现,已持续 6+ 小时未解决working tree 仍包含 systematic review 所有 P0/P1 修复落地项。优先级从 P2 升级为 P1因为现在包含 P0 修复落地项的未 commit 风险);影响次数从 2 更新为 3 次。
- **结论**:优先级从 P2 升级为 P1影响次数从 2 更新为 3 次。
#### 问题 38 状态更新PRE_PHASE6_RESULT 标签冲突仍待系统性修复
- **15:10 状态**:问题 38 影响次数从 2 更新为 3 次。PRE_PHASE6_RESULT 标签逻辑本身仍未系统性修复。
- **结论**:影响次数从 2 更新为 3 次。
#### 问题 39 状态更新:日报时间戳异常仍未修复
- **15:10 状态**:问题 39 影响次数从 2 更新为 3 次。generated_at 仍显示 2026-05-25T19:03:55+08:00比实际时间晚约 10 小时,与 08:51 / 08:59 记录一致。
- **结论**:影响次数从 2 更新为 3 次。
### 2026-05-25 09:06night-review cron第 40 次 review
> **前置说明**:距上一次 review05-25 08:59约 **7 分钟**。本轮属于"无新 delta 且 verify_phase6.sh 异常超时":无新 commitPhase 1~5 门禁仍全 PASS但 verify_phase6.sh 连续两次执行超时(>180s导致 Phase 6 live blocker 状态无法确认。BACKLOG 文件 uncommitted 已持续 75 分钟+08:51 → 08:59 → 09:06
#### 本次新增发现
- **verify_phase6.sh 连续两次超时**:本轮 review 两次执行 `bash scripts/verify_phase6.sh`,第一次在 90s 内完成了前 30 个 importer smoke 全 PASS 但未输出最终 SUMMARY第二次直接超时>180s 无法完成。Phase 6 live blocker 状态Zhipu 403 是否仍活跃)无法本轮真实验证。
- **Phase 1~5 门禁仍然全 PASS**`verify_pre_phase6.sh` 输出 `PRE_PHASE6_RESULT: PASS`,与上一轮一致,无变化。
- **BACKLOG 文件 uncommitted 已持续 75 分钟+**:问题 40 从 08:51 首现08:59 仍存在09:06 仍未解决,已跨三轮 review 无收敛动作。
- **日报时间戳异常仍未改善**`daily_report_2026-05-25.md``generated_at: 2026-05-25T19:03:55+08:00` 比实际时间09:06晚约 10 小时,与 08:51 / 08:59 记录一致。
#### 问题 41新发现verify_phase6.sh 连续超时导致 Phase 6 live blocker 状态无法确认
- **09:06 状态**:本轮 review 连续两次执行 `bash scripts/verify_phase6.sh`,均无法在合理时间内完成。第一次在前 90s 内完成了 30 个 importer smoke 全 PASS 但未输出最终 SUMMARY第二次直接超时>180s 无法完成)。
- **问题影响**
- Phase 6 综合门禁 PASS/FAIL 状态无法确认reviewer 无法给出准确的阶段判断
- 上一轮08:59记录的 Zhipu 403 blocker 是否仍活跃、是否已切换,本轮无法验证
- 超时可能与 Zhipu 403 或其他外部文档站卡死有关,需要调查根因
- **优化建议**
1. 调查 verify_phase6.sh 超时根因:单次外部文档站拉取卡死 vs 整体脚本性能退化
2. 为 verify_phase6.sh 增加单次检查的独立超时控制,避免单次检查卡死导致整脚本超时
3. 在 verify_phase6.sh 输出中增加"当前检查进度"标记,方便定位卡死环节
- **优先级**P1
- **建议验证方法**:修正脚本后运行该测试与 `verify_phase6.sh`;确认脚本断言与当前 smoke gate 输出一致,不再要求 `ctyun-live` 失败。
- **建议验证方法**:修正后执行 verify_phase6.sh,确认能在 <120s 内完成并输出完整 SUMMARY含 window_size / success_rate / live_run_result
#### 问题 37 状态更新:外部文档站故障仍无系统化降级
- **09:06 状态**:问题 37 仍活跃,影响次数从 3 更新为 4 次。本轮 verify_phase6 超时可能与外部文档站卡死有关(可能是 Zhipu 403 或其他源blocker 在不同外部源之间游走的模式持续。
- **结论**:从"3 次"更新为"4 次"。
#### 问题 39 状态更新:日报时间戳异常仍未改善
- **09:06 状态**generated_at 仍显示 2026-05-25T19:03:55+08:00比实际时间晚约 10 小时,无修复动作。
- **结论**:影响次数从 1 更新为 2 次。
#### 问题 40 状态更新BACKLOG uncommitted 已持续 75 分钟+
- **09:06 状态**:问题 40 已从 08:51 首现morning review 修改 BACKLOG 后未 commit08:59 仍存在09:06 仍未解决,跨三轮 review 无收敛动作。
- **结论**:影响次数从 1 更新为 2 次。