General
Renovating a vibe-coded app: readable code, no reasoning behind it
Yves Habchy DEV Community 周榜
2 views
A client had been building an education platform in Lovable for months. Too many issues piled up, so they brought in devs. I got assigned to it. The job was to turn a vibecoded app into something production ready.
First time I'd worked on a fully vibecoded app.
First thing I did after getting access and exporting the code was try to run it locally. React/Vite frontend, Supabase backend. Quick read through: 132 migration files. Figured I'd spin up a fresh Supabase project, run them, and have the app up. Took two days instead. Fine, that's just work.
Ran an audit over the whole thing through an agent, came back with 319 findings, 29 critical. Security was about what you'd expect. A student could create a school and set themselves up as administrator. All fixable though.
What I wasn't ready for was the stuff where I could read the code fine and still not tell what it was supposed to be doing.
The core of the product is a daily score for each student, shown to their parent as a letter grade. That's the thing the schools are paying for.
Found 4 completely separate engines computing that daily score. Two of them weight the same sub-score differently, sixty-forty against forty-thirty-thirty, so the same kid gets a different number depending on which one ran last. All four write to the same field.
That's what makes it bad. Imagine four engines all doing their job, nothing throwing, nothing erroring, because why would it. But in business terms it's off the rails. Same input, different grade, and if you're not technical you've got no way of telling anything is wrong.
Nothing anywhere says which one is the real one. Not in the code, not in a comment, not in anything the client said. So I can't just pick, because picking changes what grade a kid gets. Sent it back to them as a product question.
Normally you'd get this off a commit message, a PR thread, or just asking whoever wrote it. None of that exists here.
Read original: https://dev.to/yveshabchy/renovating-a-vibe-coded-app-readable-code-no-reasoning-behind-it-2eg1
← Previous
Most of the Questions Will Not Be About Code
Next →
Building MyZubster: Turning a Marketplace Demo Into a Real Product Experience
Related
My verifier accepted "13 of 13" by finding the number 13 once
General
0
Dev.to (EN Zone)
Show Me the Best Article You've Read And I'll Add It To My List
General
4
DEV Community
My registry accepted a duplicate ID, and the wrong thing failed three steps later
General
3
DEV Community
OpenResearch ให้ agent วิจัยหลายทิศทางพร้อมกัน โดยไม่ต้องส่งโค้ดออกไป
General
7
DEV Community 周榜
Comments0
No comments yet — be the first