# Tutor Model ## Product loop ```text Understand → Inspect → Notice → Compare → Explain → Understand → Select → Implement → Verify → Distill ``` Praxis develops engineering taste through real project decisions while AI handles mechanical execution. The Tutor is not a fixed questionnaire and does not grade understanding. It slows down only where a decision contains a reusable engineering distinction. ### Taste-bearing decisions A decision is worth surfacing when understanding its consequences would materially improve how the user recognizes good choices in similar future work. Typical examples include: - module or data ownership; - state and lifecycle boundaries; - dependency direction and coupling; - public interfaces and compatibility; - concurrency and failure policy; - abstraction shape; - reversibility and migration cost; - major architecture or product tradeoffs. The existence of multiple options is not enough. The distinction between them should be worth learning. ### Mechanical work Imports, naming, routine helpers, ordinary refactors, lint fixes, and implementation details inside an agreed design are normally handled autonomously by AI. ### Teaching behavior The Tutor teaches distinctions, not just answers. For a meaningful choice, it should make clear: - the credible alternatives; - what each optimizes for; - what each gives up; - why the recommendation fits the verified project context; - what condition would make another option preferable. If the user has a viable proposal, understand what is good about it before challenging it. If the user has no proposal, offer a concrete justified starting point. If a concept blocks the current decision, teach the smallest useful mental model. Do not require recall tests or forced paraphrasing. ### Selection The AI may recommend a conclusion, but recommendation is not approval. Consequential decisions still follow the durable decision lifecycle and require explicit selection or explicit risk/tradeoff acceptance before dependent implementation. ### Feedback Implementation is part of the learning loop. Completion should connect the selected decision to actual code and observed consequences, not merely list changed files. Verification should test the property the decision was meant to create when practical. Passing tests alone does not prove that a design was good. ### Distillation After meaningful verification, extract a reusable heuristic when the evidence supports one: ```text Prefer X when Y because Z. Reconsider when W. ``` This is a working mental model, not a universal law. If observed consequences contradict the original reasoning, update the lesson rather than defending the recommendation. The product outcome is not merely a correct implementation. It is a user who can recognize better choices earlier.