The feature we benched five weeks ago shipped this week.
Customer account statements — parked in early August because the data would have produced confidently wrong numbers — came off the bench, rebuilt around the data’s reality. Plus: a one-line search request that opened an archaeology dig, and a leak from last week’s recap closed on schedule.
The statement story first, because it’s really a story about sequencing. Five weeks ago this recap said: feature parked, because due dates and credit memos in the migrated data would have made the math lie. The fix wasn’t to wait for perfect data — it was to redesign around the data we actually have. The rebuilt feature reads from the migrated order history rather than the accounting layer, sections activity by sign so the legacy data’s quirks land in the right buckets, and floors the running balance so it can never display nonsense. It shipped this week as a portal page and matching PDF, reachable from five different places a customer might reasonably look for it, in the same format our accounting team and customers have trusted for years. A couple of underlying data questions are still out with the colleague who owns the legacy imports — the feature is built so their answers refine it rather than block it.
Then the archaeology. The request was one line: show the product’s style number in the search autocomplete. Standard recon before touching anything — and the dig opened up. The live search index, it turned out, had never been written by our current sync module at all: every record in it came from a retired script. The scheduled syncs had been off since spring, because the incremental path had no published-products filter and kept trying to push the full 400,000-item catalog into an index budgeted for 90,000. Relevance ranking was sorting our best-rank products backwards. And raw list prices were sitting in the index, readable through the public search key. One week later: the selection cap is a proper configuration setting instead of a retired script’s hardcoded rule, ranking points the right way, prices are out of the index, a fresh 90,000-record sync ran in about twelve seconds with zero errors, 151 legacy straggler records were hunted down by cursor and deleted, and the scheduled syncs are back on. The style number renders in autocomplete now, too — the original request, almost a footnote.
Third: the paperwork got a facelift and the portal got a batch. Every customer-facing document now carries proper branded letterhead with uniform product thumbnails, and a stack of stakeholder-review fixes shipped in one pass — among them, quick reorder now paints engine-computed prices from the very first render. That closes the leak flagged in last week’s recap, where one surface was caught showing default prices before correcting itself. Flagged one week, fixed the next; the audit loop is working.
Two quieter motions. The annual payment-card compliance questionnaire got answered for the new stack, and the newer script-integrity requirements — inventorying and tamper-protecting everything that loads on a payment page — are being built now, months before cutover, precisely so they don’t break anything during a high-pressure launch week. And the design work began for surfacing customers’ pre-migration purchase history in their portal accounts: recon across decades of order lines came back with a 99.99% match rate between legacy part numbers and live products, which is the kind of number that makes a backfill feel less like a gamble and more like a plan.
Benched features shipping, one-line requests paying off systemic debts, last week’s flag closed this week. The loop keeps tightening.