| 010 |
Why repoman exists |
The problem it solves, prevention vs. recovery, and the core design principles — each tied to a real incident |
| 020 |
Failure modes |
A scannable catalog: what each failure looks like, the mechanism that prevents it, the incident it traces to |
| 030 |
Getting started |
Install, doctor, selftest as the acceptance gate, and opting in via .repoman.json |
| 035 |
Migrating from vendored Python |
A verified shim template and generator script for replacing vendored Python repoman scripts with thin gorepoman shims |
| 040 |
Precise editing |
ed and strreplace — handle-verified, journaled editing (find/apply/sub, boundary append/prepend, handle-verified insert), with real worked examples |
| 050 |
The role classifier |
roles — the full vocabulary, per-language classifier notes, and their documented limits |
| 055 |
Structured output: --format |
One flag, one meaning, on every reporting subcommand — the json data contract, the deterministic html path, and why an agent with shell access should relay html rather than re-render json |
| 060 |
Register and guards |
Tracking open work through to closure — the full field-line grammar (Wave/Filed-by/Blocks-after/Claimed-by), all five statuses, register list --view kanban — and keeping dormant tests honest about when they last ran |
| 065 |
The forbidden-string gate |
badcode — the mandatory release-blocking scan, why its config lives outside every repo, and how it integrates with relcore |
| 070 |
Releases |
syncver, relcore, gomod — version sync, resumable/journaled/gated releases, and relcore's mandatory badcode/provenance pre-flight |
| 080 |
Staged-work tracking |
addwave and waveprogress — grouping register items into a sequenced, visualized programme |
| 085 |
Cross-project status: board |
Aggregating several local checkouts by invoking each command's own --format json and merging — scope, exit-code behaviour, --definition/axis-configured boards, and what's deliberately not built yet |
| 086 |
Cross-project workspaces |
workspace — joining a shared, git-hosted directory across projects, and filing/resolving/pausing/dropping issues between them |
| 088 |
Provenance: detecting (and sanctioning) edits made outside repoman |
provenance check/sanction — catching a file touched by something other than repoman itself, and every write path's refusal to build on top of it |
| 090 |
Configuration reference |
Every .repoman.json key in one place, cross-referenced to the tool that reads it |
| — |
Cards are for humans vouching. Guards are for machines proving. |
Why a kanban board has no equivalent ceremony for a conversation with an agent — and what enforcing the rule at the point of action looks like instead |