Clarify desired behavior and select a design approach before implementation, starting from an unclear outcome. Use when defining requirements, constraints, acceptance criteria, or choosing how to build something. Do not use to evaluate an existing system or design (use architecture-review); this skill starts before a design exists, it does not judge one that already does.