Yadda 3.0.0: BDD in the Age of AI Agents
TL;DR Highlight
Claude Code shipped Yadda 3.0 in about a day, showing executable specs matter for agents
Who Should Read
A developer running several coding agents who needs a way to verify the output actually matches the requirements
Core Mechanics
- Claude wrote most of Yadda 3.0
- The modernisation used Claude Code with Opus 4.8 with very few human interventions.
- It took roughly a day from start to npm publish while the author did other work in parallel.
- The work was split into phases
- The phases were removing obsolete features, toolchain, mechanical formatting, source modernisation, API exploration, examples and CI, then docs and TypeScript definitions.
- Each phase was planned before implementation.
- Code and tests were never changed in the same step
- If an agent changes both, a green suite is weaker evidence because it can redefine what counts as correct.
- The existing comprehensive test suite acted as a firm external constraint.
- The bottleneck is human coordination, not coding
- The author could comfortably run three tasks at once, sometimes four or five.
- Beyond that, context on each agent was lost, so he sees orchestration as the next key layer.
Community Reactions
- Opinion questioning why BDD uses natural language
- The abstraction layer is good, but natural language seems an odd and expensive choice.
- The commenter saw non-technical people use specs only once, with a traditional DSL.
- Experience adding BDD to AI codebases, mostly positive
- It was added to two codebases, one engineered and one vibecoded.
- High-level API and UI tests forced a first cleanup, such as standardised DB access and a single API SDK.
- Opinion that the spec-from-discussion flow is brilliant or a snake eating its tail
- Turning project discussions into BDD rails for AI could be either, but is worth a try.
How to Apply
- Turn one meeting note into a candidate spec
- Pick a requirements doc or meeting note today and have an LLM rewrite it as Given/When/Then scenarios.
- Edit the terms yourself so they match your domain language.
- Separate code and test edits in agent tasks
- When asking for a refactor, split production-code changes and test changes into separate steps.
- Put a rule in the prompt that existing tests must not be edited during the code step.
- Break large jobs into phased epics
- Order phases as removal, toolchain, formatting, source changes, docs, and ask for a plan before each.
- Commit mechanical formatting separately from behavioural changes.
- Start parallel agents at three
- Use git worktree to give each agent an isolated copy.
- Note where you start losing context and set your parallel limit there.
Try It
# Paste into a Claude or ChatGPT chat (simplified version of the article's idea: requirements → executable spec draft)
Turn the requirements below into a BDD spec draft. Use domain terms consistently, and write sentences that describe intent rather than procedural scripts. Use GitHub-flavoured Markdown.
# Feature: feature name
## Scenario: scenario name
- list of sentences
Requirements:
{{meeting notes or requirements}}
At the end, list any inconsistent or ambiguous terms separately.
Next step: give the accepted spec to an implementation agent and tell it to write code that satisfies the spec without modifying tests.Terminology
Related Papers
Same Simulation, Different Evidence: Where Retrieved Tool Output Costs LLM Agents Accuracy
Saving long tool output to files cut GPT-5.1 accuracy by 11.3 points; naming the authoritative file restored it.
Fake News, Real Crashes: Information Injection Attacks on LLM Financial Trading Agents
Fake headlines hijacked LLM trading agents 62% of the time versus 14% for prompt injection.
Harness Engineering 101: The LLM is the brain, the harness is the body
An agent is a loop managing a JSON array; 16 chapters build one from scratch
Harness2 by Google Research – Recursive Agent Harnessing
Recursively refining the harness with fixed model weights raised benchmark scores by up to 11.8 points.
Ousted Savannah police officer gave ICE agent husband access to Flock system
A police officer shared her Flock login with her ICE-agent husband; an audit found 983 searches and she was fired
Tmux and Claude Code: Sessions, Send-Keys, and the Ceiling
Running Claude Code agents in tmux works well, but limits appear around four agents.