Mapping invisible friction
Three /grill-me sessions before writing a single line of code.
The first one reviews the full SPEC.md for a "Dynamic Friction Graph & Context Translator" — a system that takes questions like "Why can't you just grab food from the truck?" and converts them into measurable dependency graphs. Architecture layers, domain types, cost vectors, output modes. All the structural scaffolding.
The second session starts with a feeling: "Something is missing from the plan, and whatever that something is, isn't that I want to add complexity." Not a technical gap. An assumption gap. The grilling surfaces it — the spec treats internal barriers (executive dysfunction, emotional drain, cognitive overload) as secondary to external ones (financial, physical, administrative). But for the people this tool is for, the internal barriers are the primary friction.
The third session lands the design principle that shapes everything downstream: internal/psychological blocks must be treated as structurally real and energetically equivalent to financial or physical blocks. This is why executive_function becomes a first-class domain type alongside financial and physical. This is why the Boundary Output generates physical-analogy energy equivalences for invisible costs — "The executive dysfunction required to initiate this phone call costs the equivalent energy of climbing four flights of stairs with groceries."
The spec had the architecture right. The grilling found the soul.