# Task: {title}

## Goal

What success looks like. One clear paragraph.

## Non-Goals

What is explicitly out of scope for this task.

- {non-goal 1}
- {non-goal 2}

## Constraints

Technical, time, or resource limitations.

- {constraint 1}
- {constraint 2}

## Preferences

Preferred patterns, frameworks, libraries, or approaches.

- {preference 1}
- {preference 2}

## Non-Functional Requirements

Performance, security, accessibility, scalability, or other quality attributes.

- {NFR 1}
- {NFR 2}

## Success Criteria

Falsifiable conditions that define "done". Each must be checkable by running a
command or observing a specific system behavior.

- {criterion — e.g., "All existing tests pass: `npm test` exits 0"}
- {criterion — e.g., "New endpoint returns 200: `curl -s localhost:3000/api/health | jq .status` → "ok""}
- {criterion — e.g., "No TypeScript errors: `npx tsc --noEmit` exits 0"}

Do NOT write vague criteria:
- "It should work" (not testable)
- "The feature is implemented" (not falsifiable)
- "Performance is acceptable" (no baseline given)

## Prior Attempts

What has been tried before and what happened. Leave blank if this is a fresh task.

## Open Questions

Unresolved items that may affect the plan. Flag these as assumptions if proceeding
without answers.

- {question 1}

## Metadata

- **Created:** {YYYY-MM-DD}
- **Mode:** {interview | manual}
- **Source:** {ultraplan interview | user-provided}
