backlog-cli 0.3.0

A simple, fast backlog manager for your git repos with an interactive TUI
# Claude Code Project Guidelines

## Project Overview

`backlog` is a Rust CLI tool for managing per-repo todo lists with an interactive TUI.

## Branching Strategy

**IMPORTANT: Never push directly to master.**

- `master` - Stable releases only. Each commit is tagged with a semver version.
- `develop` - Integration branch. All work happens here or in feature branches.
- `feature/*` - New features branch off develop
- `fix/*` - Bug fixes branch off develop

## Release Process

Use the `/release` command to perform a release. This will:
1. Run tests, clippy, and fmt checks
2. Bump version in Cargo.toml
3. Merge develop → master
4. Tag with version (e.g., v0.2.0)
5. Push to GitHub
6. Publish to crates.io

**Never manually push to master** - always use the release command.

## Versioning

Semantic versioning (semver):
- MAJOR (1.0.0) - Breaking changes
- MINOR (0.2.0) - New features, backwards compatible
- PATCH (0.1.1) - Bug fixes

## Build Commands

```bash
cargo build              # Debug build
cargo build --release    # Release build
cargo test               # Run tests
cargo clippy             # Lint
cargo fmt                # Format code
cargo install --path .   # Install locally
```

## File Structure

- `src/main.rs` - All application code (single-file for simplicity)
- `.todo/backlog.json` - Per-repo backlog storage (gitignored)
- `~/.backlog/index.json` - Global index of all repos

## Code Conventions

- Run `cargo fmt` before committing
- Run `cargo clippy` and fix warnings
- Keep the single-file structure unless complexity demands splitting
- Use ratatui for TUI, clap for CLI parsing