40 lines
1.6 KiB
Markdown
40 lines
1.6 KiB
Markdown
# 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
|