Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

I0823 — majordomus bench: cíle odvozené z registru příkazů

Přidat příkaz bench: každý veřejný příkaz v share/commands.yaml je cíl, spouštěný proti zahoditelnému nainstalovanému repozitáři, s warmupem a vzorky z politiky, hlásící min, p50, p90, p95, p99, max, průměr a směrodatnou odchylku na cíl a režim.

HOTOVO vlna 1 · p0 · profil implementation · běží samostatně

Součást M004 — Výkon je spustitelný důkaz a horká cesta nedělá žádnou kanonickou práci dvakrát.

Cíl

Přidat příkaz bench: každý veřejný příkaz v share/commands.yaml je cíl, spouštěný proti zahoditelnému nainstalovanému repozitáři, s warmupem a vzorky z politiky, hlásící min, p50, p90, p95, p99, max, průměr a směrodatnou odchylku na cíl a režim.

Proč

Ručně vedený seznam měření výkonu zastará v den, kdy se přidá příkaz; registr povrch už zná.

Aktuální stav

Neexistuje žádný příkaz benchmark; ad hoc měření času žije v shellech.

Cílový stav

bench, bench <command>, --mode cold|warm|both, --samples, --warmup, --format json, --list; JSON nese schéma majordomus/benchmark-result/v1, commit, příznak dirty, platformu, build bashe a profil měření výkonu.

Rozsah

  • lib/bench.sh
  • bin/majordomus
  • share/commands.yaml
  • share/allow/policy.txt
  • share/skeleton/policy.yaml
  • .ai/repo/policy.yaml
  • docs/CLI.md
  • test/cases/79_bench_command.sh
  • test/fixtures/commands/bench.json

Mimo rozsah

  • Měření výkonu Rust executable
  • Měření příkazů, které mutují repozitář mimo jednorázovou fixturu

Závislosti

Co na tom čeká

Kritéria přijetí

  • bench --list vypíše přesně veřejné příkazy registru
  • Běh zaznamenává oba režimy zvlášť s osmi statistikami
  • Případ 79 dokazuje, že seznam cílů následuje mutaci registru
  • Příkaz je registrován, pokryt a zdokumentován jako každý jiný příkaz

Validace

  • bash test/run.sh 79_bench_command
  • bin/majordomus bench --format json

Požadované důkazy

  • bench_targets_derived

Důkazy

pokrývátypcommandvýsledeku commitu
bench_targets_derivedtestbash test/run.sh 79_bench_commandlib/bench.sh odvozuje své cíle z mj_cmdreg_public minus sebe sama a svůj scénář pro každý cíl z prvního scénáře test/fixtures/commands/<command>.json; případ 79 ověřuje, že --list se rovná veřejné množině registru, že veřejný příkaz přidaný do kopie registru se objeví v --list kopie bez úpravy harnessu, že běh jen pro čtení zaznamená jeden studený a N teplých výsledků s count, min, p50, p90, p95, p99, max, mean a stddev v pořadí, a že cíl měnící stav zaznamená jen studené rozdělení nad čerstvými repozitáři; bench je registrován v share/commands.yaml, rozesílán bin/majordomus, demonstrován test/fixtures/commands/bench.json a zdokumentován v docs/CLI.md a docs/SCHEMAS.md; případy fixture a pokrytí 30, 31, 34 a 15 procházejínext

Riziko

Příkazy, které čtou stdin nebo potřebují aktivní úlohu, potřebují fixturu pro každý cíl; fixtury pod test/fixtures/commands už popisují jeden scénář na příkaz a znovu se používají.

Časová osa

zahájeno
2026-09-05T03:33:10Z
ověřeno
2026-09-05T03:33:10Z
dokončeno
2026-09-05T03:33:10Z

Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.

Kanonický záznam: .ai/repo/project/issues/I0823.yaml. Načtěte ho zpět pomocí majordomus plan show I0823.

Prohledává názvy a popisy všech stránek, které tento web publikuje.