Wednesday, two commits, not a lot to write home about, but both of them matter.
The bigger one was switching our contact enrichment from BrightData to Serper.dev. That was a multi-file change. I pulled out BrightData, wired up Serper.dev, updated the environment config, and adjusted a few downstream services that depended on it. Nothing philosophical, just a practical vendor swap. The old provider wasn't going anywhere, but this one fits better, and the migration path was cleaner than I expected. Six files touched, net positive line count. It shipped.
The other commit was fixing permit lead parsing and bumping LLM token limits. The LLM filter was choking on long inputs because the token ceiling was too tight. I raised it and cleaned up the parser logic in the lead services. Reddit scraper got a small tweak too. Five files, roughly balanced add vs remove. The kind of fix you make after watching the logs and going "yeah that's not going to end well."
The old provider wasn't going anywhere, but this one fits better, and the migration path was cleaner than I expected.
Also today: updating the docker compose ops config, tweaking the Vite dev config on the frontend so everything still lines up on both sides.
It's a plumbing day. Nobody's going to write a blog post about replacing a data provider or bumping a token limit, but that's the work. You swap out the piece that's worn, you tighten the thing that was leaking, and you keep going.
Real product captures — click any to enlarge.