Skip to content

Durable per-page results and Assistant round-trip #51

Description

@mrwadams

Parent

#45 — Harden the scenario-generation journey: persistent state, guided setup, and resilient progress

What to build

Each scenario page keeps its own latest result and generation metadata across Streamlit reruns and page navigation for the session, in page-scoped namespaces so threat-group, custom, and AI-insider results coexist without overwriting each other. A separate latest-result pointer feeds the Assistant. Returning to a scenario page — including via the main navigation after visiting the Assistant — reliably re-renders that page's result, downloads, Navigator layer, and Detection & Response state, fixing the bug where the group selector resets and the result/download UI stops rendering. Changing inputs after generation preserves the previous result (with its captured inputs shown) until the user explicitly regenerates or clears; a deep-link refresh restores non-secret setup and clearly explains when session-only generated content is no longer available.

Acceptance criteria

  • Generating on one page, visiting the Assistant, and returning re-renders the same result, downloads, Navigator layer, and Detection & Response view
  • Generating on a second scenario page does not overwrite the first page's stored result
  • The Assistant reads the latest-result pointer; each page retains its own page-scoped result
  • After editing inputs, the previous result remains available with its captured inputs shown, until explicit regenerate/clear
  • Refreshing a deep-linked page restores non-secret setup and explains when session-only generated content is gone
  • A cross-navigation coordinator test generates a threat-group scenario, simulates an Assistant visit and return, and asserts the page-scoped result, captured inputs, stable filenames, Navigator layer, and Detection & Response state still render

Blocked by

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions