Skip to content

feat: add scan history sidebar to Findings page#435

Open
aaniya22 wants to merge 5 commits into
utksh1:mainfrom
aaniya22:feat/scan-history-sidebar-276
Open

feat: add scan history sidebar to Findings page#435
aaniya22 wants to merge 5 commits into
utksh1:mainfrom
aaniya22:feat/scan-history-sidebar-276

Conversation

@aaniya22
Copy link
Copy Markdown
Contributor

Fixes #276

Users had no way to browse or reload past scan results from the UI.

Changes:

  • Added ScanHistory component that fetches past tasks from the existing /api/v1/tasks endpoint and lists them in a sidebar
  • Wired the sidebar into the Findings page — clicking a past scan loads its findings via getTaskResult()
  • Active scan is highlighted in the sidebar

No new backend endpoints needed — reuses existing /tasks and /task/{id}/result APIs.

@utksh1 utksh1 added level:intermediate 35 pts difficulty label for moderate contributor PRs type:feature Feature work category bonus label area:frontend Frontend React/UI work labels May 31, 2026
Copy link
Copy Markdown
Owner

@utksh1 utksh1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

aaniya22 added 3 commits May 31, 2026 17:58
- 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
@aaniya22
Copy link
Copy Markdown
Contributor Author

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.

done

Copy link
Copy Markdown
Owner

@utksh1 utksh1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:frontend Frontend React/UI work level:intermediate 35 pts difficulty label for moderate contributor PRs type:feature Feature work category bonus label

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[SCAN] Scan history not persisted between sessions — output files exist but UI has no way to browse, reload, or compare past scan results

2 participants