# Handoff

> Generated: {date} - Branch: {branch} - Previous session: {one-line session label}

## Current Goal
The single main objective being pursued right now. One or two sentences.

## Current State
Where the work stands: what runs, what is half-done, what is broken.
Include current test/lint status if known (e.g. "pytest green, mypy 2 errors in app/db/refresh.py").

## Completed Work
Bullet list of finished items in this session. Past tense, concrete.

## Key Decisions
Decisions made and *why*. Include rejected alternatives when relevant.
Reference ADRs in docs/decisions/ if one was written.

## Files Changed
Changed or closely inspected files, with a phrase on what/why:
- `app/...` - what changed
- `tests/...` - what changed

## Failed Attempts / Avoid
Approaches that were tried and did not work, with the reason. The next
session must not retry these.

## Open Tasks
Remaining work items, in priority order. Small, checkable items.
- [ ] ...

## Next Concrete Step
The FIRST action the new session should take. One specific, immediately
executable step (file + what to do), not a goal.

## User Preferences / Constraints
Session-specific instructions from the user that are not already in
CLAUDE.md / AGENTS.md (scope limits, style requests, "don't touch X", etc.).
Do not repeat what the project docs already say.
