---
description: Break a feature into implementation tasks
argument-hint: <feature-slug>
allowed-tools: Bash, Read, Write, Edit, Glob, Grep
---

Break down feature into tasks: $ARGUMENTS

## Instructions

### 1. Load Feature, Spec, and Design

```bash
sdlc feature show $ARGUMENTS --json
```

Read both:
- `.sdlc/features/$ARGUMENTS/spec.md`
- `.sdlc/features/$ARGUMENTS/design.md`

Both must exist before creating a task breakdown.

### 2. Identify Implementation Units

From the design, identify discrete units of work. Each task should:
- Be completable in a single coding session
- Have clear inputs and outputs
- Be independently testable
- Have minimal overlap with other tasks

### 3. Create Tasks via CLI

For each task, register it:

```bash
sdlc task add $ARGUMENTS "Task title - brief description"
```

Order tasks by dependency -- foundational work first, integration last.

### 4. Write Detailed Task Descriptions

Write to `.sdlc/features/$ARGUMENTS/tasks.md`:

```markdown
# Tasks: [Feature Title]

## Task Order (dependency sequence)

### T1: [Title]
- **Scope:** [What exactly to implement]
- **Files:** [Expected files to create/modify]
- **Depends on:** [None / T-id]
- **Acceptance criteria:**
  - [ ] [Specific, testable criterion]

### T2: [Title]
...
```

### 5. Register the Artifact

```bash
sdlc artifact create $ARGUMENTS tasks
```

### 6. Report

List all tasks in order, total count, and estimated dependency chain depth (longest path through the task graph).

## Critical Rules

- NEVER create tasks without reading both spec and design
- ALWAYS order tasks by dependency -- no task should reference work not yet done
- Each task MUST be completable in a single session
- ALWAYS include acceptance criteria per task
- NEVER create monolithic tasks -- split until each is focused
