Skip to content

Replay modes and Recorded Journey

StatePort separates how the saved state is reached from how network dependencies are handled.

From a State Card, the normal developer launcher chooses:

Reach state
Open final state / Replay journey
Browser session
Development Profile / Clean Session
Network
captured behavior replayed; unmatched requests stop
→ Open State

There are no separate top-level Open, Replay, and Verify wizards.

Open final state restores Saved state; Replay journey runs the Recorded Journey. An eligible saved-page attempt instead offers Try Saved State or Try Recorded Journey as the launch action.

Official reproduction support starts with Capture Session 1.23.0. Older Sessions are best-effort; recapture them with the current version for supported reproduction. This does not change their saved bytes or grant new permissions.

The launcher makes the page origin explicit before a run:

  • Local app uses your chosen loopback current-code origin.
  • Original environment uses the Card’s exact source origin. Eligible retained page material is served locally without contacting production. A Chrome Capture Card does not archive application code and loads current application code and permitted public assets from the source site. A compatible legacy Card may also load its current source shell.

Original environment is not a generic remote URL feature. Network → Details discloses whether this Card serves saved material or contacts its exact source site for current application code. Chrome Capture and legacy current-shell paths require that site to be reachable and do not promise offline reproduction of captured code. Captured API data still takes precedence, and unmatched data requests, mutations, unsupported redirects, and destinations are blocked. Missing required material remains an explicit limitation.

Supported captured dependencies are served from immutable replay material. Unconfigured in-scope remote requests fail closed and appear as typed safe misses.

Frozen describes the controlled surrounding data behavior. It does not mean that a State Card is a special “Frozen card,” and it does not mean StatePort captured a database or server environment. Eligible retained pages are served locally. Chrome Capture and compatible legacy Cards may load current application code from their explicitly selected original environment while captured API responses remain replayed.

An explicitly selected supported dependency may use an approved loopback target while the surrounding captured world remains replayed.

The overall runtime may combine replayed dependencies with one or more explicitly approved Local dependencies. Captured/source credentials are not automatically forwarded to Local. Local authentication, when needed, is configured through the approved current-code/test boundary.

An explicitly selected route may be aborted deterministically when neither captured replay nor Local behavior is appropriate.

Unsupported protocol, unmatched request, invalid target, policy mismatch, or missing evidence is reported explicitly. StatePort does not silently contact the original system or broaden the allowed origin because a reproduction failed.

Choose Open final state to restore the State Card’s selected Saved state under the chosen browser-session and network policy.

Use it when the useful starting point can be restored without replaying the recorded setup path.

Choose Replay journey to advance through the bounded Recorded Journey captured for the State Card.

A Journey may be:

  • Full — all supported recorded steps can run automatically;
  • Partial — automatic segments are separated by explicit manual barriers;
  • unavailable — the Card can still be useful through Saved state when compatible.

A partial Journey pauses at the manual barrier, lets the user complete the required step, and resumes later automatic steps only after explicit Resume.

StatePort resolves exact semantic targets and stops on missing, ambiguous, or drifted targets. It does not add fuzzy selector fallback, arbitrary scripts, branching suites, scheduling, generic CI behavior, or automatic unsafe retries.

For Local app, both Saved state and Recorded Journey can use the browser-session mode selected in the same launcher:

  • Development Profile for persistent StatePort-owned local browser state;
  • Clean Session for a fresh isolated browser context.

Original environment uses an isolated Clean Session. A Clean Session is not a separate top-level workflow; it is the browser session for the reproduction you are about to run.

The interactive CLI can start an available Journey only after the current explicit human confirmation.

MCP can inspect Journey availability and start a visible Journey within an original user-requested task authorized by begin_agent_task. The exact Card and origins must remain within that scope; no repeat confirmation is required. Ending the task or disconnecting revokes its authority. Direct clients without task authorization must supply confirmedByUser: true for the exact user-confirmed Card, or receive HUMAN_CONFIRMATION_REQUIRED before browser creation. See Frozen Journey with MCP.