The “local is only 12% behind SOTA” claim falls apart the moment you ask what the benchmark measures. Alex Ellis’s writeup makes the point with receipts: Qwen 3.6 27B scores 77.2 on SWE-Bench Verified against Opus 4.8’s 88.6, and that gap looks survivable until you notice SWE-Bench is Python issues — single-threaded, synchronous, the easy case. If you write distributed Go where channels, contexts, and structs span a large execution domain, the benchmark isn’t testing your work. The number is real; the extrapolation isn’t.
That’s the framing I keep coming back to in production: stop ranking models on a single axis and start routing them by task. A small local model that’s reliable on bounded, well-specified edits is a different instrument than a frontier model you trust with unattended, multi-file architecture. Treating the local one as “the budget version of the good one” is how you end up disappointed in both.
The honest failure modes matter here too. Ellis is candid that quantizing down to fit a consumer GPU is where the infinite loops and hallucination risk show up — exactly the behavior that makes a model unsafe to run unsupervised in an agentic loop. That’s not a cost question, it’s a reliability budget. A model that occasionally spirals needs a supervisor, retries, and a kill switch, and those guardrails cost more engineering than the GPU saved.
The cost argument is the weakest part of the local pitch anyway, because the $200/mo coding plans are visibly subsidized — see what happened when Copilot moved everyone to token pricing. The real reasons to run local are control and autonomy, not the bill.
So here’s the question I’d put to the “cancel your subscription” crowd on the HN thread: which of your tasks actually need frontier reasoning, and which are you overpaying for out of habit?