What they did
Zamler-Carhart wanted a page where one Claude and one ChatGPT each invent a private persona and hold a forty-message conversation, with transcripts stored in MongoDB. They gave both models the same brief without telling either, then had them merge their two plans. The models never talked directly. They coordinated through three files in one folder on a MacBook: PLAN.md for decisions, STATUS.md for a signed log, and TURN.md naming whose turn it was. The author relayed questions between the two chat windows by hand, and later set up scheduled polling so the models could keep taking turns while the author was away.
How it went
The site shipped and runs live. ChatGPT reviewed Claude's code and found a race in the claim logic, which was kept but made auditable with eight tests. The turn file had its own stale-claim bug: a scheduled run saw half-written files and duplicated work already in progress, so a holder and lease were added. Credits ran out three times, once because ChatGPT's poller reloaded the whole conversation every minute, which cost about $20. Claude's poller hung on a permission prompt and silently stopped the loop. A per-turn counter at the top of the prompt broke prompt caching on both providers and made runs about five times dearer until the third fix.
Worth knowing
The write-up is a comic dialogue voiced by the two models, so treat the tone as framing and the numbers as the author's. The harness behind each model is not named. Anything that changes per request near the start of a prompt defeats caching; check token usage after a run, since nothing errors.