The Cache That Cancels Your Improvement

A batch job matches free-text line items against a large product catalogue. Supplier wording never matches catalogue wording, so it runs a cascade — remembered aliases, then embedded codes, then exact matches, then fuzzy retrieval, and finally one language-model call to adjudicate the survivors. That last step costs money, so results are cached. I improved the text normalisation feeding the cascade. Tested it properly: extracted the production matching code, ran it against the real catalogue, confirmed zero previously working matches broke and roughly 230 previously failing lines now cleared the acceptance gate. ...

August 29, 2026 · 4 min · Leandro Garcia

The Demo Video Was the Easy Part

I needed demo videos for two pre-revenue products: one that reads supplier invoices and computes per-product margins, one that watches trucks leave a quarry and classifies what they’re carrying. No budget for an agency. So I built them with an agent, ffmpeg, a headless Chromium and a free text-to-speech voice. The rendering pipeline took an afternoon. Everything else took two days, and none of it was video work. The problem isn’t generation Script-to-video is a solved commodity. Synthesia will turn text into a presenter for about USD 18/month. Arcade will turn a screen recording into a guided demo for USD 32. Both are good at what they do, and neither touches the part that actually costs anything. ...

August 8, 2026 · 7 min · Leandro Garcia

What Dogfooding an MCP Server Taught Me About Tool Output

I built an MCP server that searches flights across flexible dates and multiple airports, then used it for an actual trip I was planning. Three tool calls in, it had produced a correct answer, and along the way had wasted most of a day’s API quota and told the agent several things that weren’t true. None of the four problems was a crash. Every one of them was a shape problem: the output was well-formed, plausible, and misleading. That’s the failure mode that matters when your consumer is a language model, because an agent can’t smell that a number is wrong. It acts on whatever you hand it — and when the number is wrong in an expensive direction, it acts again. ...

August 3, 2026 · 7 min · Leandro Garcia