Skip to main content

Commit planning

A2C formalizes how work is split into batches that map to reviewable Git commits.

Why commit plans exist

Without a plan, AI-assisted work drifts into big-bang generation. A commit plan:

  • defines the next bounded batch
  • connects batches to architecture and ADRs
  • gives prompts a stop condition
  • keeps ADR decisions isolated in dedicated commits

Commit plan structure

Use pathname:///a2c-assets/templates/commit-plan/commit-plan-template.md.

Each batch should specify:

FieldPurpose
Batch idStable reference for prompts (batch-01, etc.)
GoalOne-sentence outcome
ScopeFiles and directories in scope
Out of scopeExplicit exclusions
PrerequisitesADRs, docs, or prior batches required
Suggested commit messageConventional or adr(...) type
Stop conditionWhen the agent must halt

Ordering preferences

  1. Docs before code
  2. Architecture before scaffolding
  3. Scaffolding before implementation
  4. ADR decisions in dedicated adr(<category>): ... commits
  5. One coherent concern per commit

ADR commit isolation

An ADR commit may include only:

  • the ADR file
  • updates to docs/adr/INDEX.md
  • supersedes / superseded-by link maintenance
  • minimal metadata required for that ADR

An ADR commit must not include implementation, unrelated docs, or multiple ADRs.

Prompt integration

Phase prompts reference the current batch from the commit plan. Example:

Execute batch bootstrap-02 from plans/bootstrap-a2c-workflow.md. Stop when batch scope is complete.