2.3 KiB
2.3 KiB
CODE_REVIEW — ECR-004
Role: REVIEWER
Date: 2026-08-06
Scope: d3188ca(相对 ECR-003)威科夫硬化
Decision: Approve
Evidence loaded
- Diff
d3188ca:range.py/events.py/analyze.py/chart_tv.js/ tests / ESS - 复跑:
tests/test_wyckoff.py+ golden + analyze contract → 14 passed - 合成夹具抽查:
abs_start_idx=20,low/high≈40.1/59.9(相对 003 的 bar0 已修好)
Acceptance ↔ Evidence
| Acceptance | Verdict | Evidence |
|---|---|---|
| TR 不吞明显前置趋势;边界近箱体 | PASS | 评分选段;单测 low/high 带 + abs_start≥12 + start 时间容差 |
| VP series 减负 | PASS | Top-8 + 填充 3 + POC/VAH/VAL;API bins≤24 |
| 阶段最小跨度 / 不重合 | PASS | 链式 cursor;unique (start,end) 断言 |
| elements_only 门闩 | PASS | include_wyckoff and not elements_only + 契约测试 |
| golden 不变 / 无策略改动 / 无币种表 | PASS | golden 绿;diff 无 config/strategies |
Findings
Medium(不挡 Approve)
-
同分 tie-break 偏向更长窗口
循环从长到短,score <= best_score时保留已有(更长)。多数情况分数拉开;若实盘出现「长窗与短窗同分」,仍可能略偏长。可选:同分取更短,或加1/length微项。 -
阶段常截断为 A–C
Spring/SOS 落在尾部时 D/E 因min_span被吃掉——与 ENG「空间不足截断」一致,但 UI 勾选「阶段」时用户可能期望总见 D/E。属产品预期,非缺陷;可在 UI/文档标明「尾部不足则省略」。
Low
abs_start_idx >= 12弱于「箱体起点」 —— 主测已用时间容差;该断言可再收紧到>= 16一类。- VP Top-N 无自动化 series 计数 —— 靠代码审查 + ENG 约定。
- 事件 marker 仍一律
arrowUp(003 遗留)。 - 失败路径仍回传
wyckoff.error字符串。
No blockers
未发现契约删键、缠论语义改动、策略改动、或回归红灯。
Decision
Approve
ECR-004 可维持 Done (Reviewed)。Medium 项进 backlog,不必立刻新 ECR,除非实盘 TR 仍偏长。
Next owner
Human — 主站 BTC 勾选威科夫目测;无发版要求则保持 v1.0.0 Unreleased 累计。