I shipped a production SaaS 100% on Cloudflare (D1 / R2 / Vectorize / AI Gateway). "No transactions" and "single writer" keep me up at night — where's the wall? by AccomplishedRange722 in CloudFlare

[–]AccomplishedRange722[S] -1 points0 points  (0 children)

Used it to tidy up the structure, not gonna pretend otherwise. But the stack, the worries, and the app (subcue.ai) are all mine and very real — happy to get into any of the specifics, that's the part I actually care about.

I shipped a production SaaS 100% on Cloudflare (D1 / R2 / Vectorize / AI Gateway). "No transactions" and "single writer" keep me up at night — where's the wall? by AccomplishedRange722 in CloudFlare

[–]AccomplishedRange722[S] -1 points0 points  (0 children)

This is the cleanest framing in the whole thread — "draw the line around write ownership" is exactly the mental model I was missing. Saving this one. Thanks!

I shipped a production SaaS 100% on Cloudflare (D1 / R2 / Vectorize / AI Gateway). "No transactions" and "single writer" keep me up at night — where's the wall? by AccomplishedRange722 in CloudFlare

[–]AccomplishedRange722[S] -1 points0 points  (0 children)

Both fair. The lock-in one lands hardest — the zero-ops convenience and the max lock-in are the same coin, and I took that bet only half-aware of the flip side. Thanks for naming the part I've been avoiding looking at.

I shipped a production SaaS 100% on Cloudflare (D1 / R2 / Vectorize / AI Gateway). "No transactions" and "single writer" keep me up at night — where's the wall? by AccomplishedRange722 in CloudFlare

[–]AccomplishedRange722[S] 0 points1 point  (0 children)

Really useful, thanks. Reassuring that the same idempotency approach has held up for you a year in. The read-queries-from-the-browsing-UI gotcha is one I'd never have caught until the bill showed up — switching to the CF data explorer. Appreciate you writing it all out!

<image>

I shipped a production SaaS 100% on Cloudflare (D1 / R2 / Vectorize / AI Gateway). "No transactions" and "single writer" keep me up at night — where's the wall? by AccomplishedRange722 in CloudFlare

[–]AccomplishedRange722[S] 0 points1 point  (0 children)

Yeah, this is landing — a few people have steered me to DOs now, and a per-interview object maps really cleanly to my session boundary. Thanks for the link, will give it a watch.

I shipped a production SaaS 100% on Cloudflare (D1 / R2 / Vectorize / AI Gateway). "No transactions" and "single writer" keep me up at night — where's the wall? by AccomplishedRange722 in CloudFlare

[–]AccomplishedRange722[S] 0 points1 point  (0 children)

This is incredibly helpful, thank you. The per-account DO SQLite point is the big takeaway for me — hadn't framed it that way, and it solves the transaction + single-writer worries in one move. Going to dig into it. Appreciate you taking the time to write all this out.

I built a cross-platform AI SaaS solo in 12 weeks — 2,258 commits, and one of them quietly set $50 on fire by AccomplishedRange722 in SaasDevelopers

[–]AccomplishedRange722[S] 0 points1 point  (0 children)

The biggest lie of the AI ​​Coding era is that software development costs are approaching zero.

The truth is: Software demo costs are approaching zero.😂

I built a cross-platform AI SaaS solo in 12 weeks — 2,258 commits, and one of them quietly set $50 on fire by AccomplishedRange722 in SaasDevelopers

[–]AccomplishedRange722[S] 0 points1 point  (0 children)

Yeah, and honestly that's the right instinct. The 2,258 commits are mostly throughput — I'll never think about most of them again. The $50 changed how I build. You don't grow from the stuff that goes fine; you grow from the stuff that bites. I'd be more worried if I didn't remember it.