I used to need enough of a system in my head before I could build a proof of concept. The PoC came after a rough architecture and acted as a sanity check for whether an approach felt right or fit the surrounding design.
That changed while I was learning how evaluation harnesses worked. I began with a rough intent and built several harnesses, each following a separate idea as far as it remained useful. The conversations wandered, but the bird walks became working toys quickly enough that I could inspect actual behavior while my understanding of the system was still forming.
One of those harnesses tested models for strict tool-selection compliance. I had built the evaluator around a particular tool-call format, then swapped in a model that returned something different. The harness did not recognize the call, so the score made the run look like a tool-selection failure.
I found the mismatch later while inspecting the trace. Once the evaluator understood the model's output, tool selection was more reliable than the original result suggested, although later parts of the run still failed. The corrected score was only part of what the toy produced. It also showed that a planned harness needed a normalization boundary before scoring and enough raw output in its traces to distinguish parser failures from model failures.
Working this way produces more code than I would want to maintain. Some of the toys went surprisingly far because each result suggested another useful question. They were still exploratory artifacts, and extending one after it stopped teaching me something only made the later consolidation harder.
By the time I plan the implementation, fewer of its details exist only in my head. I have seen a model format break the parser and watched the trace correct the conclusion drawn from the score. Most of the exploratory code can be discarded, while those observed failures remain useful when I decide how the real harness should work.
The one-line version
Fast PoCs help generate the system; planning decides what becomes the implementation.