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.

I3139 — The mesh page offers one authorised action through an existing capability, and shows its result from the journal

Offer one mesh action on the live /ui/mesh page, mesh.review.request, written only under the identity the router resolves and refused by the capability without one, once the ADR amending ADR 0126 that decides how a mesh event names its human author is accepted; render its outcome from the journal event it produced rather than from the click.

BLOKOVÁNO wave 5 · p3 · implementation profile · parallel safe

Part of prismatic-lumen — Prismatic Lumen: the owner oversees and moves the whole mesh from one page, which owns nothing.

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

Cíl

Offer one mesh action on the live /ui/mesh page, mesh.review.request, written only under the identity the router resolves and refused by the capability without one, once the ADR amending ADR 0126 that decides how a mesh event names its human author is accepted; render its outcome from the journal event it produced rather than from the click.

Proč

The 2026-10-18 scope cut ends v0.1 with one authorised action and its live result with evidence; operations are classified by effect so that a browser never mutates by accident. Critique of 2026-10-18 (the-page-chooses-the-actions-author): over plain HTTP, session_of in capability/builtin/mesh.rs has no calling session, and the node signs with its own key. The action therefore waits for a resolved identity and for the ADR that names a mesh event's human author. Proposed in ADR 0201 (The persistent runtime is the authority; every operator surface, Lumen included, is a client of it); ADR 0209 (Prismatic Lumen names the owner's mesh-wide view, and it owns no scheduler, event bus, store or API) (proposed; it carries no authority until the owner accepts it). Sources: chatgpt-majordomus:c296#18.

Aktuální stav

majordomus_mesh_review_request and majordomus_mesh_handover_publish exist as tools; the UI offers plan moves on /ui/idd only; web-sign-in owns browser identity.

Cílový stav

One action, mesh.review.request under a resolved identity, live only (disabled with a link in the snapshot), result read back from the journal.

Rozsah

  • apps/majordomus-cli/src/ui/mesh.rs
  • share/ui
  • .ai/repo/adrs/0126-a-caller-beyond-loopback-reads-and-changes-nothing-it-cannot-authenticate.md
  • .ai/repo/adrs/0201-the-persistent-runtime-is-the-authority-every-operator-surface-l.md
  • .ai/repo/adrs/0209-prismatic-lumen-names-the-owner-s-mesh-wide-view-and-it-owns-no.md
  • apps/majordomus-cli/src/capability/builtin/mesh.rs
  • .ai/repo/project/intents
  • .ai/repo/adrs

Mimo rozsah

  • Destructive or deploy actions
  • Actions from the published snapshot
  • Publishing a handover from the page
  • Authorising remote callers beyond loopback (I3192, intent the-mesh-is-operated-from-any-device)

Závislosti

Co na tom čeká

Kritéria přijetí

  • The result shown is the journal's event, not the request's echo
  • The snapshot renders the action disabled with the live link
  • The one action is mesh.review.request; mesh.handover.publish is not offered
  • The action is written only under the identity the router resolves (I1205); with no resolved identity the capability refuses it, and the page never supplies a session or author string
  • Before any code, the ADR amending ADR 0126 that decides how a mesh event names its human author is proposed in this issue and accepted by the owner; I3192 builds on that ADR
  • A named test proves that a request with no resolved identity is refused by the capability, which case 1086's beyond-loopback refusal does not already prove
  • The snapshot renders the action disabled with the live link, checked by test/cases/1092_the_ui_snapshot_holds_every_screen.sh and test/cases/1093_the_ui_snapshot_links_nothing_absent.sh
  • The criterion one-action-reads-its-result-from-the-journal is rebound in .ai/repo/project/intents/the-owner-oversees-the-mesh-from-one-page.yaml to evidence: test with the named test's path

Validace

  • cargo test --lib
  • scripts/ui audit
  • bash test/run.sh 1092_the_ui_snapshot_holds_every_screen
  • bash test/run.sh 1093_the_ui_snapshot_links_nothing_absent

Požadované důkazy

  • test_mesh_action

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

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