Skip to content

Git Workflow

main ← production (tagged releases)
dev ← integration branch
├── feat/prd-018-dag ← feature branch
├── fix/search-bug ← bugfix branch
└── docs/rfc-002 ← docs-only branch
BranchCreated fromMerges intoStrategy
feat/*, fix/*devdevMerge commit via PR
release/v0.x.0devmain + devMerge commit
hotfix/*mainmain + devCherry-pick
<type>(<scope>): <description>
[body — what and why]
Refs: RFC-001, FR-001..004
TypeWhen
featNew functionality
fixBug fix
docsDocumentation / artifacts
refactorNo behavior change
testTests only
choreBuild, deps, CI
Code → Audit → Fix → Test → Fmt → Lint → PR

Never create PR immediately after code. PR means: “I tested, audited, formatted, and everything works.”

Terminal window
cargo fmt # format
cargo fmt -- --check # verify: 0 diffs
cargo check # compile: 0 warnings
cargo test # all pass