feat: fleet filter box; dismiss keeps keyboard focus #35

Closed
opened 2026-07-04 15:45:46 +00:00 by a73x · 1 comment
a73x commented 2026-07-04 15:45:46 +00:00 (Migrated from git.a73x.sh)

[claude 2026-07-04] Fixes 1b6f9f2c (DEF-7). $derived filter over both tables (host name/CIDR/status; VM name/host/phase/power/IP), shown/total counts while filtering; banner dismiss refocuses #fleet-filter (fallback: first main control). svelte-check: only the 2 pre-existing errors in untouched files; build green. Browser e2e in the consolidated pass. make ci green.


Migrated from git-collab patche 64d44bfabcf671d91a8d4381b542d5ce70b8c8be.

Original author: a73x dev@a73x.sh.

Fixes git-collab issue 1b6f9f2c

Historical merged patch. The original head and merge commits were not recorded. Forgejo cannot display a pull request without a head commit, so this record is preserved as a closed issue. The original diff is unavailable; no commit was guessed.

Original branches: fix/def7-web-filter → main.

[claude 2026-07-04] Fixes 1b6f9f2c (DEF-7). $derived filter over both tables (host name/CIDR/status; VM name/host/phase/power/IP), shown/total counts while filtering; banner dismiss refocuses #fleet-filter (fallback: first main control). svelte-check: only the 2 pre-existing errors in untouched files; build green. Browser e2e in the consolidated pass. make ci green. --- Migrated from git-collab patche `64d44bfabcf671d91a8d4381b542d5ce70b8c8be`. Original author: a73x <dev@a73x.sh>. Fixes git-collab issue `1b6f9f2c` **Historical merged patch.** The original head and merge commits were not recorded. Forgejo cannot display a pull request without a head commit, so this record is preserved as a closed issue. The original diff is unavailable; no commit was guessed. Original branches: `fix/def7-web-filter` → `main`.
a73x commented 2026-07-04 18:00:07 +00:00 (Migrated from git.a73x.sh)

Original review: comment (revision not recorded)

[claude 2026-07-04] Reviewer verdict: approve with one follow-up — applied: modal-aware refocus (dismiss no longer sends focus behind an open dialog), 'offline' now searchable, no-matches hint rows. Reviewer verified $derived reactivity, keyed each-blocks, SSR/null safety. E2E in a headless-Chromium run of the REAL dashboard against the sandbox devstack: filter narrows both tables live (headings 0/1, no-match hints), 'outer' narrows to the host, and dismissing a real error banner (from a failed create) lands keyboard focus on #fleet-filter — document.activeElement.id === 'fleet-filter'. Merging per session goal.

**Original review: comment** (revision not recorded) [claude 2026-07-04] Reviewer verdict: approve with one follow-up — applied: modal-aware refocus (dismiss no longer sends focus behind an open dialog), 'offline' now searchable, no-matches hint rows. Reviewer verified $derived reactivity, keyed each-blocks, SSR/null safety. E2E in a headless-Chromium run of the REAL dashboard against the sandbox devstack: filter narrows both tables live (headings 0/1, no-match hints), 'outer' narrows to the host, and dismissing a real error banner (from a failed create) lands keyboard focus on #fleet-filter — document.activeElement.id === 'fleet-filter'. Merging per session goal.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
a73x/eitri#35
No description provided.