engram
Design Mockup 中文 ← All pages

Autolearn Console

Running round 9/10 Started 4 min ago · ETA ~6 min
evolution.tsv — last 20 rounds Live tail · auto-refreshes via SSE
round timestamp pass_rate Δ pass_rate static_score proposer judge outcome
r9 ← 14:34:07 running… opus-4 sonnet-4 running
r8 14:28:44 0.940 +0.030 58/60 opus-4 sonnet-4 accepted
r7 14:22:11 0.910 +0.030 57/60 sonnet-4 sonnet-4 accepted
r6 14:15:03 0.840 -0.040 53/60 opus-4 haiku-4 rejected
r5 14:08:32 0.880 +0.030 56/60 sonnet-4 opus-4 accepted ★ phase gate
r4 2026-04-17 0.850 +0.040 55/60 opus-4 sonnet-4 accepted
r3 2026-04-16 0.810 +0.040 54/60 sonnet-4 opus-4 accepted
r2 2026-04-15 parse error 41/60 opus-4 sonnet-4 rejected
r1 2026-04-14 0.740 baseline 49/60 sonnet-4 sonnet-4 accepted
pass_rate trend — all rounds
Ratchet: scores monotonically increase
0.7 0.8 0.9 1.0 r1 r2 r3 r4 r5 r6 r7 r8 r9…

Round 9 — proposed change

spine.py Proposer: 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")
Fixture: test_prerelease_tag_accepted was previously failing — this change fixes it.

Live log

streaming
[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…