Změří každý veřejný příkaz registru za studena i za tepla a porovná se základní hodnotou.
Cíle jsou veřejné příkazy share/commands.yaml a nic jiného: příkaz přidaný do registru je cílem od té chvíle a harness nikdy neměří sám sebe. Každý cíl běží v jednorázovém repozitáři. Je-li přítomna vlastní sada nástroje, scénářem je první scénář fixture příkazu pod test/fixtures/commands/, takže měří se to, co web předvádí a sada provádí; jinak je to holý příkaz v nainstalovaném repozitáři.
Příkaz jen pro čtení se spustí jednou za studena, poté benchmark.warmupkrát bez vzorkování a poté benchmark.sampleskrát za tepla, vše v jednom repozitáři. Příkaz, který mění stav, dostane pro každý vzorek čerstvý repozitář, takže každý jeho vzorek je za studena a nemá rozdělení za tepla. Vzorek je pouze doba běhu podřízeného procesu podle nástěnných hodin; příprava se do měření nikdy nezapočítává. Každé rozdělení se zaznamenává s počtem, minimem, p50, p90, p95, p99, maximem, průměrem a směrodatnou odchylkou; nic se nezprůměruje do ztracena.
benchzměří každý cíl;bench <command>...jen ty.--listvypíše cíle s jejich třídou a scénářem,--format jsonjako data.--samples <n>,--warmup <n>přepíšou politiku jen pro tento běh;--mode cold|warm|bothvybírá zaznamenané distribuce.--format jsonvypíše běh jako jeden dokument se schématemmajordomus/benchmark-result/v1: id běhu, commit a zda byl strom špinavý, platformu, profil a jeden výsledek na cíl a režim.- Každý běh se zapíše pod
.ai/local/benchmarks/(runs/<run-id>.json,latest.json, jeden řádek na běh vhistory.jsonl), pokud--no-save. To je lokální důkaz: ignorovaný gitem, nikdy základní hodnota. --write-baselinezapíše běh pod.ai/repo/benchmarks/rust/jakobaseline.<platform>.json— jedna základní hodnota na platformu, protože doba porovnávaná mezi stroji porovnává stroje — se schématemmajordomus/benchmark-baseline/v1a vypíše stará a nová p50/p95/p99 pro každý cíl. Odmítne špinavý strom bez--force, protože základní hodnota zaznamenává commit.--checkporovná běh s baseline podbenchmark.regression: pro každý cíl a režim je p50, p95 nebo p99 o více než prahový zlomek nad baselineFAILjmenující metriku, obě hodnoty a práh a příkaz skončí s10. Bez baseline skončí s12; baseline s jiným schématem není srovnatelná a skončí s15.
MJ_TIMING=1 u jakéhokoli příkazu vypíše na stderr fáze a čítače práce daného běhu, čímž se pomalý cíl rozebere na části.
$ majordomus bench --list
command class scenario
init generated-output-mutating fixture fresh
doctor read-only fixture not-wired
...
$ majordomus bench doctor version
command mode status n p50 p95 p99 max scenario
doctor cold ok 1 2711 2711 2711 2711 fixture not-wired
doctor warm ok 10 2640 2790 2790 2790 fixture not-wired
version cold ok 1 41 41 41 41 fixture prints
version warm ok 10 38 45 45 45 fixture prints
slowest by warm p95 (cold where warm does not apply):
doctor p95 2790 ms
version p95 45 ms
run b-20260905T031200Z-9f1c saved as .ai/local/benchmarks/runs/b-20260905T031200Z-9f1c.json
Kód 2 při chybě použití, 12 když pojmenovaný cíl není veřejný příkaz registru, 13 když cíl neproběhl čistě (jeho řádek říká setup-failed nebo návratový kód, který vytvořil), 10, 12 a 15 z --check jako výše.