
Two games ago I took the enterprise AI SDLC I build at work, shrank it down to fit one developer, and shipped Colors Grid with it. Last time I threw all of that out and prompted my way through Jazz Paws with no process at all, and paid for it in rebuilt features and wasted tokens.
This time I tried something different again, on purpose.
What happens if the whole game lives in one single chat session? Not one session per feature. Not a fresh agent for every pipeline step. One conversation, from the first line of the foundation to the latest build on both stores.
The game is Boba Heart, a cozy idle boba shop sim. You run a little tea shop staffed by critters, style every tile of it, grow a menu of sixty recipes, pay the weekly bills, and have friends walk into your shop live while you are both playing.

I did not start the session with a blank prompt. The first thing in it was the foundation, and I seeded that with Claude Fable running in ultracode, where one request fans out across a fleet of agents working in parallel. That first night produced the pieces everything else would lean on: a pure Dart simulation core that knows nothing about the screen, a Flame renderer with lighting and weather on top of it, the save and offline flow, and data files that hold every price, wage and recipe.
Then I kept going in the same conversation. Every feature after that, every bug fix, every store build, every balance pass. The first submission to the App Store and Google Play went out on day six.

If I could underline one thing twice, it is this: the most important part of the whole project was having a good foundation for the AI to reference.
When I asked for friends walking into each other's shops live, it did not have to invent where a customer comes from or how a visitor orders a drink. There was already a simulation with customers, queues, orders and seats, and a clear pattern for how new things plug into it. The new feature looked like the old ones because it had something to look like. When I asked for the whole economy to be tunable from Firebase without an app update, it took an afternoon, because every number already lived in data files instead of being scattered through the code.
A weak foundation does the opposite. Every new feature invents its own way of doing things, and a few weeks later you have five of them. The AI will happily build on whatever you give it, including the mess.

Here is the honest part. One session means one context window, and a game that grows for two weeks does not fit in one. So the conversation gets summarized as it goes. The details of what happened three days ago get compressed into a paragraph, and the paragraph is not the code.
That is where hallucination creeps in, sometimes even with a perfectly clear prompt. Every so often it would be sure about something that had changed since, or reach for a shape the code no longer had. Once a scripted edit quietly swallowed two neighbouring functions and they had to be restored from git. Another time it told me about a change to ads that I had never asked for. It turned out to be a temporary switch for measuring battery use, but that is exactly the kind of thing that makes you sit up and read the diff.

What surprised me is how rarely it happened. AI is much better at this than it was even a few months ago. The slips that did get through were caught by the tests, by the analyzer, or by me watching the result on a real phone, and there were far fewer of them than I expected going in.
The payoff is the small, quick changes. In a pipeline, a one line fix still pays the setup cost: a fresh agent reads the codebase, finds the right file, learns the conventions, and only then makes the change. In one long session, the context is already warm.
So a message like "the trash can should be at least half full before you can tap it to send a cleaner" is just done. So is "show how many are in line and how many are waiting for pickup in the same pill, split by a bar", or "put a seats chip right under it", or "let me drag the shop further in edit mode so the menu stops covering the bottom row". Each of those took me a sentence, and each came back tested, usually with a screen recording from the simulator or my phone to show it working.

Shipping worked the same way. Bump the version, build for both platforms, upload, write release notes under Google Play's 500 character limit, cancel an iOS review that was still queued and put the new build in its place. All from the same chat, without re-explaining anything.
This is the one I did not expect to be comfortable with.
By the second week I had built up enough trust in the session to let Claude take over my browser through the Claude in Chrome extension and set up Firebase for me: push notifications, the Realtime Database that powers live visits, and single sign-on with Apple and Google. I sat there and watched it click through the console.
None of that is hard. I have set up every one of those by hand more times than I can count. It is just tedious, full of screens where you copy an id from one tab into a field in another, and easy to get subtly wrong. Watching it do the clicking while I checked each step was a much better use of my attention.

I want to be careful here, because I build AI SDLC pipelines for a living and I still believe in them.
One chat session worked for Boba Heart because of the shape of the work: one owner, one codebase, a solid foundation, and a steady stream of small, fast changes where I was the one judging what was right. The pipeline is still the better tool when the scope is bigger, when several people touch the same code, when you need a written record of why something was built the way it was, or when a feature is big enough to deserve a spec before anyone writes a line.
There is value in both. The question is not which one is right. It is which one fits the scope of work in front of you.

The biggest shift I felt over these two weeks is what my job actually was. I wrote very little code by hand. What I did instead was direct: decide how the pieces fit together, keep the flow of the code cohesive, notice when something was heading the wrong way, and say so early.
That is an architect's job more than a typist's. And it only works when the foundation is right, because the foundation is the reference the AI keeps coming back to. Get that wrong and you are directing a very fast crew to build on sand.
AI has improved tremendously. Without it, a full fledged game like this, with a simulation, live friends, cloud saves, sign-in, push notifications, hosted holidays and a balance I can retune from Firebase, would have taken me months. It took a mere two weeks.

I also play it, every day. I built Boba Heart for myself first: a cozy shop I can have running on my phone during long meetings.
It is idle on purpose, so it never needs my attention. But having it there actually helps me focus, because I have to multitask to focus. If my hands and eyes have nothing to do, my mind wanders off completely. A little shop quietly filling orders in the corner is just enough to keep me in the meeting. Perhaps I have some sort of ADHD? Either way, eating my own dog food made the game better, because every small annoyance I hit during a meeting became a one sentence message in the same chat that evening.

Boba Heart is free on the App Store and Google Play. You can find both links at techtiger.tech/boba-heart-home.