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.

I3390 — One conservation reading counts completions per issue, unreachable task commits, stranded claims and multiply-consumed handovers, each violation with its records

Add apps/majordomus-cli/src/economics/conservation.rs and a conservation section in economics tasks: over a window, per issue the count of task.finished with outcome completed (a second is a duplicate completion); every commit on a task's branch inside its span reachable from a branch or refs/rescue/ ref (else lost); every exclusive claim in mesh state released, expired or held by a live session (else stranded); every handover whose consumed_by holds more than one session. Each violation names its ledger lines, shas, claim or handover ids.

BLOKOVÁNO vlna 1 · p1 · profil implementation · bezpečné paralelně

Part of recovery-from-injected-faults-is-proven — A killed worker, a cut connection and a conflict are injected on purpose, and recovery is proven without lost work or duplicate completion.

Blocked. This issue cannot start until I3376 is done. The status is derived from that, not declared.

Cíl

Add apps/majordomus-cli/src/economics/conservation.rs and a conservation section in economics tasks: over a window, per issue the count of task.finished with outcome completed (a second is a duplicate completion); every commit on a task's branch inside its span reachable from a branch or refs/rescue/ ref (else lost); every exclusive claim in mesh state released, expired or held by a live session (else stranded); every handover whose consumed_by holds more than one session. Each violation names its ledger lines, shas, claim or handover ids.

Proč

T5 of the owner's report of 2026-10-19 asks to prove recovery without loss or duplicate completion. Nothing counts either today; the mesh already keeps consumed_by and handover digests, so the reading only folds existing records.

Aktuální stav

apps/majordomus-cli/src/mesh/state.rs:274 and :313 carry consumed_by; mesh/handover.rs:15 says materializing twice writes one file; share/events.yaml:152-158 declares session.recovered. No reading counts completions per issue.

Cílový stav

economics tasks --format json carries conservation with zero violations on a clean fixture and each violation named on a broken one.

Rozsah

  • apps/majordomus-cli/src/economics
  • apps/majordomus-cli/src/economics/mod.rs
  • apps/majordomus-cli/tests/economics.rs
  • docs/ECONOMICS.md
  • docs/generated/openapi.json
  • docs/generated/openapi.yaml
  • site/data/generated/openapi.json

Mimo rozsah

  • Repairing a violation
  • Lease-based assignment (I3198)

Závislosti

Co na tom čeká

Kritéria přijetí

  • Fixtures produce each violation kind, each naming its records
  • A clean fixture reads zero violations
  • Two ledgers each finishing the same issue completed read one duplicate completion
  • A commit reachable only from refs/rescue/ is not lost

Validace

  • cargo test --manifest-path apps/majordomus-cli/Cargo.toml --test economics
  • majordomus generate --check

Požadované důkazy

  • test_conservation_violations

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/I3390.yaml. Read it back with majordomus plan show I3390.

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