Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions doc/gui/0_gui.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,14 +118,14 @@ Decided attack outcomes use **True** and **False**; execution errors remain sepa
Groups and objectives show success rates and completion counts separately.
The results page does not include a paired-outcome comparison.

**Watch live conversation** opens saved messages while an attack runs. This view
is read-only and refreshes saved messages; it has no send controls. **Cancel scan**
stops remaining scan work and keeps saved results. Ordinary manual chats do not
have scan cancellation controls.
After cancellation, saved messages remain available in the read-only chat.
Saving these conversation links does not add attack outcomes or change success rates.

**Rerun** opens the scenario launch page with saved settings filled in. It does
**Watch live conversation** opens a running attack in Chat. While the scan runs it,
Chat is read-only, shows **Attack in progress** in place of the prompt bar, and
refreshes its messages and conversations; when the attack finishes, Chat shows its
saved result on the same page. **Cancel** stops remaining scan work and keeps saved
results; saved messages remain available in the read-only chat. Opening these
conversations does not add attack outcomes or change success rates.

**Rerun with changes** opens the scenario launch page with saved settings filled in. It does
not start work or change the original run. Review or edit the settings before
launching. Recorded target/scorer identities and the scenario version are checked.
Settings that cannot be restored, including older records without a required identity,
Expand Down
55 changes: 53 additions & 2 deletions frontend/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,8 +118,59 @@ rows and keyboard focus. Selected conversation URLs, return-to-scan links and
the originating History filters survive paging and reloads.
On narrow screens, the saved viewer scrolls as one surface so loaded evidence
and continuation controls remain reachable without squeezing the transcript.
Selecting another saved conversation starts at its beginning; continuation
keeps the current reading position.
There, selecting another saved conversation starts at its beginning;
continuation keeps the current reading position.

## Scan results and live scan attacks

A scan's run page shows its Operation as parent context above the title. Errors
and scan-level notices (paused updates, overload, an incomplete plan, unmatched
executions) stay explicit; a single attack's own error is not repeated as a run
error. While the scan is active, the progress area shows elapsed time, an
estimate of the time remaining, and **View live attacks**. When the scan
finishes, the progress area collapses in place without moving the results.

A run of one atomic attack shows that attack directly as one card, from
preparing through completion. Other runs list atomic attack groups, datasets
and objectives, and the scenario configuration; each result row opens the
attack details. Attack details list the objective and outcome (with its score),
the technique, objective scorer and dataset identities, and any findings that
link the attack, followed by its conversation and **Attach to findings**.

Every scan conversation opens in Chat at
`/attack/chat/{attack_id}/conversations/{conversation_id}?scenarioResultId={run_id}`,
whether the attack is still running or finished. Older
`/scanner/history/{run_id}/conversations/{conversation_id}` links redirect there.
While a scan is running the attack, Chat replaces the prompt bar with an
**Attack in progress** bar and a link back to the scan, keeps the attack
read-only, and refreshes its metadata, transcript, and conversation list at the
scan's polling interval. A failed refresh keeps the loaded messages and offers
**Retry**. When the attack finishes, Chat reloads its saved result in place on
the same URL.

An interrupted scan can retain recorded conversations without a saved attack
result. Chat verifies that run, attack and conversation together and reads the
stored evidence through the run-scoped API, including after reload or an older
scan link. These conversations stay read-only; no result, score, main
conversation or message count is invented. Result-dependent actions remain
unavailable.

Live and manual transcripts follow new messages only while the reader is within
48 px of the end; scrolling further up keeps the reading position. Historical
saved evidence keeps its bounded paging and narrow-screen reading behavior
described above.

**Evaluation metrics** in attack details shows the official evaluation quality
of the recorded objective-scorer configuration, including configurations no
longer in the registry. This is separate from the individual attack score in
the outcome popover and the scan's attack-success rate. Missing evaluation
metrics have an explicit unavailable state and a link to the scorer-metrics guide.

The Scorer Registry keeps its compact comparison table; each scorer's
**Evaluation metrics** opens the complete supplied metrics, including standard
errors and sample counts. Runtime identity and behavioral evaluation identity
remain separate. Registry names are not used to substitute metrics for a
recorded run.

## Dataset catalog

Expand Down
Loading