“It works tho”
In March of last year, a founder who goes by @leojr94_ announced his new SaaS to the internet with the unguarded pride of a man who has just gotten away with something. He had built it with Cursor, he said — “zero hand written code.” When the replies raised an eyebrow, he shrugged in public: “it works tho.”1
Days later he was back. “guys, i’m under attack,” he wrote. “random thing are happening, maxed out usage on api keys, people bypassing the subscription, creating random shit on db — as you know, I’m not technical so this is taking me longer that usual.”1
He patched what he could. The attacks kept coming. Within weeks he had shut the product down — not, in the end, because of the attackers, but because of the repairs: “Cursor,” he explained, “just keeps breaking other parts of the code.”1
If his story were rare it would be trivia. It is not rare. It is the visible tip of a pattern now playing out publicly, at volume, with a structure so consistent you could set a watch by it: the app works at launch; attention moves on; and then the app meets the world. In January, a social product called Moltbook — its founder proud of not having written “a single line of code” — was found to be exposing roughly 1.5 million API tokens and 35,000 email addresses through a misconfiguration nobody had ever read.8 On r/vibecoding, a builder titled his post-mortem plainly, I got hacked and this is what I’ve learnt: “It was painful, had to stop operations entirely and eventually shut the whole thing down.”12
The press, with its gift for arriving after the funeral, has already named the phenomenon: the vibe-coding reckoning. What the name misses is who it is happening to. Not to the dabblers — their prototypes were disposable and they disposed of them. The graveyard belongs to the people who succeeded: whose thing worked, found users, took money. If that is you, this report is for you. It ends better than it begins.
The loop
Ask the stranded what actually stopped them and they rarely lead with hackers. They describe something slower and stranger — a loop.
“Fix one thing and break three other things.” The phrase appears nearly word for word, from people who have never met, in r/SaaS,2 in r/ClaudeAI,3 in r/nocode,4 in r/cursor. It is the closest thing this cohort has to a shared diagnosis, and r/vibecoding has given the place it takes you a name: vibe coding hell — asking the AI to fix a payments bug and watching it break two features nobody had touched, while it proposes a full rewrite of code it wrote three days ago.15
“If something works, NEVER TOUCH IT. Fixing one thing breaks three others.”a builder in r/nocode
On the app-builder platforms, the loop has an exchange rate. “Lovable 2.0 Update Broke My App — Burned 50% of Credits Just Fixing It,” reads one thread title:5 half a month’s budget spent standing still. Others describe “endless error loops” — paying, prompt after prompt, for the privilege of arguing with a bot about a bug it caused.
And beneath the loop sits the real cost, the one nobody invoices: you stop shipping. Not for lack of ideas — every idea now carries a tax, because whatever you touch might take the working parts down with it. The thing you were proudest of becomes the thing you are most afraid of. One writer described where that road ends: “when it breaks in production at 2am you’re reading code you didn’t write, trying to debug logic you never learned.”7
The diagnosis
The clearest account of why belongs to Steve Krouse, whose essay “Vibe code is legacy code” became one of the most-discussed pieces Hacker News has seen on the subject.6 Most software earns the word legacy over decades, as its authors move on and take their understanding with them. Vibe code skips the wait — it is born legacy, because the understanding never existed in the first place. “When you vibe code,” Krouse writes, “you are incurring tech debt as fast as the LLM can spit it out.” A codebase nobody understands is debt; a codebase whose owner has never read it is pure debt, principal and interest compounding from the first commit.
Then comes the sentence half the internet has quoted since — the one that explains, in a single image, why every escape attempt so far has failed:
If you don’t understand the code, your only recourse is to ask AI to fix it for you, which is like paying off credit card debt with another credit card.Steve Krouse — “Vibe code is legacy code”
The line lands because it describes lived experience. Every “please fix this” typed into the machine that made the mess is another cash advance: the balance grows quietly, the minimum payment rises, and day two arrives holding the statement.
Hold that metaphor. It is exactly right — and, as we will see, it contains its own way out.
The trade that grew in the graveyard
Where there is wreckage, there is salvage. Over the past two years an entire trade has organized itself around broken vibe-coded software. The reporters at 404 Media found it a name — the vibe-coding cleanup specialist — and the trade found itself Fiverr categories, Upwork listings, and dedicated rescue shops with names like fixmyvibecode.com.9 Specialists charge upwards of $200 an hour to untangle AI-generated messes. A typical stabilization engagement runs $2,500 to $6,000 and one to four weeks.10
One cleanup specialist described his clientele to 404 Media without cruelty: “Most of these vibe coders, either they are product managers or they are sales guys, or they are small business owners, and they think that they can build something.”9 He is half right. They did build something — the invoices prove it. Nobody pays $6,000 to stabilize a thing that is worth nothing. On Hacker News, working engineers confirm the trade first-hand: “I have been taking on ‘rescue’ projects for a while,” writes one; the new source of supply “is now going to be LLMs.”11
Note carefully what the rescue market proves, and what it doesn’t fix. It proves the pain is real enough that people pay thousands, per incident, to make it stop. But a rescue is an event. The engineers stabilize, invoice, and leave — and the day they leave, the clock restarts. The codebase resumes drifting away from anyone’s understanding; the next launch-day change starts the loop again; the app, as one post-mortem put it, “quietly disintegrates under real-world pressure.”14 You haven’t bought maintenance. You’ve bought a moment — after which you are exactly where you started: alone with a codebase you can’t read. A cleaner one.
Your app doesn’t have to be a casualty.
Here the reporting ends and an argument begins, and it is only fair to tell you that the house has a position: we built the thing this argument describes. It is called Athema. Judge it the way you would judge any claim made to a person in your situation — on mechanism, not vibes.
Go back to Krouse’s credit card, because the metaphor knows more than either side of the argument has noticed. Nobody in the history of debt was ever saved by borrowing better. But nobody was saved by cutting up the cards and staring at the balance, either. The way out of compounding debt has always been boring and mechanical: stop borrowing against what you don’t understand, get the books in order, and put the payments on rails — in that order.
Look again at the loop with that lens and you can see what is actually broken. “Fix one thing, break three” is not evidence that AI can’t maintain software. It is evidence that nothing is holding the ground still. No tests pin down what the app is supposed to do; no gate notices the two other things breaking; no review stands between a plausible-looking change and production. A human engineer without tests, gates, or review breaks things too — they just apologize more convincingly. Discipline, not intelligence, is the missing ingredient. And discipline is precisely the thing a machine can hold more steadily than a person.
Athema is that discipline — installed first, then operated. It calls itself self-driving for software, and it makes three moves, in order. The order is the entire argument.
Harden
Before touching a line of behavior, Athema pins the ground down: it rebuilds the codebase into boring, tested, production-grade software — a test suite that captures what your app actually does today, continuous integration, review. The floor goes in first. You don’t have to read any of it.
Equip
It installs an operating system for change inside the repo itself — plans, gates, contracts, the machinery of a disciplined engineering team. The reliable parts are deterministic code; the adaptive parts are small and typed, so a bad guess fails loudly instead of corrupting quietly.
Operate & adapt
Then it runs your app’s upkeep from a hosted cloud — fixes, features, quiet maintenance — with every change arriving as a pull request you approve, narrated live as it happens. A per-repo Adapt agent learns from every correction you make, so it needs you a little less each week. And how much less is not a feeling. It’s measured.
Why this isn’t another credit card
The objection writes itself, and this audience has earned it: you are describing more AI, pointed at the code the last AI broke. If Athema were a smarter chat window, the objection would be fatal. So hold the four load-bearing differences up against the metaphor, one at a time.
§ 1Tests before touch.
The loop begins because nothing pins down what the app is supposed to do — so every fix is free to be a regression. Athema’s first act is therefore not a fix. It is to write down, in executable form, what your app does today: the test suite the vibe-coding tools never built, wired into CI. That is the credit check the first credit card never ran. Nothing changes until the ground is pinned.
§ 2A gate that knows what it’s judging.
Real vibe-coded repos arrive messy — some tests were failing before Athema ever showed up. A gate that demanded all-green would be a lie no honest system could pass. So the gate is regression-aware: it compares every change against the pre-change baseline and blocks only what the change itself broke. The pre-existing failures are surfaced honestly — filed as debt to pay down, never hidden, never held against the change. “Fix one thing, break three” is not a mood; it is the absence of exactly this gate.
A discount-code field for your checkout
§ 3Nothing ships itself.
Every change Athema makes lands as a pull request with your name on the merge button. While it works, a live board narrates the run in plain words — what it read, what it wrote, what it tested, what it cost — and when it finishes, you judge the change, not the code: a working preview, the proof, the blast radius. The machine reports; it does not boast, and it does not merge. Krouse’s borrower spirals because no one is watching the account. Here, the statement arrives before the charge.
A discount-code field for your checkout.
You asked: “Customers can’t find where to type their discount code.”
- 3:39Read your request and the checkout code around it — chose the smallest change that works.
- 3:40Wrote the field and its label. Two files touched; nothing else disturbed.
- 3:41Ran 214 checks across 6 browsers and 3 phone sizes. All passing.
- 3:43Filmed the new field working in a real browser — end to end, with a live discount code.
- 3:44Everything is ready. Waiting for your seal — it will wait as long as it takes.
§ 4Autonomy is measured, not promised.
The apps in the first half of this report were running at full autonomy from day one — no tests, no gate, no reviewer. That is what “fully autonomous” means when nobody measures it. Athema inverts the deal: every repo starts at the bottom of a ladder, L0 to L5, and climbs only as the evidence accumulates — as the measured share of work that needs a human falls. A rung is earned per-repo, from your own approval record, and offered to you; you can always say not yet. The dashboard shows the number. “Self-maintaining” is the top of a gauge, not a slogan on a page like this one.
And there is one more difference, the one that decides the long run. The loop compounds against you: every unread fix adds debt to a pile nobody understands. Athema is built to compound the other way. Every correction you make — every PR you amend, every “not quite” — is a signal the per-repo Adapt agent uses to rewrite its own playbook for your codebase, so the same mistake doesn’t need you twice. Across the fleet, what’s shared are strategies — never your code, never your data. Debt compounds. So does discipline. The whole question is which one you’re holding.
The economics, plainly
You do not have to speculate about what this problem costs; the market has already priced it. A rescue engagement: $2,500 to $6,000, one to four weeks, per incident-cluster.10 A specialist’s meter: $200 an hour.9 And when it’s over, they leave — the one guarantee in the contract.
| Option | What it costs | What you have afterwards |
|---|---|---|
| Do nothing | “free” | The loop, the fear, the 2 a.m. debugging session — and interest accruing on debt you can’t see. |
| A rescue | $2,500–$6,000 per incident · 1–4 weeks10 | A cleaner codebase you still can’t read, rotting again from the day the engineers leave. |
| Athema | a monthly budget of work, from $50/mo | A hardened repo, a live gate on every change, PRs you approve, and an autonomy number that climbs. The engineer who never leaves. |
Pay for the work, not the seats — a plan is a monthly budget of work, spent on fixes, features, or the quiet upkeep you never see.
- The night watch, every night
- Every change sealed by you
- Morning notes & metered costs
- Everything in Solo
- The full autonomy dial, L0–L5
- Signals from customers & reviews
- Higher autonomy ceilings
- Concierge onboarding
- A human on call
Day two, revised
Somewhere right now it is two in the morning, and a founder who did everything this decade invited them to do — imagine it, describe it, ship it — is reading code they didn’t write, debugging logic they never learned, afraid to touch the thing that pays them. The era handed them a miracle and withheld the manual. That is the reckoning, and it was never really about AI writing bad code. It was about nobody staying behind to keep the promise.
Here is the same morning, revised. You wake and open a page instead of a terminal. It says the night was quiet, and shows its work: what was watched, what was fixed, what it cost — and one change waiting for your seal.
All quiet. The store is better than you left it.
Athema shipped 3 improvements this week and is midway through one more. Nothing needs you — except one sign-off below.
That is the whole pitch, and you have now seen the mechanism it rests on: the floor first, a gate that judges honestly, a seal that is yours, a number that has to be earned. The graveyard is real — the citations below are its record. Membership, it turns out, is optional.