# SBOM Diff Side-by-Side Panel ## Module Web ## Status VERIFIED ## Description Side-by-side visual comparison panel showing packages added/removed/changed between two SBOM versions, with highlighted risk changes for before/after risk state comparison. ## Implementation Details - **Feature directory**: `src/Web/StellaOps.Web/src/app/features/sbom-diff/` - **Routes**: `sbom-diff.routes.ts` - **Components**: - `sbom-diff-view` (`src/Web/StellaOps.Web/src/app/features/sbom-diff/components/sbom-diff-view/sbom-diff-view.component.ts`) - **Services**: - `sbom-diff` (`src/Web/StellaOps.Web/src/app/features/sbom-diff/services/sbom-diff.service.ts`) - **Models**: - `src/Web/StellaOps.Web/src/app/features/sbom-diff/models/sbom-diff.models.ts` - **Source**: SPRINT_20251226_004_FE_risk_dashboard.md ## E2E Test Plan - **Setup**: - [ ] Log in with a user that has appropriate permissions - [ ] Navigate to `/sbom/diff` - [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed) - **Core verification**: - [ ] Verify the panel/drawer opens on trigger (click, keyboard shortcut) - [ ] Verify the panel displays the correct detail data for the selected item - [ ] Verify the panel can be closed (X button, Escape key, backdrop click) - **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/sbom-diff-side-by-side-panel/run-001/` - Date (UTC): 2026-02-11