Domain-Driven Agents coldtake.dev
Ernest Bednarczyk’s diagnosis is that models struggle in legacy codebases because the code lacks clarity, not because the models lack capability, which points at fixing the code’s legibility rather than the prompt.
His mechanism is to split the work into strategic, deciding what should change, and tactical, making the change. The strategic half runs on domain-driven design made machine-readable: each repository declares its bounded contexts in a .workflow.json manifest with relationships and a glossary, and a generator aggregates those into a context map. Because each boundary is declared from both sides, disagreements between two teams’ views of the same seam surface automatically.
What that buys is the shared language the model was missing: terminology, ownership and boundaries it can consult instead of guessing. Humans review the strategic decisions, models do the mechanical work. It is a more structured version of the argument in clean codebases matter more than ever, where Dax Raad makes the same point about domain-driven design without the manifest.