Documentation
¶
Overview ¶
Command bench-cold measures mache's cold path — the first `mache build` on a repo — against the committed envelope in testdata/snapshots/cold-budget.toml.
Bead mache-2de6c0. The framing is a person who just downloaded mache and pointed it at their code on a 4-core/16 GB laptop with an IDE already open. Setup-to-usage is a product property, and until it is measured on a pinned corpus with the numbers committed, "it's fast enough" is an opinion.
Two phases are measured:
leyline parse — the intermediate artifact, measured on its own so the
parse half of the cost is attributable
mache build — what the user actually runs; it re-runs the parse
internally, so its wall time INCLUDES the phase above
and the two are NOT additive
The gate is on bytes, not milliseconds: peak RSS and both artifact sizes are hard limits, wall time is reported against an advisory target. Bytes are comparable across machines; milliseconds are not.
Usage:
task bench:cold # pinned corpus = this repo at HEAD go run ./tools/bench-cold --corpus /path/to/repo go run ./tools/bench-cold --json
Click to show internal directories.
Click to hide internal directories.