Where Retrieval Stops Being Enough for Agent Memory
Similarity search fails agent memory in two specific ways. Here's how Cascade fixes both, including the RRF fusion code and why recency is a retrieval channel instead of a filter.
Writing on software, open source, and engineering.
Similarity search fails agent memory in two specific ways. Here's how Cascade fixes both, including the RRF fusion code and why recency is a retrieval channel instead of a filter.
Routing, retrieval, and memory around a coding agent. The tier system that picks the cheapest capable model, why the RAG index degrades gracefully, and what a month of building it settled.
macOS Screen Sharing leaves one real privacy gap. The fix turns on filtering input by event source, which lets you block the desk without blocking yourself. Ninety minutes to a working version.
Cascade began as scripts to paper over my own problems with Claude Code. Four lessons from the first month, including why multi-account routing is a bookkeeping problem and why the daemon changed the whole design.
Two decades of systems engineering, then AI. The gap between a working notebook and a running service never closed, it moved. And the skills that close it are not machine learning skills.
Splitting a monolithic CLI into a core plus 60 plugins. Schema ownership in a shared Postgres, a declared capability model, and what has to be true before a plugin economy can exist at all.
It started as a 200-line deploy script and became a 248-command Go CLI. What actually made self-hosting viable was not the containers, it was backup drills, health gates, and refusing to have a broken middle state.
Porting a reference C algorithm to JS accurate to ±0.0003°. The catastrophic cancellation hiding in the Julian Century, why the naive port was 50x slower, and what actually closed the gap.
Enterprise React for Apple, Capgemini, and Northrop Grumman. The 2.8MB bundle we cut to 400KB, why it got that way structurally, and the state management rule that actually holds up.
Fifteen years shipping PHP, including the PHP 7 migration. What the Zend Engine rewrite actually did to get 2x throughput at half the memory, and what maintaining backward compatibility at that scale costs.
I moved my primary stack from PHP to Node in 2014, before that was a safe call. What the event loop actually changes about system design, and the failure mode nobody warns you about.