[GH-ISSUE #7873] [Feature] Import saved Playwright trace.zip recordings as offline Evidence #4649

Open
opened 2026-10-31 00:51:53 +00:00 by bsakaguchi · 1 comment
Owner

Originally created by @jayykernel on GitHub (Oct 28, 2026).
Original GitHub issue: https://github.com/morluto/rea/issues/7873

Before submitting

  • I searched the open and closed issues and pull requests for a related proposal.
  • I understand the contribution scope must be reviewed before integration; open questions are welcome here.
  • This request does not include credentials, private samples, or sensitive target data.

Area

Evidence, artifacts, or reconstruction

Current limitation

REA already supports live browser observation and Playwright-driven scenarios, but I could not find a dedicated workflow for ingesting a previously saved Playwright trace.zip as offline Evidence. When a test or CI job has already produced a trace, an investigator must currently use the Trace Viewer or manually inspect/unpack its contents instead of bringing the recording into REA's evidence workflow.

This is a scoped feature proposal based on repository and issue/PR search, not a claim that I reproduced a failure. Related context: #774 covers the broader website reverse-engineering workflow.

Use cases

  • Investigate a failed Playwright test from a CI artifact without rerunning the application.
  • Review an interaction timeline alongside screenshots, snapshots, console events and recorded network metadata.
  • Compare saved recordings from two app versions while preserving which facts came from the trace versus the current filesystem.

Desired outcome

Add a read-only CLI/MCP importer for caller-provided Playwright trace archives. It should project supported entries into typed Evidence with source references, the archive's content identity, event ordering and explicit coverage/limitations. It should reuse the existing browser/Evidence contracts rather than introduce another browser controller.

Acceptance criteria

  • A valid trace archive can be inspected offline; the importer does not launch a browser or make network requests to the recorded URLs.
  • Results identify the supplied archive and preserve the distinction between recorded facts, derived summaries and unavailable data.
  • Missing, malformed or partial trace entries produce explicit limitations instead of being treated as complete evidence.
  • Sensitive values such as cookies and authorization headers are not emitted by default.
  • Deterministic fixtures cover navigation/actions, console or network events, missing entries and malformed archives through both the public CLI and MCP surface.
  • Documentation explains the supported trace format/version and what REA does not infer from a recording.

Alternatives considered

Using Playwright's Trace Viewer is useful for manual inspection, but it does not provide a path to reuse the recorded observations in REA's retained Evidence and comparison workflows.

Originally created by @jayykernel on GitHub (Oct 28, 2026). Original GitHub issue: https://github.com/morluto/rea/issues/7873 ### Before submitting - [x] I searched the open and closed issues and pull requests for a related proposal. - [x] I understand the contribution scope must be reviewed before integration; open questions are welcome here. - [x] This request does not include credentials, private samples, or sensitive target data. ### Area Evidence, artifacts, or reconstruction ### Current limitation REA already supports live browser observation and Playwright-driven scenarios, but I could not find a dedicated workflow for ingesting a previously saved Playwright `trace.zip` as offline Evidence. When a test or CI job has already produced a trace, an investigator must currently use the Trace Viewer or manually inspect/unpack its contents instead of bringing the recording into REA's evidence workflow. This is a scoped feature proposal based on repository and issue/PR search, not a claim that I reproduced a failure. Related context: #774 covers the broader website reverse-engineering workflow. ### Use cases - Investigate a failed Playwright test from a CI artifact without rerunning the application. - Review an interaction timeline alongside screenshots, snapshots, console events and recorded network metadata. - Compare saved recordings from two app versions while preserving which facts came from the trace versus the current filesystem. ### Desired outcome Add a read-only CLI/MCP importer for caller-provided Playwright trace archives. It should project supported entries into typed Evidence with source references, the archive's content identity, event ordering and explicit coverage/limitations. It should reuse the existing browser/Evidence contracts rather than introduce another browser controller. ### Acceptance criteria - A valid trace archive can be inspected offline; the importer does not launch a browser or make network requests to the recorded URLs. - Results identify the supplied archive and preserve the distinction between recorded facts, derived summaries and unavailable data. - Missing, malformed or partial trace entries produce explicit limitations instead of being treated as complete evidence. - Sensitive values such as cookies and authorization headers are not emitted by default. - Deterministic fixtures cover navigation/actions, console or network events, missing entries and malformed archives through both the public CLI and MCP surface. - Documentation explains the supported trace format/version and what REA does not infer from a recording. ### Alternatives considered Using Playwright's Trace Viewer is useful for manual inspection, but it does not provide a path to reuse the recorded observations in REA's retained Evidence and comparison workflows.
Author
Owner

@shaojian0514 commented on GitHub (Oct 29, 2026):

Proposal: offline Playwright trace import (#7873)

This requests a maintainer scope decision before production integration. A caller-selected trace.zip is read offline, without browser launch, replay, execution or requests to recorded addresses.

A small local v10 prototype projects action boundaries, console type, network method/status and screenshot references. It retains file/line provenance and stream order; it does not invent a total order across streams. Raw console text, action parameters, URLs, headers, cookies, bodies and DOM are omitted, with coverage unknown. Unsupported versions, missing resources and malformed events remain explicit.

The combined wheel/trace synthetic suite has 30 passing tests on Windows / Node 24.22.1. It does not establish arbitrary real-recording compatibility.

Requested decisions: Is a standalone offline importer appropriate? Which existing browser/Evidence contracts should be reused? Is v10 an acceptable first target? Which fields must be retained under existing credential redaction rules rather than omitted by the conservative prototype?

Remaining gaps: real recorder fixtures, public CLI/MCP schemas, canonical retained Evidence, ownership, cancellation/cleanup and CI. No human readiness attestation has been made.

<!-- gh-comment-id:6486713626 --> @shaojian0514 commented on GitHub (Oct 29, 2026): # Proposal: offline Playwright trace import (#7873) This requests a maintainer scope decision before production integration. A caller-selected trace.zip is read offline, without browser launch, replay, execution or requests to recorded addresses. A small local v10 prototype projects action boundaries, console type, network method/status and screenshot references. It retains file/line provenance and stream order; it does not invent a total order across streams. Raw console text, action parameters, URLs, headers, cookies, bodies and DOM are omitted, with coverage unknown. Unsupported versions, missing resources and malformed events remain explicit. The combined wheel/trace synthetic suite has 30 passing tests on Windows / Node 24.22.1. It does not establish arbitrary real-recording compatibility. Requested decisions: Is a standalone offline importer appropriate? Which existing browser/Evidence contracts should be reused? Is v10 an acceptable first target? Which fields must be retained under existing credential redaction rules rather than omitted by the conservative prototype? Remaining gaps: real recorder fixtures, public CLI/MCP schemas, canonical retained Evidence, ownership, cancellation/cleanup and CI. No human readiness attestation has been made.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#4649
No description provided.