Files
git.stella-ops.org/docs/features/unchecked/web/display-preferences-service.md

2.2 KiB

Display Preferences Service (User Setting Toggles)

Module

Web

Status

IMPLEMENTED

Description

Configurable display settings (showRuntimeOverlays, enableTraceExport, showRiskLine, showSignedOverrideIndicators, graph settings) persisted to localStorage with auto-sync.

Implementation Details

  • Feature directory: src/Web/StellaOps.Web/src/app/features/triage/services/
  • Services:
    • advisory-ai (src/Web/StellaOps.Web/src/app/features/triage/services/advisory-ai.service.ts)
    • binary-diff-evidence (src/Web/StellaOps.Web/src/app/features/triage/services/binary-diff-evidence.service.ts)
    • diff-evidence (src/Web/StellaOps.Web/src/app/features/triage/services/diff-evidence.service.ts)
    • display-preferences (src/Web/StellaOps.Web/src/app/features/triage/services/display-preferences.service.ts)
    • evidence-tab (src/Web/StellaOps.Web/src/app/features/triage/services/evidence-tab.service.ts)
    • gating (src/Web/StellaOps.Web/src/app/features/triage/services/gating.service.ts)
    • keyboard-shortcuts (src/Web/StellaOps.Web/src/app/features/triage/services/keyboard-shortcuts.service.ts)
    • reach-graph-slice (src/Web/StellaOps.Web/src/app/features/triage/services/reach-graph-slice.service.ts)
    • reachability (src/Web/StellaOps.Web/src/app/features/triage/services/reachability.service.ts)
    • runtime-evidence (src/Web/StellaOps.Web/src/app/features/triage/services/runtime-evidence.service.ts)
  • Source: SPRINT_20260112_004_FE_risk_line_runtime_trace_ui.md

E2E Test Plan

  • Setup:
    • Log in with a user that has appropriate permissions
    • Navigate to the relevant page/section where this feature appears
    • Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
  • Core verification:
    • Verify settings form loads with current values pre-populated
    • Verify changes can be saved and persist across page reloads
    • Verify validation prevents saving invalid configurations
  • 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)