What makes it a bad idea
canivibecodeit catalogues moats — the structural reasons an incumbent survives. This is the mirror image: the structural reasons your version of it should not ship. Every entry carries one to three of these.
A leak here is a disclosure notice, not a bug report.
You are not building a thing, you are adopting one.
Spammers, scrapers and scammers will find it before your users do.
One bad migration and the only copy is gone.
You are storing things that unlock other things.
A person who did not choose your code depends on it staying up.
There is a contract, a licence, or a lawsuit downstream of the bug.
You cannot ship a fix for the thing that already went out.
A regulator has written down opinions about this exact thing.
It moves other people’s money. Off-by-one is now a refund request.
Fine at ten users. On fire at ten thousand.
Touching raw card numbers drags PCI DSS into your side project.
The single most confidently-generated, most subtly-broken code there is.
The failure mode involves a physical human being.
Medical information carries its own body of law and no sense of humour.
Never leaves your machine, so it never leaks.
The entire blast radius is you.
It can be wrong, but it cannot destroy anything.
Built to be deleted. No migration path required.
No payments, no billing, no chargebacks.
Undo is a `git revert` and an apology at most.
Six dimensions, each scored 0–10 by a human, combined with the weights below into a number out of 100. The verdict on a page is editorial and can override the maths — but never by more than one band, and the validator fails the build if it does.
0–24 SHIP IT · 25–49 DEMO ONLY · 50–74 YOUR FUNERAL · 75–100 ABSOLUTELY NOT