Monthly Business Review — April 2026
First MBR run after closing the credit-revenue inflation bug — Stripe-truth numbers, business-model shift, growth metrics across revenue, subscribers, mail, credits, and automations.
Nine Ways My Reports Were Lying
Nine reporting bugs found after Phase A of credit revenue attribution shipped — from find_each footguns to FIFO debit awareness.
The Long Way to Add a String to a List
Why a 4-line change earned a full spec, an implementation plan, and a deliberate decision to leave nearby messes alone.
Four Tasks for One Vague Question
Four reporting rake tasks from one ambiguous request, bug-catching spec reviews, and a data discovery hidden in the cohort numbers.
What Counts as 'Used'? Building a Design Usage Report
Five SQL refinements taught me that the hard part of a usage report isn't counting — it's defining 'used' precisely enough to mean something.
Phantom Uploads: How a Missing .unwrap() Made 53 Designs Vanish
A debugging story about silent upload failures in Redux Toolkit and 53 designs that quietly lost their images.
Batch Makes Me Paranoid: Three Rescues Deep in a Nightly Ruby Job
How a routine merge review turned into three layers of defense around a nightly Stripe batch job, and what Ruby's rescue semantics will let you do to yourself.
Inline Then Extract: Building PDF Uploads on the Design Revision Page
Walking through 8 commits — and the moment the second call site of duplicated logic forced an extraction.
The Campaign That Lied About Being Stuck
A campaign flagged 'stuck in queue' for 5 days — when half its mail had already been delivered. A debug story about lying status flags.
Building a Showcase Game for Monogatari (And Why the Plan Was Wrong 13 Times)
Designed and shipped a 51-feature browser playground for the Monogatari engine across 8 phases — and discovered that the plan's action syntax disagreed with the engine on almost every Lab entry.
Stream Overlay Side Quest: DMs, CORS, and a Per-Alert Volume Mixer
Wired admin commands into Discord DMs, debugged a Bad Apple overlay CORS error, and built a per-alert volume mixer with live updates.
Wrestling with a CRM Checklist That Didn't Know About Zapier
A bug where Zapier-connected accounts never got their onboarding CRM tile checked — and the regression I almost shipped fixing it.