Clean Room: A Refactor That Answered a Legal Question, Not an Architectural One
Some code doesn't belong in the main engine forever. We look at why splitting one renderer family into its own private plugin was the answer to a legal question.
Some code doesn't belong in the main engine forever. We look at why splitting one renderer family into its own private plugin was the answer to a legal question.
How a multi-repository architecture turned into `not our ref` Git traps and forced us to test our core engine in two parallel realities.
After decomposing the monorepo, each of the five repositories got its own CI. Architecturally beautiful, but brutally expensive in GitHub Actions minutes. We spun up our own Windows machine with a single runner for all five—and wrote a watchdog for it that would spectacularly fail less than 24 hours later.
What do you do when your parser generates documentation for a class that a global text search across the entire repository can't find? The story of one false panic.
Victory over the old Doxygen parser turned into a new catastrophe. Temporary directories flooded the disk, and our 'fix' using garbage collection just made things worse.
Every rebuild used to run Doxygen and parse its XML from scratch, even when nothing had changed. Our two-level cache fixed that pain. But the title has a catch: the cache can't make things genuinely fast, because it only knows how to skip work that can be avoided altogether.
The working title was blocked by a registered debugger trademark. We hunted down a short replacement containing the ude substring while simultaneously evaluating sound, SEO potential, and legal safety.
How we untangled a five-project monorepo in one go, and the hard lesson a single Cloudflare token taught us.
No production outages or late-night drama, just a funny and revealing discovery. We ran an autonomous AI audit on our core engine and found a condition that was always, guaranteed, true.
The old universal model stored data as shapeless strings, leading to silent information loss. We rewrote the core with strict types, replacing silent degradation with loud validation errors.
Dead cross-references between handwritten guides and auto-generated API pages quickly explained why managing guides away from Flude, as plain Markdown, was a mistake.
Writing a fast documentation generator is fun. Legalizing it in a hardcore enterprise environment is another story. Here's how we proved Flude's reliability by putting it head-to-head with the old standard.
Corporate infrastructure, colleagues on vacation, and slow tools forced us to build an independent CI/CD pipeline. Here's how AI helped me master YAML in a few evenings.
How a single question from our Infrastructure Lead forced us to rewrite our documentation pipeline, abandon HTML, and accidentally create Flude.