2.6 KiB
2.6 KiB
Sprint Completion Summary - 2026-01-03
SPRINT_20260103_001_FE - Filter Presets & Patch Map Explorer
Status: ✅ COMPLETE (All 11 tasks)
Overview
Implemented two UX polish features for the vulnerability explorer:
- Filter Preset Pills - Always-visible filter chips with URL synchronization for shareable filter states
- Patch Map Explorer - Interactive heatmap showing vendor backport coverage across fleet
Key Deliverables
Filter Presets (4 tasks)
- Extended
TriageFilterswith noise-gating fields (runtimeExecuted, environment, backportProved, semverMismatch) - Created 7 standard presets: actionable, prod-runtime, backport-verified, critical-only, needs-review, vex-applied, all-findings
FilterUrlSyncServicefor bidirectional URL synchronizationFilterPresetPillsComponentwith horizontal scrolling and copy URL
Patch Coverage Backend (3 tasks)
- Added 3 interface methods to
IDeltaSignatureRepository - Implemented PostgreSQL aggregation queries with CTEs
- Created
PatchCoverageControllerwith 3 REST endpoints:GET /api/v1/stats/patch-coverage- Aggregated coverage by CVEGET /api/v1/stats/patch-coverage/{cveId}/details- Function-level breakdownGET /api/v1/stats/patch-coverage/{cveId}/matches- Paginated affected images
Patch Map Frontend (4 tasks)
- Created
patch-coverage.models.tsandpatch-coverage.client.ts - Created
PatchMapComponentwith heatmap, details, and matches views - Added route
/analyze/patch-mapand navigation entry - Linked from
binary-evidence-panelheader
Files Created
| Location | Files |
|---|---|
| Frontend | filter-preset.models.ts, filter-preset-pills.component.ts, filter-url-sync.service.ts, patch-coverage.models.ts, patch-coverage.client.ts, patch-map.component.ts |
| Backend | PatchCoverageController.cs |
Files Modified
| File | Change |
|---|---|
evidence-subgraph.models.ts |
Added noise-gating fields |
app.routes.ts |
Added patch-map route |
navigation.config.ts |
Added Patch Map nav entry |
binary-evidence-panel.component.ts |
Added Patch Map link |
IDeltaSignatureRepository.cs |
Added 3 methods + 6 DTOs |
DeltaSignatureRepository.cs |
Implemented aggregation queries |
BinaryIndex.WebService.csproj |
Added Persistence project reference |
Decisions
- CSS Grid for heatmap (accessibility compliance)
- Severity-based color coding (critical=red, high=orange, medium=yellow, low=blue, safe=green)
Build Status
- Backend: ✅ Builds successfully (0 errors)
- Frontend: ⚠️ Pre-existing errors in other components (not sprint-related)