Maintainer guide¶
Runbooks for the people who keep the platform running. Each page is one task, in the order a maintainer usually meets them; the Developer guide covers the code, the Reference every flag.
| Task | Page |
|---|---|
| Understand the repositories, submodules and the uv workspace | Repository topology |
| Ship a change to an existing family (instances, sidecars, README, changelog) | Update a benchmark family |
| Replace a best-known solution, stamp an optimality proof, refresh route geometry | Update or submit a BKS |
| Run many solver runs and turn the winners into BKS with provenance | Run a BKS campaign |
| Bring a new family or collection online | Add a benchmark family |
| Extend the contract with a problem type or an objective | Add a problem type or objective |
| Generate a collection with the tools, or convert an external distribution | Generate or convert a family |
| Build the website locally or for a release, with its caches | Build the website |
| Put a build in production, roll it back, check health | Deploy |
| Cut a versioned release with archives, tags, PyPI and citation records | Cut a release |
| Understand the history ledger and snapshot inventories | Publication history and state |
| Fix the things that have already gone wrong once | Troubleshooting |
The three invariants
Every runbook here protects the same three things: the checker is the authority (no cost is stored that it did not compute), every published byte is reproducible (sorted JSON, sha256 pins, deterministic archives), and the live site is never written in place (staging builds, atomic release swap).