Add notification bell, settings modal, and context-sensitive footer
Lint / Python (flake8) (push) Successful in 40s
Lint / JS (eslint) (push) Successful in 9s
Security / Python Security (bandit) (push) Failing after 1m11s
Test / Python Tests (pytest) (push) Successful in 1m3s
Lint / Notify on failure (push) Has been skipped
Lint / Deploy (push) Successful in 2s
Lint / Python (flake8) (push) Successful in 40s
Lint / JS (eslint) (push) Successful in 9s
Security / Python Security (bandit) (push) Failing after 1m11s
Test / Python Tests (pytest) (push) Successful in 1m3s
Lint / Notify on failure (push) Has been skipped
Lint / Deploy (push) Successful in 2s
- Notification bell in header polls /api/status and shows active alerts with severity-colored dots; badge counts unread items via localStorage - Settings modal ([ * ] CFG) controls auto-refresh interval (15s/30s/1m/5m/off) persisted to localStorage and wired into lt.autoRefresh on all pages - Context-sensitive footer hints: Dashboard shows REFRESH + SUPPRESS, Link Debug shows REFRESH, all pages show CFG + HELP - Added S key (quick suppress) and * key (settings) shortcuts - ⌘K affordance button added to header-right - R key now uses lt.autoRefresh.now() so it works on any page - refreshAll() pushes fresh events to notification bell on each poll Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -53,6 +53,7 @@ async function refreshAll() {
|
||||
const status = statusResult.value;
|
||||
updateEventsTable(status.events || [], status.total_active);
|
||||
updateStatusBar(status.summary || {}, status.last_check || '', status.daemon_ok);
|
||||
if (typeof window.gandalfNotifUpdate === 'function') window.gandalfNotifUpdate(status.events || []);
|
||||
} else {
|
||||
showToast('Status data unavailable', 'warning');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user