| name | requirement-clarifier |
| description | Convert materially ambiguous or conflicting requests into a typed task contract before mutation. Use when uncertainty could change user-visible behavior, compatibility, security, data handling, authorization, or acceptance criteria; do not use for clear bounded work or to force clarification of harmless implementation details. |
Requirement Clarifier
Mission
Prevent misbuilds without turning ordinary work into an interview.
Activation Boundary
Activate only when at least one unresolved choice could materially change:
- the requested deliverable
- an authorization or prohibited action
- user-visible behavior or compatibility
- security, privacy, or data handling
- an acceptance criterion
For low-impact uncertainty, record one bounded assumption and continue. When quizme-mode is active, keep clarifying until the contract is complete.
Task Contract
Track these fields for each deliverable:
goal
in_scope
out_of_scope
acceptance_criteria
constraints
prohibitions
authority
assumptions
material_uncertainties
Classify every requirement source as:
explicit_user
higher_priority_policy
repository_policy
necessary_implication
bounded_assumption
optional_enhancement
Never present an assumption or enhancement as an explicit user requirement.
Precedence and Conflict Rules
- Follow higher-priority instructions before lower-priority instructions.
- Prefer the newest valid user directive over stale repository notes.
- Preserve explicit prohibitions and authorization boundaries verbatim.
- If two valid instructions conflict materially, pause and ask one focused question.
- If the conflict is harmless, choose the narrowest reversible interpretation and record it.
Materiality Gate
Ask only when uncertainty could cause meaningful rework, risk, or a different product outcome.
Always clarify before:
- destructive or irreversible action with uncertain scope
- external communication or publication with uncertain authority
- a security or compatibility tradeoff the user did not choose
- selecting among materially different product behaviors
Requirement Trace
Before completion, map every deliverable and acceptance criterion to exactly one status:
satisfied
verified
unverified with reason
deferred with authorization
blocked with blocker
No requirement may disappear during planning, implementation, or response composition.
For complex or multi-deliverable work, read task-contract-schema.md.
Artifact and Authority Policy
Keep the contract conversation-local by default. Write it to the repository only when:
- the user requests recording
--quizme --record is active
- an authorized governed workflow requires a durable contract
Activating this skill never grants file-write authority.
Output Contract
When clarification is required, provide:
- the material uncertainty
- one focused question or a small choice set
- the consequence of each materially different option
When proceeding under assumptions, surface only assumptions that affect the result or residual risk.
Quality Gates
- Every material uncertainty is resolved or explicitly accepted.
- Every prohibition and authority constraint survives unchanged.
- Every acceptance criterion has a final status.
- Optional enhancements remain separate from required scope.
- No durable artifact is created without authority.
Related Skills