docx-edit-bench v1 result: address grammar is 19% cheaper, not more correct

↗ view on GitHub · Eli Ziff · 2026-07-31 · e4fe1f94

108 runs, 27 tasks x 2 surfaces x 2 replicates, codex:gpt-5.6-sol, neutral
prompt identical across arms.

Correctness: 81% vs 79% excluding floor tasks - one run in forty-eight, and
the within-arm replicate floor is 1/27 cells. UNDECIDED, not a win. The arms
fail exactly the same four tasks.

Cost: 56,149 vs 69,281 total tokens per run (-19.0%), while the address arm
makes MORE tool calls and takes MORE wall clock. Two sources: first-request
schema 13,282 vs 25,809 bytes, and 126 vs 276 document characters retyped
into arguments.

Four of the address arm's five new affordances went unused: library_find.at
was empty on every call, follow/depth never left their defaults across 54
runs, library_links was called 3 times, and read from=end never once. The
one that was used, scope.at, carries the whole benefit.

55 misquoted locating strings, from three causes the tools report with one
message: wrong line separator, post-edit text passed into a find scope, and
context strings spanning table cells. Six schema recommendations follow, each
traceable to runs.

Also recorded: memo-against-agreement is defective - the model found a third
misstatement the task did not anticipate and was scored for damage; headline
reported with and without it. Two instrument defects: opened_never_called was
per-tool not per-domain (fixed, 12 of 22 disclosures bought nothing), and
ask_inputs is served but unimplemented in this runner.

Adds the beaver-address-no-disclosure ablation surface.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01H9ToHYJVDxfeJcJwdzrP2H
Repository eliziff/Beaver
Author Eli Ziff <eliasziff@gmail.com>
Authored
Parents f906d7d1
Stats 6 files changed , +264 , -4
Part of SourceDoc / DOCX engine: redlines, tracked changes, editing benchmark

Capture this commit into my fork

Download a Markdown prompt that tells Claude how to port this exact commit into your working tree. Run it via claude -p < capture-commit-e4fe1f94.md from inside the repo you want the change in.

⬇ Download capture-commit-e4fe1f94.md