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.

I3143 — Each provider lifecycle event leaves a typed receipt written by the domain before any guard can return early

ADR 0047 step 3: the provider hook shims call the domain instead of capture session, and every start, compact, end and prompt event writes a received or failed receipt with its diagnostic.

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

Part of the-session-domain-is-written-once — The session lifecycle is written by the typed domain, and the shell only parses and renders.

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

Cíl

ADR 0047 step 3: the provider hook shims call the domain instead of capture session, and every start, compact, end and prompt event writes a received or failed receipt with its diagnostic.

Proč

The six-day outage of 2026-09-05 was three guards that refused correctly, wrote to stderr and returned 0 (case 130). The inventory records that mj_capture_session_start returns 0 on every failure path. Sources: chatgpt-majordomus:c109#3.

Aktuální stav

.claude/hooks/majordomus-session-{start,compact,end} exec bin/majordomus capture session --event ...; lib/capture.sh decides; the receipt is already written before any guard (mj_capture_session_receipt) and case 408 holds that it is provider neutral.

Cílový stav

The shims exec one domain command; a silent early return is impossible; a failed event shows in health.

Rozsah

  • .claude/hooks
  • lib/capture.sh
  • apps/majordomus-cli/src/session
  • apps/majordomus-cli/src/capability/builtin/lifecycle.rs
  • share/events.yaml

Mimo rozsah

  • Changing the provider's fail-open contract: a hook still never blocks the provider

Závislosti

Co na tom čeká

Kritéria přijetí

  • A forced failure in each event writes a failed receipt naming the cause
  • health reports a failed receipt
  • The shims stay generated and fail-open

Validace

  • bash test/run.sh --no-skips 54_session_lifecycle_hooks 408_a_receipt_is_provider_neutral 130_lifecycle_survives_a_stale_task

Požadované důkazy

  • case_every_event_leaves_a_receipt

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

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