I2462 — UI má každou obrazovku a jeho mesh je graf, jehož uzly otevírají inspektor
Dokončit navigaci majordomus ui podle referencí vlastníka s obrazovkami Command, Capabilities, Deployments a Documentation. Udělat obrazovku Mesh interaktivní: graf strojů, runtimů a relací, každý uzel volitelný do inspektoru, jehož výběr je URL.
HOTOVO vlna 1 · p1 · profil implementation · běží samostatně
Součást development-runtime — The runtime has a development surface.
Cíl
Dokončit navigaci majordomus ui podle referencí vlastníka s obrazovkami Command, Capabilities, Deployments a Documentation. Udělat obrazovku Mesh interaktivní: graf strojů, runtimů a relací, každý uzel volitelný do inspektoru, jehož výběr je URL.
Proč
I2461 (PR #940) dodal povrch a sedm obrazovek. Vlastník požádal o „implementaci každé komponenty a pohledu ze snímků obrazovky, maximálně interaktivní a klikatelné“ (2026-10-11). Reference (campaigns/majordomus-ui-complete-opus-fable-v3-20261011/references) ukazují obrazovky Command, Capabilities, Deployments a Documentation a mesh pack (campaigns/majordomus-mesh-interactive-v5-20261011) žádá, aby byl každý skutečný uzel volitelný a dostupný přes deep link. Data existují: commands.list (s filtrem původu) a executions.list, capabilities.list podle druhu a capabilities.describe, deploy.list a delivery.report (13 s, tedy vlastní panel), objects.list pro funkce a dokumenty, web.surfaces a mesh.peers s runtimy a relacemi.
Aktuální stav
UI ukazuje sedm obrazovek; mesh je tabulka.
Cílový stav
Jedenáct obrazovek v pořadí referencí. Command vypisuje katalog příkazů s tím, co každý mění; jeho karty předávají vlastní filtr původu commands.list a ukazuje provádění, která tento proces spouští. Capabilities ukazuje součty registru, katalogy podle druhu a detail jedné schopnosti (?id=) s jejími vstupními poli a každým povrchem, na kterém je vystavena. Deployments ukazuje deklarovaná nasazení a na vlastní route report dodávky: ověření veřejného webu a fázi každé funkce a co ji blokuje. Documentation ukazuje produktové funkce, dokumenty pod docs/ a každý veřejný povrch. Mesh kreslí stroje, runtimes a relace jako silově řízený graf (relace jako malé listy, popsané při výběru) a ?node= otevře inspektor stroje: jeho runtimes se živostí a posledním tepem, jeho relace s jejich tvrzeními a jeho vlastní události deníku. Neznámý stroj je označen za neznámý. Issues & PRs otevře jeden pull request (?pr=N) z vlastní odpovědi fronty: jeho kontroly s verdikty, důkazy za nimi, jeho důvody, další akci, autorské cesty a faktory pořadí; číslo, které fronta nepozorovala, je označeno za nepozorované. Graphs berou layout a jejich uzly druh. Zde není hotovo: akce nad uzlem (V5 M04, za exekutorem) a řídicí rovina provádění (V4).
Rozsah
- apps/majordomus-cli/src/ui
- share/ui
- .ai/repo/project/issues/I2462.yaml
- docs/MAJORDOMUS_UI.md
- .ai/repo/features/ui.md
Závislosti
Co na tom čeká
- I2470HOTOVO Pull requesty se odbavují v UI: fronta, kterou čtenář zužuje, prohlíží a sleduje až k tomu, na čem každý závisí
- I2477HOTOVO Tvrzení otevře svůj důkaz: co jej rozhoduje, jeho poslední běh, co se od té doby změnilo, jak jej znovu spatřit
- I2478HOTOVO Pravidlo otevře svůj důkaz: co říká, testy, které ho dokládají, co chybí a pravidla kolem něj
- I2483HOTOVO UI se publikuje jako snímek: čte se jednou v publikovaném commitu a web ho nese na /ui
Kritéria přijetí
- /ui/command, /ui/capabilities, /ui/deployments a /ui/docs odpovídají 200 s hero a panely, jejichž zdroje jsou pojmenovány; test vykreslí každou obrazovku proti skutečnému registru
- /ui/capabilities?id=plan.status ukazuje deklarovaná vstupní pole té schopnosti a její vystavení v API, CLI a MCP
- /ui/mesh kreslí každý stroj, runtime a relaci, které mesh runtime zná, jako graf nad záložní tabulkou, a /ui/mesh?node=<name> otevře inspektor daného stroje; neznámé jméno řekne, že je neznámé
- Zpráva o doručení je samostatná panelová routa a nikdy nezdržuje obrazovku Deployments
- /ui/work?pr=<n> otevře detail toho pull requestu z odpovědi integrační fronty, s každou kontrolou a jejím verdiktem; řádek fronty na něj odkazuje; číslo, které fronta nepozorovala, to řekne
Validace
- cargo test --lib ui::
- cargo test --test ui_surface
- scripts/ci/cockpit-projection-check --ui-integrity
Požadované důkazy
- ui_every_screen_renders_test
- ui_mesh_inspector_screenshot
Důkazy
| pokrývá | typ | command | výsledek | u commitu |
|---|---|---|---|---|
| ui_every_screen_renders_test | ci | cargo test --lib ui::tests (validate run 38223440282 na 722228ef3c, vrchol v0.21.0) | every_screen_renders_its_hero_and_panels a every_screen_is_answered_and_every_answered_route_is_a_screen_or_a_panel ok; 106 testů ui:: ok | 722228e |
| ui_mesh_inspector_screenshot | artifact | node scratchpad/shots.mjs (Playwright Chromium, tmavý) proti majordomus serve 0.21.0 sestavenému z perf/the-ui-answers-at-once d24107bd88 | /ui/mesh?node=641bdb94 při 1440x900: uzel, jeho 7 runtime se živostí, relace a události; bez přetečení, bez chyb stránky | 722228e |
Časová osa
- zahájeno
- 2026-10-12T11:00:05Z
- ověřeno
- 2026-10-12T11:00:10Z
- dokončeno
- 2026-10-12T11:00:20Z
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.
Kanonický záznam: .ai/repo/project/issues/I2462.yaml. Zpětně ho přečtete pomocí majordomus plan show I2462.