Skip to content

Move the trace zip reader from backend into trace - #506

Merged
vishnuv688 merged 1 commit into
mainfrom
refactor/trace-reader-to-trace
Nov 2, 2026
Merged

vishnuv688 merged 1 commit into
mainfrom
refactor/trace-reader-to-trace

Conversation

@vishnuv688

@vishnuv688 vishnuv688 commented Oct 29, 2026 •

Copy link
Copy Markdown
Member

What & why

Part of #494 (the hosted trace player parses zips in the browser) and prepares #493.

Moves the trace zip reader (parseTraceZip, readTraceZip and the trace-reader-* siblings) from packages/backend into packages/trace, which now owns the trace format in both directions. Two consumers need to parse a trace zip without the backend: the hosted trace player, since the app cannot import the backend, and the planned trace query MCP server (#493), which would otherwise pull Fastify, the dashboard bundle and the rerun spawner into its install.

Type of change

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Polish (an improvement to an existing feature)
  • Breaking change (existing behavior changes for users)
  • Documentation
  • Internal (build, CI, dependencies, tooling)

Packages touched

  • shared (types and contracts)
  • core (framework-agnostic capture/reporting)
  • elements (published element/snapshot API — @wdio/elements)
  • service (WebdriverIO adapter)
  • nightwatch-devtools (Nightwatch adapter)
  • selenium-devtools (Selenium adapter)
  • selenium-devtools-py (Selenium Python adapter)
  • backend (server)
  • app (UI)
  • script (page-injected runtime)
  • trace (Trace mode)

Capability matrix

  • packages/conformance/src/features.ts updated, and tables regenerated with pnpm docs:capabilities, if this adds or changes user-facing behaviour

Not needed: no behaviour change.

Notes for reviewers

Screenshots / recordings

Not applicable: no UI change.

🤖 Generated with Claude Code

The planned trace query MCP server (#493) needs to parse trace zips, and
depending on backend for that would pull Fastify, the dashboard bundle and
the rerun spawner into its install. The reader imports only shared and
trace, so it moves to trace, which now owns the format in both directions.

readTraceZip moves with parseTraceZip because trace already does the
matching disk write and both backend and the MCP package read from disk.
The reader stays out of trace's index, so core and the adapters never
inline it. No behaviour change: backend imports it by subpath.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@vishnuv688 vishnuv688 self-assigned this Oct 29, 2026
@vishnuv688
vishnuv688 merged commit 51b670a into main Nov 2, 2026
13 checks passed
@vishnuv688
vishnuv688 deleted the refactor/trace-reader-to-trace branch November 2, 2026 08:53
@vishnuv688
vishnuv688 restored the refactor/trace-reader-to-trace branch November 2, 2026 08:57
@vishnuv688
vishnuv688 deleted the refactor/trace-reader-to-trace branch November 2, 2026 08:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant