# Development Plans

Development plans are documents that outline the approach, rationale, and steps for implementing significant features, changes, or refactors in this project. They are required before beginning major work, as per our development guide.

## Purpose

- Provide a clear, structured plan for upcoming work.
- Facilitate discussion and feedback before implementation begins.
- Ensure alignment with project goals and architectural decisions.
- Serve as a historical record of why and how changes were made.

## Structure of a Well-Written Development Plan

A typical development plan should include:

1. **Title and Status**
   - Clear, descriptive title and current status (e.g., Proposed, In Progress, Completed).

2. **Context**
   - Background information and motivation for the planned work.
   - Reference related ADRs or issues if applicable.

3. **Goals**
   - What the plan aims to achieve.
   - Success criteria or acceptance tests.

4. **Proposed Approach**
   - Step-by-step outline of the implementation strategy.
   - Alternatives considered and rationale for chosen approach.

5. **Progress**
   - A running checklist or notes on what has been completed and what tasks remain.
   - Updated by the agent as work progresses.

6. **Risks and Mitigations**
   - Potential challenges, risks, or unknowns.
   - How these will be addressed.

7. **Impact**
   - Expected impact on users, codebase, and documentation.
   - Required changes to tests, docs, or processes.

8. **References**
   - Links to ADRs, issues, discussions, or external resources.

## Example Structure

```
# Title: [Feature/Change Name]
Status: Proposed

## Context

## Goals

## Proposed Approach

## Progress

## Risks and Mitigations

## Impact

## References
```

Development plans should be stored as markdown files in this directory, one per plan.
