chore(evals): smoke baseline preview — 4 cells on pr1-fix-clv - #39
Conversation
Code Review: PR #39SHA This is a Math in
Cell matrix in Notes
Neither note blocks merge — this preview's job is to surface findings via the artifacts and the PR body, and it does that. The two observations above are quality nits for the next eval-driver render pass. Reviewed by /claude-code-review · Passes A, C, F · 2 files / +29 lines |
even-wei
left a comment
There was a problem hiding this comment.
GO (self-authored — cannot --approve). Two NOTEs in the issue comment, neither blocks: #39 (comment)
Code Review: PR #39 (supplement)SHA Builds on @even-wei's review above (2026-06-01) — I concur with both notes there (codex
GO — preview/smoke artifact, the raw verdicts are correct, and the one substantive gap (the rendered summary under-reporting the codex crash) is an upstream summary-generator issue already owned by the author's follow-up #2 against DRC-3586. Reviewed by /claude-code-review · supplement to prior review · 2 files / +29 lines |
wcchang1115
left a comment
There was a problem hiding this comment.
Claude Code Review: GO. Concur with @even-wei's prior review; data is sound. One supplement note added (judge self-consistency is 50% over the 2 real rc=0 transcripts vs 75% over all cells).
…-3405) Validation preview from the Karpathy spike driver landed in #37. Runs: 1 fixture (pr1-fix-clv) x 2 agents (claude, codex) x 2 tiers (0, 1) = 4 cells, with --judge-stability (two judge passes per transcript). NOT a DRC-3405 deliverable. 3405 wants: - 6 fixtures (not 1) - Manual baselines from DRC-3585 to anchor lens-3 delta - Hand-curated gap report This commit ships verdicts.csv + summary.md only. cells.json and transcripts/ stay local (cells.json has absolute paths; transcripts/ is gitignored). ## Headline results | Cell | Catch | Evidence | Delta | Status | |---|---|---|---|---| | claude · tier-0 | catch | 0 | same | ok | | claude · tier-1 | catch | 1c | improvement | ok | | codex · tier-0 | miss | 0 | same | rc=2 (driver bug) | | codex · tier-1 | miss | 0 | same | rc=2 (driver bug) | Claude moved from Tier-0 (evidence=0, no delta) to Tier-1 (evidence=1c, improvement). The lens-3 counterfactual is producing real signal on this fixture -- Recce-equipped agent reached for structured 1c-tier evidence (current-env queries) that Tier-0 couldn't. ## Judge self-consistency - catch: 100% (4/4 cells) -> above 80% bar - tier: 100% (4/4 cells) -> above 80% bar - delta: 75% (3/4 cells) -> just below 80% bar The delta flip on claude x tier-0 (same -> improvement across the two judge passes) is expected behaviour without a DRC-3585 manual baseline: the driver passes "baseline_catch=unknown" and the judge has to guess what delta means. Once 3585 lands, plug --baseline-dir in and re-judge. ## Findings to action separately 1. Tier-0 LEAK: recce.yml is present in pr1-fix-clv's .tmp/sources/ tree. The agent cited recce.yml preset names (row_count_diff, schema_diff) in its Tier-0 reasoning. build_fixtures.sh strip list includes recce.yml (line 292) but the .tmp/sources/ directory is stale -- it was built before the strip was added. Mitigation: re-run build_fixtures.sh. (Follow-up against DRC-3430.) 2. Codex driver: codex-cli 0.133.0 removed both --ask-for-approval=never and --config <file>. Driver invocation in run_codex() fails with rc=2 before the agent ever runs. Both codex cells show miss/0/same because the judge had nothing useful to score. Driver needs an update: CODEX_HOME-based config loading + `-c approval_policy="never"` override + a sanity check that the codex schema in our config.toml matches the installed codex version. (New ticket needed.) 3. Stale fixture worktrees: more broadly, if anyone re-runs the eval they should `rm -rf .tmp/` first to guarantee a fresh strip. Will document in the spike-driver README in a follow-up. Signed-off-by: even-wei <evenwei@infuseai.io>
60e2bac to
ff6fae0
Compare
What's in here
No transcripts (gitignored), no
cells.json(it has absolute paths from this run — regenerable).Headline results
Claude × Tier-0 → Tier-1: evidence shifted from
0to1c, delta toimprovement. That's exactly the lens-3 counterfactual signal the project is trying to measure — the Recce-equipped agent reached for structured1c-tier evidence (current-env queries) that Tier-0 couldn't produce. Real signal on this fixture.Judge self-consistency (DRC-3586 acceptance #2 — proxy)
The single delta flip (
claude × tier-0: same → improvement across two judge passes) is expected without a DRC-3585 manual baseline. The driver currently passesbaseline_catch="unknown"to the judge; without an anchor, the judge has to guess what delta means. Plug--baseline-dirin once 3585 produces baselines and re-judge — delta should stabilize.--baseline-dirwas added in the same PR exactly for this case.Four findings to action separately
1. 🚨 Tier-0 LEAK —
recce.ymlnot stripped frompr1-fix-clvsource treeThe agent at Tier-0 cited
recce.yml's preset names verbatim:This is a Tier-0 sandbox leak that contaminates the lens-3 counterfactual. Investigation:
build_fixtures.shline 292 includesrecce.ymlinstripped_paths[]. The strip logic is correct..tmp/sources/pr1-fix-clv/recce.ymlIS present at filesystem level..tmp/sources/was built beforerecce.ymlwas added to the strip list, and not rebuilt since.Mitigation: re-run
( cd evals/agent-blind-spots && rm -rf .tmp/ && ./build_fixtures.sh )before any DRC-3585 or DRC-3405 run. This is a hard requirement — without it, the eval results are contaminated.Action: surface as follow-up against DRC-3430.
2. 🐛 Codex driver — incompatible with codex-cli 0.133.0
codex-cli 0.133.0 removed both
--ask-for-approval=neverand--config <FILE>. Both codex cells failed with rc=2 before the agent ever ran; the judge then graded the empty stderr-only transcripts asmiss.Fix shape (deferred to its own ticket — not appropriate to include in a "preview" PR):
CODEX_HOME=<dir-containing-config.toml>instead of--config <file>-c approval_policy="never"for unattended approvalrunner-configs/codex/tier-{0,1}/config.tomlschema against codex 0.133.0 (the[sandbox]table syntax may also be deprecated)Action: filing as new follow-up ticket linked from DRC-3586.
3. Judge stability needs DRC-3585's baseline
As above. 75% on the delta axis is in spec for "no baseline yet". Plug
--baseline-dirin when 3585 lands.4. Stale fixture worktrees are a foot-gun
If anyone re-runs the eval and
.tmp/sources/exists from a prior build, the strip list may be out of date. Adding a hard prerequisite in the spike-driver README: "Alwaysrm -rf .tmp/before a fresh eval run". Small follow-up commit.Linear
🤖 Generated with Claude Code