feat: add scan history sidebar to Findings page#435
Conversation
utksh1
left a comment
There was a problem hiding this comment.
Thanks for the Findings scan-history idea. This needs changes before merge: it introduces a separate history sidebar inside Findings that duplicates the Scans page/navigation, uses design tokens/classes that do not match the current SecuScan styling, includes a replacement-character separator in the UI, and replaces the findings list with task-result data without preserving existing filters/review state/loading/error handling. Please align it with the existing design/data flow and add focused tests for selecting a scan.
- Fix design tokens in ScanHistory to match SecuScan styling - Replace replacement-character separator with middle dot - Preserve selectedFindingId reset when switching scans - Add focused tests for ScanHistory scan selection
done |
utksh1
left a comment
There was a problem hiding this comment.
Thanks for the latest update. I re-reviewed the current diff and this still needs changes before merge. The separator/design-token issue is partly addressed, but the feature still embeds a second scan-history navigation inside Findings even though the app already has the Scans workflow, and selecting a historical scan replaces the whole Findings dataset without preserving the existing page filters/loading/error flow or providing a way back to the global findings list. The new JSX also has rough formatting/no-final-newline churn in Findings.tsx/ScanHistory.tsx, which makes this harder to maintain. Please either integrate this with the existing Scans navigation/result flow, or make it a clearly scoped findings filter that preserves the current findings list state and lets the user return to all findings.
Fixes #276
Users had no way to browse or reload past scan results from the UI.
Changes:
ScanHistorycomponent that fetches past tasks from the existing/api/v1/tasksendpoint and lists them in a sidebargetTaskResult()No new backend endpoints needed — reuses existing
/tasksand/task/{id}/resultAPIs.