- Kept Specification by example — scenarios in the domain's words as the one shared source of truth.
- Kept The ubiquitous language of domain-driven design — one vocabulary from conversation to code.
- Kept Ports & adapters — the world at the edges, injected, so the core runs alone.
None of that is new, and BDD already promised most of it. It faded from
most places for an honest reason: the translation tax. Somebody had
to write the step bindings, carry them through every refactoring,
keep the scenarios readable — and that somebody was always a
developer with other work. The scenarios rotted into a stilted test
dialect that the business never read, and teams quietly went back to
plain tests.
AI assistants change both sides of that ledger. Writing and
maintaining the bindings is now nearly free — the tax collapsed. And
a new need appeared in its place: an AI that writes code needs an
anchor it cannot reinterpret, a contract that holds from one prompt
to the next. The signed, executable scenario is exactly that anchor.
What was BDD's cost center is now the safety mechanism.