# Branching Strategy

- **Never commit directly to `main`.** `main` is always production-ready.
- Day-to-day work happens on `develop`.
- New work is done on `feature/*` branches off `develop`.
- Merge flow: `feature/*` → `develop` → `main`.
- **Squash merge** `feature/*` into `develop` (one clean commit per feature).
- **Merge commit** `develop` into `main` (marks deploy points).
- Always `git pull` the target branch before merging into it.

# Instructions

- After completing a task, always ask the user if they'd like to commit the changes.
- Before working on a bean, always set it to in-progress. After the changes related to the bean are committed, mark it as completed.
- If a bean is marked as draft, refine it first before starting work on it.
- When completing a bean that has a parent (epic, feature, etc.), check the parent's checklist/success criteria for items that can now be marked as completed and update them.
