Skip to content

Result session persistence: 'I came back later and it wasn't there' (Tara Watson) #2833

@MaxGhenis

Description

@MaxGhenis

The user pain

At the 2026-04-21 working meeting (transcript lines 111-115), Tara Watson described running a simulation on policyengine.org, coming back later, and "it wasn't there." That's a first-order product bug with reproducibility implications — the researcher did the work; the work evaporated.

Policyengine-app #2830 scopes the future solution (TRACE "Cite this result" permalinks that resolve forever). But that is the long-tail answer. Tara's immediate pain is not yet addressed, and the transcript is specific about it: a researcher opened a result in a browser session, navigated away, came back, and could not get back to the same numbers.

Why this needs its own issue

It's distinct from #2830 in two ways:

  1. Scope. TRACE "Cite this result" is about rigor for published papers. Tara's case is about session-level persistence for day-to-day work. The fix may be simpler — a stable URL that resolves to the same result across sessions — and should not wait on the TRACE backend.
  2. Urgency. 'Cite this result' button, version badge, and shareable TRO permalinks #2830 is blocked on the pe.py v4 migration (api#3486 → api#3485 → app#2830). This could ship earlier.

Likely root causes to investigate

Without the full reproduction from Tara, candidates:

  • Result caching in the app frontend that doesn't survive a browser restart.
  • An api endpoint that doesn't accept a reproducing-request shape after cache expiry.
  • A URL scheme that loses the reform/baseline/dataset pinning.
  • Session state in localStorage that isn't written or isn't restored.

First step: get a reproduction from Tara. I'll email her to ask for the specific URL or workflow she hit, and what she saw when she came back.

Related

Scope

Not filing with a fix proposal yet — deliberately want the reproduction first. Putting this on the app-repo issue tracker as a user-reported bug with a clear source citation, so it does not get lost behind the bigger TRACE workstream.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions