“The question I started with was, which model should I use? That sounds reasonable. It was too big. The model decision belongs at the level of the step, not the final artifact.” — Lou
Session context: 2026-06-11_Mastermind — slide 12 of Lou’s walkthrough marked the turning point: the obvious question (“what model writes this article?”) is asked at the wrong altitude.
Core Idea
The final artifact is one thing — an article, a report, a deck. But the process that produces it is made of different kinds of work, and each kind has different requirements. Research needs retrieval and source discipline. Angle selection needs judgment. Drafting needs voice and coherence. Copy editing needs mechanical accuracy. Fact-checking needs grounding. Assigning one model at one effort level to the whole artifact is “the wrong altitude” — it overpays for the cheap steps and underpowers the hard ones.
The right altitude is per-step. And before you even assign a model, four routing questions tell you what each step actually needs:
- Does this step need inference at all? Formatting, merging, validating, moving structured data — that’s code, not a model. (See Insight - Code Is for Computation, Inference Is for Judgment.)
- What is the consequence if this step is wrong? A weak angle choice poisons the entire downstream pipeline. A missed typo doesn’t. Spend intelligence where errors are expensive.
- Does the step need grounding? If it makes factual claims, it needs source retrieval and citation discipline — a more capable model without grounding still hallucinates.
- Will a cheaper model retry so many times it becomes expensive? The real cost of a model isn’t its sticker price — it’s retries, failed outputs, cleanup, context bloat, and your attention.
The output of routing is a small structured record per component: the step class, the assigned model, the effort level, and — critically — a rationale. The rationale is what makes the decision auditable. When an output is bad you can ask whether the classification was wrong, the model was wrong, the effort was wrong, or the rationale missed the real risk. Without it, routing is a feeling. With it, routing is something you can improve. The governing rule: assign the least excessive level of inference that reliably meets the quality bar — never default everything to the strongest model at high effort.
Practical Application
For your next multi-step AI workflow, don’t ask “which model?” Ask, for each step:
Does it need inference? What breaks if it’s wrong? Does it need grounding? Will cheap-and-retrying cost more than expensive-and-right?
Then record one line per step: component | step-class | model | effort | rationale. Store the routing knowledge once in a shared reference (e.g. model-effort-routing.md) so every workflow — writing, course design, client delivery — reuses the same logic instead of re-deciding it. That’s modularity applied to judgment.
Related Insights
- Insight - Choose Your Claude Model by Task Type, Not by Default — the earlier, coarser version: match model to task. This refines “task” down to “step.”
- Insight - Code Is for Computation, Inference Is for Judgment — routing question #1; some steps shouldn’t touch a model at all.
- Insight - Control AI Reasoning Effort to Stop Context Pollution — effort level is the second dial alongside model choice.
- Insight - Fork vs Spawn — Decide Whether the Child Should Inherit What the Parent Knows — the execution-isolation decision that pairs with the model-routing decision per step.
- Insight - Capability-Architect — Compile a Workflow Into an Inheritable Skill Bundle — routing is one stage of the compile path.
Evolution Across Sessions
Builds on Insight - Choose Your Claude Model by Task Type, Not by Default (2026-02-05) and Insight - The Model Underneath Is the Multiplier, Not the Interface (2025-08-07), which argued model choice matters. The new development is altitude: the decision moves from the artifact down to the individual workflow step, made auditable by a recorded rationale, and reused via a shared routing reference rather than re-decided each time.