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.

I3184 — One command lists every Majordomus runtime of this user on this host, with no checkout open

Add a host-scoped read that enumerates the servers of every repository this user runs (from their leases, found through a disposable per-user cache of checkout roots beside node.json and, for runtimes that predate it, the process table), with version, repository identity, checkout, port and node, and serve it from the CLI without a server and from any running server's API.

BLOKOVÁNO vlna 0 · p3 · profil implementation · bezpečné paralelně

Part of the-host-knows-its-runtimes — A host knows every Majordomus runtime it runs, with no project open.

Blocked. This issue cannot start until milestone:the-host-knows-its-runtimes is done. The status is derived from that, not declared.

Cíl

Add a host-scoped read that enumerates the servers of every repository this user runs (from their leases, found through a disposable per-user cache of checkout roots beside node.json and, for runtimes that predate it, the process table), with version, repository identity, checkout, port and node, and serve it from the CLI without a server and from any running server's API.

Proč

Slice 01 of the 10-12 resident design, without the daemon: a host inventory is the first thing a resident would do, and it needs no process of its own. Critique 10-18: an index that servers register in would be a new registry (project.no-new-nouns, ADR 0199, the milestone's non_scope), and it would miss released runtimes that never register. Proposed in ADR 0199 (A hub is a declared host service; a working checkout's server stays a client's child) (proposed; it carries no authority until the owner accepts it). Sources: chatgpt-majordomus:c240#5.

Aktuální stav

Verified: majordomus server lists one repository's servers; leases are per checkout under .ai/local/state; no per-user index exists.

Cílový stav

majordomus runtimes --host answers in a directory outside every repository.

Rozsah

  • apps/majordomus-cli/src/capability/builtin/server.rs
  • apps/majordomus-cli/src/lease.rs
  • apps/majordomus-cli/src/mesh/identity.rs
  • docs/MCP.md
  • docs/MESH.md
  • README.md

Mimo rozsah

  • Starting or stopping another repository's server
  • Holding peers or nodes: mesh/registry.rs stays the only holder of peers
  • Any index row treated as truth rather than as a cache of a lease

Závislosti

Žádné. Tento úkol je kořenem grafu.

Co na tom čeká

Kritéria přijetí

  • Two servers of two repositories on one host are both listed from /tmp
  • A stale index entry whose process is gone is listed stale, never as live
  • The index is a disposable cache of checkout roots in the directory beside node.json ($XDG_STATE_HOME/majordomus, else ~/.local/state/majordomus, per mesh/identity.rs). Every row is re-read from that checkout's lease, and deleting the cache loses nothing but speed.
  • Runtimes that predate the index (0.29.0 and earlier) are found from the process table by executable path, the way scripts/reap-orphans identifies serve and mcp processes, and are listed with the version their executable reports.
  • The case starts one server that never writes to the index and proves it is listed.
  • In the same change, the intent criterion host-lists-its-runtimes records evidence: test with a ref to the case allocated with scripts/case-numbers.
  • README's 'not a daemon' statement stays true and says the inventory needs no process of its own.

Validace

  • majordomus plan validate
  • cargo test --lib lease

Požadované důkazy

  • case_a_host_lists_its_runtimes

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

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