Skip to content

Add Scenario run history - #2375

Merged
Behnam (behnam-o) merged 8 commits into
mainfrom
copilot/romanlutz-scenario-pr-04-history-upstream
Sep 4, 2026
Merged

Add Scenario run history#2375
Behnam (behnam-o) merged 8 commits into
mainfrom
copilot/romanlutz-scenario-pr-04-history-upstream

Conversation

@romanlutz

@romanlutz Roman Lutz (romanlutz) commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds durable Scanner History and consolidates historical runs under a single History page with Attacks and Scanner tabs.

image

What this layer adds

  • Filterable, paginated Scanner History with run status, timing, work, success, retry, error, target, and configuration summaries.
  • Durable scanner run details with navigation into individual attack conversations.
  • Manual/chat-only Attack History by default, with an Include scanner attacks option.
  • Preserved filters and return navigation when opening scanner runs and attack details.
  • Legacy route redirects while retaining /scanner-history/<id> for run details.

Backend

  • Keyset pagination with cursor and filter validation.
  • SQL-side scanner-run aggregation for SQLite and Azure SQL.
  • Latest-attempt outcome semantics shared between history and run details.
  • Graceful fallback for legacy or malformed persisted plans.
  • Indexed filtering between manual and scanner-backed attacks.
  • No new history table; summaries are derived from persisted scenario and attack records.

Compatibility

  • Existing Attack History API behavior remains inclusive by default.
  • /history, /scenario-history, and /scanner-history list routes redirect to the canonical History tabs.
  • Existing scanner run-detail URLs remain supported.

Stack

This is 4 of 7 in native GitHub Stack #2390. Layers 1–3 are merged; layers 5–7 remain open.

Layer Scope Pull request
1 Progress foundation #2372
2 Catalog and launch #2373
3 Live progress #2374
4 Scanner History (this PR) #2375
5 FIFO scheduling #2376
6 Configuration sizing #2377
7 Result details #2378

Validation

  • Affected backend suites: 577 passed, 1 skipped.
  • Affected frontend suites: 341 passed.
  • Scanner History mock E2E: 5 passed with retries disabled.
  • Frontend lint and TypeScript checks pass.
  • All configured pre-commit hooks pass.

@romanlutz
Roman Lutz (romanlutz) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from 7172603 to fc55fbb Compare August 21, 2026 04:46
@romanlutz
Roman Lutz (romanlutz) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from fc55fbb to 9379878 Compare August 21, 2026 07:55
@romanlutz
Roman Lutz (romanlutz) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from 9379878 to b5245a1 Compare August 25, 2026 01:22
@romanlutz
Roman Lutz (romanlutz) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from b5245a1 to 7fa32a7 Compare August 25, 2026 03:45
@romanlutz
Roman Lutz (romanlutz) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from 7fa32a7 to 14bc592 Compare August 25, 2026 06:24
@richlundeen
Richard Lundeen (richlundeen) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from 14bc592 to 6eb0500 Compare August 31, 2026 17:05
@richlundeen
Richard Lundeen (richlundeen) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from 6eb0500 to e4250ff Compare August 31, 2026 18:10
@richlundeen
Richard Lundeen (richlundeen) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from e4250ff to cfc6761 Compare September 1, 2026 21:09
@richlundeen
Richard Lundeen (richlundeen) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from cfc6761 to b4ae749 Compare September 1, 2026 21:34
@behnam-o Behnam (behnam-o) self-assigned this Sep 2, 2026
@behnam-o
Behnam (behnam-o) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch 3 times, most recently from ad2c9db to 70780d7 Compare September 2, 2026 19:14
@richlundeen
Richard Lundeen (richlundeen) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from 70780d7 to f412438 Compare September 3, 2026 19:54
Comment thread pyrit/memory/alembic/versions/8d1e3f5a7b9c_index_scenario_history.py Dismissed
Comment thread pyrit/memory/alembic/versions/8d1e3f5a7b9c_index_scenario_history.py Dismissed
Base automatically changed from copilot/romanlutz-scenario-pr-03-live-upstream to main September 3, 2026 20:14
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 5d02c2d5-b499-4f78-a04d-03bffa750817
@richlundeen
Richard Lundeen (richlundeen) force-pushed the copilot/romanlutz-scenario-pr-04-history-upstream branch from f412438 to a478646 Compare September 3, 2026 20:14
Behnam Ousat and others added 3 commits September 4, 2026 09:51
Optimize scenario history aggregation, harden pagination and plan mapping, consolidate History navigation, and default attack history to manual runs.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6c723131-a744-4bfc-89af-ca6f441bbbaf
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6c723131-a744-4bfc-89af-ca6f441bbbaf
Comment thread pyrit/memory/memory_interface.py Fixed
@behnam-o
Behnam (behnam-o) marked this pull request as ready for review September 4, 2026 17:37
Behnam Ousat and others added 2 commits September 4, 2026 11:16
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6c723131-a744-4bfc-89af-ca6f441bbbaf
Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
Comment thread pyrit/backend/services/scenario_run_service.py
Comment thread pyrit/memory/memory_interface.py
Comment thread frontend/src/components/History/AttackHistory.tsx
Comment thread frontend/src/components/History/HistoryFiltersBar.tsx Outdated
Comment thread frontend/src/components/History/ScenarioHistory.tsx Outdated
Comment thread frontend/src/components/Scenarios/ScenarioRunPage.tsx Outdated
Behnam Ousat added 2 commits September 4, 2026 12:22
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6c723131-a744-4bfc-89af-ca6f441bbbaf
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6c723131-a744-4bfc-89af-ca6f441bbbaf
@behnam-o
Behnam (behnam-o) added this pull request to the merge queue Sep 4, 2026
Merged via the queue into main with commit 8dc7200 Sep 4, 2026
56 checks passed
@behnam-o
Behnam (behnam-o) deleted the copilot/romanlutz-scenario-pr-04-history-upstream branch September 4, 2026 20:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants