53 lines
2.8 KiB
Markdown
53 lines
2.8 KiB
Markdown
# 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
|
|
|
|
## Recheck (run-003)
|
|
- Date (UTC): 2026-02-11T10:08:09Z
|
|
- Status: PASSED (strict Tier 2 UI replay)
|
|
- Tier 2 evidence: docs/qa/feature-checks/runs/web/display-preferences-service/run-003/tier2-ui-check.json
|
|
- Notes: Verified via /qa/web-recheck display preference interaction and event assertions.
|