engram
设计原型 English ← 所有页面

自学习控制台

正在运行第 9/10 轮 4 分钟前启动 · 预计还需 ~6 分钟
evolution.tsv — 最近 20 轮 实时追踪 · 通过 SSE 自动刷新
轮次 时间戳 pass_rate Δ pass_rate static_score 提案方 裁决方 结果
r9 ← 14:34:07 运行中… opus-4 sonnet-4 运行中
r8 14:28:44 0.940 +0.030 58/60 opus-4 sonnet-4 已接受
r7 14:22:11 0.910 +0.030 57/60 sonnet-4 sonnet-4 已接受
r6 14:15:03 0.840 -0.040 53/60 opus-4 haiku-4 已拒绝
r5 14:08:32 0.880 +0.030 56/60 sonnet-4 opus-4 已接受 ★ 阶段关卡
r4 2026-04-17 0.850 +0.040 55/60 opus-4 sonnet-4 已接受
r3 2026-04-16 0.810 +0.040 54/60 sonnet-4 opus-4 已接受
r2 2026-04-15 解析错误 41/60 opus-4 sonnet-4 已拒绝
r1 2026-04-14 0.740 基线 49/60 sonnet-4 sonnet-4 已接受
pass_rate 趋势 — 全部轮次
棘轮机制:分数单调递增
0.7 0.8 0.9 1.0 r1 r2 r3 r4 r5 r6 r7 r8 r9…

第 9 轮 — 提议变更

spine.py 提案方:claude-opus-4
@@ -28,10 +28,14 @@ def validate_release_tag(tag: str) -> bool: """Validate semver release tag format.""" - pattern = r"^v\d+\.\d+\.\d+$" + pattern = r"^v\d+\.\d+\.\d+(-[a-zA-Z0-9]+)?$" + # Allow pre-release suffixes: v1.2.3-rc1, v1.2.3-beta return bool(re.match(pattern, tag)) def get_release_notes(version: str) -> str: - path = f"CHANGELOG.md" + path = Path("CHANGELOG.md") + if not path.exists(): + raise FileNotFoundError(f"CHANGELOG.md not found in {Path.cwd()}") return path.read_text(encoding="utf-8")
测试用例:test_prerelease_tag_accepted 此前一直失败,本次变更修复了该问题。

实时日志

串流中
[14:34:07] Autolearn round 9 started
[14:34:08] Loading workflow: release-checklist
[14:34:08] Loading fixtures: 14 test cases
[14:34:09] Proposer model: claude-opus-4
[14:34:12] Proposer generated diff (18 lines)
[14:34:12] Running static checks…
[14:34:13] Static check passed: parseable ✓
[14:34:13] Static check passed: no secrets ✓
[14:34:13] Static check passed: SPEC compliance ✓
[14:34:14] Running fixture suite (14 tests)…
[14:34:18] fixture 1/14: test_happy_path … PASS
[14:34:20] fixture 2/14: test_staging_smoke … PASS
[14:34:22] fixture 3/14: test_prerelease_tag_accepted … PASS ← was FAIL in r8
[14:34:24] fixture 4/14: test_missing_changelog … PASS ← was FAIL in r8
[14:34:26] fixture 5/14: test_rollback_procedure … running…