I4006 — Machine.slot is a counting machine-wide slot for heavy work
machine.slot: a counting slot, N and the disk floor read from rule data, taken by pre-push, coverage and builds; a full queue answers a bounded wait naming its holders.
PŘIPRAVENO vlna 0 · p1 · profil implementation · bezpečné paralelně
Připraveno. Všechny závislosti jsou hotové, takže majordomus plan start I4006 bude přijato.
Cíl
machine.slot: a counting slot, N and the disk floor read from rule data, taken by pre-push, coverage and builds; a full queue answers a bounded wait naming its holders.
Proč
Heavy work serialises on one lock or starves on it; nine sessions make the machine the bottleneck and a waiter cannot tell who holds it.
Aktuální stav
Not built: this issue is planned by the milestone a-session-proceeds-through-the-mesh and nothing of it exists.
Cílový stav
The acceptance criteria below hold and case 4006 proves them.
Rozsah
- apps/majordomus-cli/src/capability/builtin
- apps/majordomus-cli/src/machine
- docs/MACHINE.md
- test/cases/4006_machine_slot_shares_heavy_work.sh
- .ai/repo/project/issues/I4006.yaml
Závislosti
Žádné. Tento úkol je kořenem grafu.
Kritéria přijetí
- At most N holders run at once and below the disk floor none starts
- A full queue answers within a deadline naming each holder, never waits unbounded
- A holder that died releases its slot by deadline, and the slot adds no new store
Validace
- env -u MAJORDOMUS_SHARE -u MAJORDOMUS_HTTP_HOST -u MJ_ROOT bash test/run.sh 4006_machine_slot_shares_heavy_work
Požadované důkazy
- case_4006_machine_slot_shares_heavy_work
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
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.
Canonical record: .ai/repo/project/issues/I4006.yaml. Read it back with majordomus plan show I4006.