There is a follow-up story to PhotoStrip, the tool we open-sourced – one that may be more useful than the tool itself: how it was built, and why its author missed things. The full write-up is published as a retrospective (English/Japanese) on GitHub; this article is the summary.
What happened
PhotoStrip v1.0.0 was written by an AI (Claude) under human supervision, tested in real browsers, and measured down to the kilobyte before release. Honest work. Still, before announcing it anywhere, we added one more step: a second AI with a completely empty context – no knowledge of any design decision – was told to review the repository as a hostile user. It found 21 defects: a strip that freezes permanently after one tap on a phone, a setup that breaks with two strips on a page, a conversion tool that kept publishing photos the owner had deleted. Exactly the kind of problems real users hit first.
Why the author missed them
Tests written by an author can only verify the world the author imagined – and the author’s imagination is shaped by having written the code. “It works” only ever means “it works where I ran it”. Verification gravitates to first-time use, while real maintenance is made of second actions. And fixes breed sibling bugs: our fix for a touch-freeze bug recreated the very same freeze through another event path, caught only because the fix was re-tested under the same hostile conditions that found the original.
Humans and AIs miss different things
Listing who found what shows a clear division of labor. The AI’s measurements caught the 27 MB payload and a runaway pre-loader – numbers need no imagination. But the core issue – “the same photo came around again; it makes the project feel small” – appears in no metric at all: a human perceived it. So did the reading that “anyone may use it” could sound non-profit-only in context. And the 21 concrete defects came from the fresh-context reviewer, free of author bias.
A four-line recipe for building with AI
- Let the AI build – and make it measure (demand numbers, not adjectives)
- Before release, let a separate, context-free reviewer try to break it. Never settle for the author reviewing itself (an AI can summon an unbiased twin in minutes – something humans cannot do)
- Keep humans in the loop for perception, values, and priorities – and listen when they say something feels wrong even though every metric is green. Especially then
- Fix bug families, not instances, and re-test under the conditions that caught them
The conclusion fits in one line: never let the author be the last reader.
Full retrospective (GitHub, en/ja) / PhotoStrip live demo / in the same spirit: the simulator’s development story. This article, too, was written by an AI (Claude) under human supervision.
