Most AI design tools green-check everything they draw. This one fails three of every four designs — on purpose. The failing number is the product.
Every AI design tool ships the same tiny lie: a green checkmark. You describe a table, it draws a table, and it stamps the picture approved — the same stamp, at the same brightness, whether the top will hold a Thanksgiving spread or split itself down the grain by February. The checkmark isn't a verdict. It's a decoration. It means the model finished drawing, not that the thing will stand.
We built the opposite instinct. Vibecrafting marks roughly three out of four designs it generates as invalid — it refuses to bless what it can't defend — and passes only the quarter that survive. That failure rate isn't a bug we're hiding behind a nicer number. It's the whole point. This is a field note about why a machine that says no most of the time is the honest one.
A green checkmark means it finished drawing. A red mark means it actually checked.
The move · notice what the checkmark isn't
Point a generic image model at "walnut coffee table, live-edge top" and you get a gorgeous render in seconds — and a quiet, automatic approved. Ask it whether the apron will hold, whether the top can move with the seasons, whether your tools can even cut the joint it drew, and there's nothing behind the stamp. It never asked. A picture-drawer approves a shelf that will sag with exactly the same confidence it approves one that holds, because it was never scoring the physics — only the pixels.
"A checkmark with no failing case behind it is just enthusiasm. Show me the check it could have failed and didn't. Otherwise you've drawn a picture of a passing grade."
The move · report the failure rate as a virtue
Here's the tally we're proudest of, and it's the ugliest-looking one. Across the designs the validator has scored, about a quarter clear the bar:
| Cohort | Verdict | Share |
|---|---|---|
| Designs generated & scored | 68 total | 100% |
| Passed — defensible, shippable | 17 valid | 25% |
| Failed — the validator said no | 51 invalid | 75% |
A tool optimizing for a happy demo would bury that 75% or quietly relax the checks until the number turned green. We print it on the wall. A validator that never fails a design isn't lenient — it's off. The failing three-quarters is the receipt that the checks are real and switched on.
"A pass rate near 100% doesn't tell me the designs are good. It tells me nobody's checking. Give me the tool that fails most of its own work — that one I can price."
The move · walk a real invalid, check by check
Take one from the invalid pile: a six-foot dining table with a solid-wood top glued hard into a rigid frame on all four sides. It renders beautifully. Then the kernel runs the program, and two validators fire:
The validator didn't average these into a cheerful 70% and wave it through. Two blocking failures means invalid, full stop. A wide solid top pinned rigidly on all four edges has nowhere to expand — the wood wins, every time, and the top cracks. And a joint you can't cut isn't a joint; it's a wish. Neither is a matter of taste. Both are checks the design could have passed and didn't.
"Beautiful render, unbuildable joint. I've thrown away a Saturday chasing a drawing that assumed a tool I didn't own. A no here is a Saturday I keep."
The move · reframe the failure as honesty
The instinct is to read invalid as the tool broke. It's the reverse. The validator made a promise — I will not bless a design I can't defend — and a red mark is that promise being kept in public. The failure isn't the machine falling down. It's the machine standing up and refusing to sign its name to something it knows won't hold.
The move · mine the rejects for demand
Here's the part that turns a rejection into a roadmap. Every invalid design leaves a trace of why it failed — which shape people kept asking for that no correct-by-construction template could yet answer. We count those unmet shapes. That count is the ratchet:
The failing pile isn't waste — it's the most honest market research a workshop ever had. It doesn't tell us what people said they wanted; it tells us what they actually reached for and couldn't get. The buildability benchmark reads that pile and demand-ranks the queue — splayed-leg frame first, A-frame trestle second — so the next correct-by-construction template we build is the one the most people were already failing to make. When it lands, distinct_oov_roles ticks down. That number falling is the roadmap making good.
"Fifty-nine unmet shapes, ranked by how often real people hit them. That's not a backlog of guesses — it's a queue sorted by demand. Build the top of it and the number drops. Clean feedback loop."
| What you see | What it actually means |
|---|---|
| A green checkmark | Elsewhere: "I finished drawing." Here: "I ran the checks and it survived them." |
| 75% marked invalid | Not leniency switched off — rigor switched on. A validator that never fails isn't checking. |
| One design, red | Not a broken tool — a promise kept. It won't sign what it can't defend. |
| The reject pile | Not waste — the truest demand signal, ranking which template earns the next slot. |
| A falling counter | distinct_oov_roles ticking down = the roadmap turning yesterday's failures into buildable answers. |
Only a machine willing to fail its own work can be trusted when it passes. The 25% that clears the bar is worth something because of the 75% that didn't. Strip out the failures and the pass means nothing — it's a checkmark again, back to decorating pixels. Keep the failures honest, and a green mark becomes a thing you can build on.
Describe what you want to make. Get a validated blueprint — cut list, shopping list, 3D preview — or an honest red mark that tells you exactly why not, and what we're building next because of it.
→ vibecrafting.ai