feat(ui): Fleet Pair / Revoke spire UI (#9/#12) #25
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/fleet-pair-ui"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Operator-facing Fleet UI for the pairing/revoke endpoints (now both on
mainvia #21 + #23).What it adds (Machines tab)
paired(green, paired-at tooltip) /not paired.qr_code_2) → dialog:VITE_RELAY_URL) + optional token lifetime (hours) (duration_hours; blank = non-expiring).POST /machines/{id}/pair→ renders the returnedseed_urlas a<lnbits-qrcode>+ copy button, shows the bunker-minted spire npub. Re-pair relabels + issues a fresh seed.machine_npub ← spire_pubkey_hex,paired_at).link_off, shown only when paired) → confirm →POST /machines/{id}/revoke→ updates the row, reportsrevoked_count(≥1= access cut /0= spire never connected).Reviewer notes
.prettierrc, no self-closing-tag violations; 210 backend tests unaffected.VITE_RELAY_URL). Could auto-prefill later if we expose the instance's nostrrelay.🤖 Generated with Claude Code
Operator-facing front for POST /machines/{id}/pair + /revoke (#21/#23): - Pairing chip per machine row (paired / not-paired + paired-at tooltip). - 'Pair' (qr_code_2) opens a dialog -> relays + optional duration_hours -> POST /pair -> renders the seed_url as <lnbits-qrcode> + copy, shows the bunker-minted spire npub. Re-pair relabels. - 'Revoke' (link_off, shown when paired) -> confirm -> POST /revoke -> updates the row, reports revoked_count (>=1 cut / 0 never-bound). - Row reflects the bunker-minted identity immediately (machine_npub <- spire_pubkey_hex, paired_at). Quasar-UMD conventions: explicit close tags, ${ } delimiters, :style. JS syntax-checked, conforms to .prettierrc; 210 backend tests unaffected. Needs a manual browser smoke (superuser-gated page). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>