Files
2026-01-05 16:02:11 +02:00

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:

  1. Filter Preset Pills - Always-visible filter chips with URL synchronization for shareable filter states
  2. Patch Map Explorer - Interactive heatmap showing vendor backport coverage across fleet

Key Deliverables

Filter Presets (4 tasks)

  • Extended TriageFilters with noise-gating fields (runtimeExecuted, environment, backportProved, semverMismatch)
  • Created 7 standard presets: actionable, prod-runtime, backport-verified, critical-only, needs-review, vex-applied, all-findings
  • FilterUrlSyncService for bidirectional URL synchronization
  • FilterPresetPillsComponent with horizontal scrolling and copy URL

Patch Coverage Backend (3 tasks)

  • Added 3 interface methods to IDeltaSignatureRepository
  • Implemented PostgreSQL aggregation queries with CTEs
  • Created PatchCoverageController with 3 REST endpoints:
    • GET /api/v1/stats/patch-coverage - Aggregated coverage by CVE
    • GET /api/v1/stats/patch-coverage/{cveId}/details - Function-level breakdown
    • GET /api/v1/stats/patch-coverage/{cveId}/matches - Paginated affected images

Patch Map Frontend (4 tasks)

  • Created patch-coverage.models.ts and patch-coverage.client.ts
  • Created PatchMapComponent with heatmap, details, and matches views
  • Added route /analyze/patch-map and navigation entry
  • Linked from binary-evidence-panel header

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)