Files
git.stella-ops.org/docs/features/unchecked/web/reachability-center-ui-view.md

3.0 KiB

Reachability Center UI View

Module

Web

Status

IMPLEMENTED

Description

Reachability Center view showing asset coverage, missing sensors, and stale reachability facts. Implemented with deterministic fixture data; pending official fixture bundle swap from Signals guild.

What's Implemented

  • Existing components:
    • path-viewer (src/Web/StellaOps.Web/src/app/features/reachability/components/path-viewer/path-viewer.component.ts)
    • risk-drift-card (src/Web/StellaOps.Web/src/app/features/reachability/components/risk-drift-card/risk-drift-card.component.ts)
    • poe-drawer (src/Web/StellaOps.Web/src/app/features/reachability/poe-drawer.component.ts)
    • reachability-center (src/Web/StellaOps.Web/src/app/features/reachability/reachability-center.component.ts)
    • reachability-explain-widget (src/Web/StellaOps.Web/src/app/features/reachability/reachability-explain-widget.component.ts)
    • reachability-explain (src/Web/StellaOps.Web/src/app/features/reachability/reachability-explain.component.ts)
    • reachability-why-drawer (src/Web/StellaOps.Web/src/app/features/reachability/reachability-why-drawer.component.ts)
    • witness-page (src/Web/StellaOps.Web/src/app/features/reachability/witness-page.component.ts)
  • Existing services:
    • drift-api (src/Web/StellaOps.Web/src/app/features/reachability/services/drift-api.service.ts)

What's Missing

  • Official fixture bundle swap: Currently using deterministic fixture data; pending official fixture bundle from Signals guild with real reachability data
  • Asset coverage summary: No dashboard-level summary showing percentage of assets with reachability analysis coverage
  • Missing sensors indicator: No visual indicator showing which assets lack runtime observation sensors
  • Stale facts alerting: drift-api.service.ts exists but no visual alerting when reachability facts become stale
  • Unit/E2E test coverage: Components exist but test coverage may be incomplete

Implementation Plan

  • Swap fixture data for live API integration once Signals guild provides official fixture bundle
  • Add asset coverage summary widget to reachability-center component
  • Add missing sensor indicator to risk-drift-card
  • Add stale facts alerting using drift-api service data
  • Add unit and E2E test coverage for all reachability center components

E2E Test Plan

  • Setup:
    • Log in with a user that has appropriate permissions
    • Navigate to /reachability
    • Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
  • Core verification:
    • Verify the component renders correctly with sample data
    • Verify interactive elements respond to user input
    • Verify data is fetched and displayed from the correct API endpoints
  • Edge cases:
    • Verify graceful handling when backend API is unavailable (error state)
    • Verify responsive layout at different viewport sizes
    • Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)