Implement one GitHub issue per branch. Do not make unrelated changes.
- Read the linked issue, acceptance criteria, test plan, and out-of-scope notes.
- Create or update tests before changing behavior when the issue affects code.
- Implement the smallest change that satisfies the issue.
- Run the local gate before opening a PR:
make formatmake lintmake typecheckmake testmake check
- Open the PR with
Fixes #<issue-number>in the body. - Do not merge until required checks pass and a human reviewer approves.
- Install:
make install - Format:
make format - Lint:
make lint - Typecheck:
make typecheck - Test:
make test - Full local check:
make check - Start issue worktree:
scripts/start_issue_worktree.sh <issue> <slug> - Cleanup merged worktrees:
make cleanup-merged
- Do not rewrite unrelated files.
- Do not weaken tests or lint rules to make checks pass.
- Do not remove existing behavior unless the issue explicitly asks for it.
- Do not commit secrets, tokens, generated caches, build outputs, or large binary artifacts.
- If blocked, comment on the issue or PR with the blocker and a minimal reproduction.