Vibes Are Not a Benchmark: A 30-Minute Harness to Test Whether a Free Coding Model Can Touch Your Repo A developer built a 30-minute harness that tests coding models against five tasks mined from their own git history, scoring results with their real test suite. The harness, which runs any coding model and outputs a CSV, was used to compare a paid tool against a free model served through MonkeyCode, which sponsored the experiment. The developer found that public benchmarks are saturated and don't reflect real work, so they created a reproducible method using git commits as labeled datasets. Last month I wrote about the six questions I ask every new model. Those questions are good for a first impression, but they have a blind spot: they tell me how a model talks about code, not whether it can survive contact with my code. So I built a small, ugly, reproducible harness that runs any coding model against five tasks drawn from my own git history, scores the results with my real test suite, and writes the outcome to a CSV. This post is that harness, the reasoning behind it, and where free-tier tooling fits without falling apart. Public benchmarks HumanEval-style have two problems for day-to-day tool selection. First, they're saturated and contaminated — models have seen them. Second, they don't look like your work. My work is: small refactors in a Python service, tests that fail for boring reasons, and occasional SQL migrations. So instead of asking "is this model smart," I ask "does this model reduce the time I spend on the five task shapes I actually do." The trick that makes this cheap: your git history is a labeled dataset. Every commit that fixed a bug is a task reproduce the fix with a built-in grader the tests that existed at the parent commit, plus the test added in the fix commit, if any . Step 1: mine five candidate tasks from git. Find bugfix-ish commits that also touched test files for sha in $ git log --oneline -300 --grep='fix' -i --format='%h' ; do if git show --name-only --format='' $sha | grep -q 'test'; then echo "$sha $ git log -1 --format='%s' $sha " fi done | head -20 I pick five where the diff is under 60 lines. Small diffs keep the test honest — you're measuring one decision, not endurance. Step 2: for each chosen commit, build a task directory. bash /usr/bin/env bash make task.sh