Files
ss-tools/specs/026-dashboard-health-windows/ux_conformance_phase5.md
2026-03-10 12:00:18 +03:00

2.0 KiB

UX Conformance Verification: Phase 5 (Quick Navigation and Integrations)

Feature: Dashboard Health Windows (026) Phase: 5 Date: 2026-03-10

1. Sidebar Badge Integration (T026)

  • Requirement: Red badge [N🔴] next to "Dashboards" menu item.
  • Implementation:
    • Added failingCount derived store in frontend/src/lib/stores/health.js.
    • Updated Sidebar.svelte to render a red numeric badge when isExpanded is true and failingCount > 0.
    • Added a red dot indicator on the icon when isExpanded is false (collapsed sidebar) to maintain visibility.
    • Added onMount refresh logic with 5-minute interval.
  • UX Match: Matches ux_reference.md section 3 (Dashboard Health Center).

2. AI Assistant Support (T027)

  • Requirement: Resolve queries about "failing dashboards" and provide deep links.
  • Implementation:
    • Added get_health_summary intent to backend/src/api/routes/assistant.py.
    • Implemented regex-based parsing for "здоровье", "health", "ошибки", "failing", "проблемы".
    • Added get_health_summary to _SAFE_OPS for immediate execution.
    • Dispatcher calls HealthService.get_health_summary and formats a detailed response.
    • Added AssistantAction for "Открыть Health Center" and individual report links for failing dashboards.
  • UX Match: Matches ux_reference.md section 3 (Chat Assistant Interaction).

3. Technical Standards Compliance

  • Semantics: Followed [DEF:...] patterns in health.js and assistant.py.
  • RBAC: get_health_summary intent is protected by plugin:migration:READ permission, consistent with the Health API.
  • I18n: Sidebar labels use $t (though badge itself is numeric/iconic).

4. Verification Results

  • Frontend: Store correctly fetches data from /api/health/summary. Badge appears/disappears based on fail_count.
  • Backend: Assistant correctly identifies health queries and returns aggregated counts + deep links.

Status: PASS