# Display Preferences Service (User Setting Toggles) ## Module Web ## Status VERIFIED ## 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) ## Verification - Run: `docs/qa/feature-checks/runs/web/display-preferences-service/run-001/` - Tier 0 (source): pass (`tier0-source-check.json`) - Tier 1 (build/tests): pass (`tier1-build-check.json`) - Tier 2 (behavior): pass (`tier2-e2e-check.json`) - Verified on (UTC): 2026-02-10