Short write‑ups of problems we hit running a real commerce operation and what we changed in the code because of them. No product announcements; just the reasoning.
Eight years of sent email — 245 million rows, 217 GB, never pruned — was slowing down a daily rollup and bloating every developer's copy of the database. How we moved it to an archive server in verified batches, why the retention window is 90 days and not 60, and the one trick that keeps historical stats correct after the rows are gone.
After a flush, the first visitor to each storefront page pays for the render. We have written the thing that pre‑pays three times: a link‑following crawler from a package, a two‑pass seeder‑then‑deep crawl with concurrency rules, and — the one we kept — a list of the pages people actually visit, fetched in order of traffic, at a concurrency that can never outbid a live shopper. Why each version was wrong for the next stage, and the surge‑protection bug that made the warmer most aggressive exactly when it should have been gentlest.
Every storefront page is rendered once on the server — so crawlers and slow phones get full HTML — and once more in the browser, where it becomes an app. How Inertia server‑side rendering runs here (a Bun process under a supervisor, health‑checked on every deploy), what a 418 KB props payload taught us about where the second actually goes, the silent client‑side‑rendering incident, and the three levers we keep on the list.
Every count, total and trend in aiku is precomputed — by ~650 small "hydrator" jobs that run at the point of change and a nightly sweep that catches what they missed, into ~150 stats tables and 35 partitioned time series at five frequencies. Why we chose that over computing on read, the bug where a single‑day redo flattened a whole month, and the index traps in partitioned tables.
226,000 images — product photos, family banners, logos, pallet photos, chat attachments — stored once and never resized by us. Every image on every page is a signed URL to an image proxy that resizes, crops and converts on the fly: AVIF and WebP with a fallback, a retina variant of each, the right width for the slot, cached at the edge. Why a proxy beat pre‑generated thumbnails, how the signature stops the proxy being a free resizer for the internet, and the "picture" element every card uses.
In February 2025 we stopped booting the framework on every request. What we gained, what bit us (state leaks, a deploy that kept deleting the running code, big headers), and the "anchor" directory that makes zero-downtime deploys boring.