Issue #39: Machines details page — uuid-keyed detail route, host selectors, tabbed capabilities #49

Merged
EduarD3V merged 2 commits from issue/39-machines-details into agent-develop 2026-10-07 06:41:02 +02:00
Collaborator

--body

--body
MachineRow.id is now a stable uuid derived from <organizationId>|<canonical host>
(four FNV-1a lanes -> 128 bits). Pure arithmetic: same id in every component, no
schema column, org in the seed keeps same-named hosts in different orgs apart.
api-cache snapshot + machine SSE patch derive the same id; hostname stays the key
the middleware HTTP API uses.

Refs #39 UC-FE-65 UC-FE-66 UC-FE-68
Every host selector now links /agents/machines/<id> where id is the derived
machine uuid: agents inspector, machines list selection + URL, groups members and
candidates, fleet hex map (click and sr-only nav), pinned shortcuts, dashboard
machine widget, and control chat. The detail route directory is [id]; the page
resolves the id to a hostname from the live cache behind $ready, so the first
paint never 404s, then calls the hostname-keyed API unchanged. Peers match on
canonical host. Overview + Capabilities cards become one full-width panel with
overview / Exec / disks tabs (ui/tabs, variant=line).

UC-FE-66 rewritten (id route, tabs, ready gate); UC-FE-65 step 1/2/6 + extension
2a + postcondition; UC-FE-68 note; UC-FE-85 step 3 and nav_selenium.py discover
the machine detail href from the list instead of the demo-01 literal.

Refs #39 UC-FE-65 UC-FE-66 UC-FE-68 UC-FE-85
EduarD3V merged commit 723a69dec4 into agent-develop 2026-10-07 06:41:02 +02:00
Sign in to join this conversation.
No description provided.