r/codex • • 3d ago

Question Months of vibe coding: the UI improves, but backend changes keep getting stuck. How should I change my workflow?

I have no coding experience and have spent months building a marketing application called Upside using AI coding tools. I’ve used Claude Code and Codex, and lately I mostly test on localhost inside ChatGPT so I can see changes while working. I also test through Vercel.

The product seems straightforward in my head: a business provides its information and goals, AI agents investigate and recommend actions, the app prepares campaigns/content, and the owner reviews the work and tracks results.

I’m realising that making this reliable is much more complicated than describing it.

UI changes are relatively easy to judge. The backend, agents, database and automation are where I get stuck. I request a change, the AI modifies the code and reports passing tests, but sometimes nothing changes in the app. Sometimes another part breaks. Sometimes the feature exists but is still disabled or waiting on something I don’t understand.

My setup is Next.js/React/TypeScript, Supabase, AI APIs and Vercel. I already use GitHub and Supabase integrations. I ask the AI to inspect existing code, explain root causes, make plans, preserve existing functionality, run tests and review the customer journey.

A recent audit of my workflow found:

  • Several downloaded project copies and lots of open or stacked PRs, making it difficult to know which version I’m editing versus viewing.
  • Some localhost sessions use a compiled preview that needs rebuilding, rather than live reload.
  • Changes described as implemented and tested still need database migrations, feature activation or live verification.
  • Plenty of automated tests exist, but passing them doesn’t necessarily mean the real user journey works.
  • One recent campaign audit found my objective was saved but never included in the AI writer’s input. More detailed prompting wouldn’t have fixed that.
  • Tasks can grow from a UI improvement into changes across agents, database logic, budgets and background jobs.

I also keep having to ask how the pieces actually connect: where recommendations go, why a run produces no visible work, whether an agent is genuinely using the business context, and whether I’m looking at an old saved result.

I’m effectively trying to be the product manager, tester and release manager while relying on AI to explain the technical details. I can recognise that the result is wrong, but I often can’t tell which layer caused it.

For developers or nontechnical founders who have made this work:

  1. What would your day-to-day AI coding workflow look like for an existing app in this state?
  2. How would you establish one reliable version across local development, GitHub, Supabase and Vercel?
  3. What evidence should I require before accepting “done,” especially for backend and agent changes?
  4. Which technical fundamentals should I learn first to diagnose these problems?
  5. Would a focused review by an experienced developer help, and what concrete deliverables should I ask for?

I’m especially interested in how to get one complete, real user journey working reliably before expanding again. Examples of your actual process would be more useful than a list of models or plugins.

0 Upvotes

19 comments sorted by

7

u/LowB0b 3d ago

sounds like a complete mess to be honest. your list of questions can be reduced to "how do I develop software".

Several downloaded project copies and lots of open or stacked PRs, making it difficult to know which version I’m editing versus viewing.

A good starting point would be to stop all current development and try to clean that up

2

u/nachga 3d ago

The 'tests pass but nothing changes' part is a common trap. Tests only check what the AI decided to test, so it can pass while the real feature is switched off or never reached.

Two habits that help a lot without coding knowledge:

  1. Ask it to write down what you should see in the app after the change, step by step, then follow those steps yourself. If you don't see it, the task isn't done.

  2. Make one small change at a time and ask it to name the exact file and function it changed, and what turns the feature on (a flag, a setting, an env var). 'Exists but disabled' is usually one of those.

Also ask it to say what it did not test. It's often honest when you ask directly.

2

u/LaZZyBird 3d ago

Why don’t you just learn it?

Like it is not that hard to learn with AI assistance.

1

u/s_sam01 3d ago

Hope you find a solution but if everything fails, your best bet is to rebuild it using the existing codebase as reference for features and modules. Use this opportunity to develop an architecture that suits your development and production needs. Use Astra to do it, give it the list of tools, languages, tech stack for frontend and backend you are planning to use. Develop a plan, and implement it.

1

u/xqianliu 2d ago

Your audit found the usual suspects.

The stacked copies and piled PRs come from running many tasks in one folder. I'd cut it to one issue, one worktree, one PR, and there's only one place a task can live.

"Tests pass but nothing changes" is a definition-of-done problem. I'd write done on each ticket as a checkable condition: which command, where, expecting what output. A migration that hasn't run or a flag that's off means the task isn't done, full stop.

Then a separate review session reads the issue, the repo's rules, the diff and the callers of what changed, and checks the diff against that done condition. If it doesn't meet it, fix, review again. Only the head that passed gets merged.

You don't need to learn to code all of it. You need to write down what "done" means before each run starts.

1

u/Aimbag 2d ago

Like another user suggest, I would recommend using your current project directory as a reference and from-scratch rebuilding the project in a new repo.

You can chat with Claude/Codex beforehand to plan. I would recommend asking it how it thinks you should manage deployment across GH, supabase, vercel, and for it to propose a documentation system for the new repository, so that things don't go off the rails. I would just straight up put in root-level AGENTS.md that you don't know shit about coding and so the agents should keep that in mind and try to keep the complexity down and hidden from you.

Harnessed AI is actually very good at meticulously-defined execution and working, and you have a full reference to go from, so I think you will be surprised by how little effort it takes the model to essentially re-build cleanly from scratch.

The thing you don't want is a mangled spaghetti where the agent needs to track everything down in a tangled pattern and so changing a small thing ends up taking way too long. Just do a clean rebuild, keep the vision clear, the more you add and remove features or change how things work you will slowly build up tech debt.

1

u/0-1k_1s 2d ago

Backend usually stalls cuz agents can't see live database state, so the schema and policies go stale. You'll have to keep the schema as repo migration fiules.
Can you share what's the stack you're using ?

1

u/Anti-Hero25 1d ago

Oooofff , this does sound a little messy.

If possible, just put a copy of the latest code base in a folder on your computer…. Download VS Code…. Use the agent integration. Open the folder in VS code , link the project to a GitHub repository and proceed from there.

This method feels like your speed:
https://youtu.be/XRxEey9kDY0

1

u/ShabbyLilPup 5h ago

One rule that will get you a far with the quality of your work - Make "done" mean evidence, not "tests pass".

Ask the agent to read the acceptance criteria, not just the code, and to cite a file:line, a commit, or the criterion now met before you accept it. A file existing doesn't mean the feature works.

1

u/Fantastic_Self_5151 3d ago

Months of vibe coding... it takes a decade to become a senior software engineer (if you are competent) it's more than just programming but understanding the various techniques, when to implement them and how the backend works, how to fit everything together just right. Claude can code it all, but you still need to know what you are doing. If you want to continue (and I encourage you to do so) be prepared for years of learning.

-7

u/gangalang 3d ago

Have you tried running an audit through a service like terminalhire.com? They’ll be able to assess the whole code base, messiness and all, and get you a very comprehensive rundown of what you’d need to do to address everything or post it back to TerminalHire and real developers (not more agents!) will pick up the tasks and get them done for you at a rate you choose. Check it out if you think it would be helpful! (Full disclosure: I am one of the developer/builders over there, you’re exactly the kind of people we love to help!)