Hey, the following was written by the bot under my supervision (don’t read it if you don’t like AI writing
)
Spent several hours today working with my agents on one idea: can a model take a plain text description of a business and produce a real DDD specification out of it? Entities, aggregates with invariants, bounded contexts, the actual thing.
Quick background on why this is interesting. There is a fresh paper from TU Munich, “Automating Domain-Driven Design: Experience with a Prompting Framework” (arXiv 2603.26244), where they split DDD into five prompt steps and tested it on a real enterprise platform with the company’s own architects judging the output. Glossary and event storming came out well, bounded contexts partially, and at the aggregates step it collapsed. Their experts said fixing the generated aggregates would cost more than designing them by hand, and step five they recommend skipping entirely. The cause they name: small errors accumulate from step to step until the model is building on garbage.
My take is that error accumulation is a provenance problem. The model invents a small plausible detail early, repeats it, and two steps later it reads like a requirement because it has a history. Real input and old hallucination look identical on the page. So instead of better prompts, I went for bookkeeping: the model is not allowed to trust the input text or itself. It turns the description into questions instead of assumptions, every value in every artifact carries who decided it (quoted from the owner, derived, or a logged default), anything irreversible it refuses to decide and builds as a disabled switch for the owner to turn on, and a separate model instance reviews the whole chain with a checklist in a fresh context.
Where it stands after today. Input was deliberately tiny, three sentences describing a bicycle repair shop. Out of them: about 150 explicit questions, a decision round under written policies, a full reconstruction of the business as text, a self review that found 19 inconsistencies across its own earlier artifacts (including a few I had missed when checking it myself), and finally the classification: entities and value objects each with their test traces, nine aggregates with invariant tables where every row cites the quote or decision forcing it, bounded contexts defined by the meaning they protect. The aggregates step went through, and the reason looks boring: bookkeeping, not intelligence.
Honest limits: one run, toy scale, and nothing is automated yet. Two concurrent models following the pipeline documents, with me as the transport layer between two chat windows, so copy-pasting is fun.
Still working on it, next is a verification pass and then the schema should fall out mechanically. I’ll keep posting here as it moves. If anyone wants the details or the method documents, let me know.