justin․searls․co

Dual-loop BDD is the new Red-green TDD

This one goes out to all the testing neophytes who only recently realized that it's useful to have an automated means of verifying their code does what it claims to do.

For the last month, I've been working on prove_it, a framework for building quality harnesses for Claude Code—primarily via its hooks system. In a recent release, I added TDD enforcement to its default configuration. First, it injects a test-first development approach into every plan Claude generates. Then, a PreToolUse hook follows up with permissionDecisionReason reminders whenever the agent deviates from the one true path (e.g., repeatedly edits source files without touching any tests, never runs a test to see it fail, etc.).

To be continued…

Pro-tip to any devs who only discovered TDD thanks to coding agents: refactoring is inherently directional. It's more like prefactoring—you rearrange code to make the next change easy. That means you (and your agent) should know the next planned change before you refactor!

Copied!

Red-green rally

I'm still iterating on my experimental Claude Code verification harness, prove_it. This week my focus has been on nudging agents to practice test-driven development. Traditionally, we called this "TDD", but which has recently been renamed to "red-green TDD" as it has been discovered that this is what LLMs interpret as "real TDD".

Anyway, so that I could watch it steer an agent in a fresh codebase in real time, I opened a new directory and asked Claude Code to one-shot a terminal-based tennis game, replete with scoring and an AI that I couldn't beat. In OCaml. And it worked! It actually test-drove everything. Neat!

Breaking Change artwork

v52.0.1 - Len Testa: Bring back the Starcruiser

Hotfix

Video of this episode is up on YouTube:

Today, we're joined by a very special guest, Len Testa! You might know him from The Disney Dish podcast or from his excellent theme park travel planning app Touring Plans. Or you might not know him at all! No wrong answers.

This episode is all about Disney's ill-fated Star Wars: Galactic Starcruiser live action role-playing hotel—which we both had the opportunity to experience right when it first launched. It was a life-changing experience for both of us, so why did it fail? Is it true that the top Disney brass learned all the wrong lessons from that failure? And will the CEO-in-waiting Josh D'Amaro ever have the courage to attempt something so ambitious again? Listen to this episode, in which we speak with an unearned confidence that suggests we have all of these answers!

You can reach out to Len at len@touringplans.com and you can write into the show at podcast@searls.co. He'll read your e-mail and reply to it, but I may only skim it.

You know, a lot of lefties are loathe to admit that the oil companies have been working hard to abolish ICE since before most of them were born

Copied!

A lot of people were confused by Trump's immediate embrace of Saudi Arabia and the other Gulf states, but it makes a lot more sense when you consider that he thinks they spell it "Golf"

Copied!
Breaking Change artwork

v52 - Skynet any%

Breaking Change

Video of this episode is up on YouTube:

Sure feels like some combination of AI, the US military, and the AI military could bring an end to the world any day now, so I figured I'd better record one last show for posterity. Welcome me on this version's speedrun to the apocalypse!

So long as the EMP blasts don't nuke all our ham radios, write in to podcast@searls.co and I'll read it on the next release of the program. Over.

Be sure to click all these links while the clickin's good:

Show me them show notes…