← ClaudeAtlas

playwright-trace-analyzerlisted

Analyzes Playwright E2E `trace.zip` archives (and bare trace JSONL when unpacked). Extracts the action timeline, network waterfall, console errors, and DOM-snapshot anchors, then identifies the highest-impact problems (flaky waits, slow selectors, network bottlenecks, hung actions, unhandled console errors, navigation churn) and proposes concrete test or app fixes ranked by measured impact. Auto-detects whether the input is a `trace.zip`, a directory of unpacked trace files, or a single `trace.trace` / `trace.network` JSONL stream. Iterates via the `/confidence` skill — if root-cause certainty is below 90%, it digs deeper before recommending a fix. Use when handed a Playwright trace, asked "why is this test flaky?", "why did the test time out?", or asked to optimise an E2E suite with evidence. Triggers on "analyze trace", "playwright trace", "e2e trace", "test flake", "why did playwright fail", "playwright timing", "/playwright-trace-analyzer".
mthines/agent-skills · ★ 5 · Testing & QA · score 83
Install: claude install-skill mthines/agent-skills
# Playwright Trace Analyzer Turn a Playwright `trace.zip` into a ranked, evidence-backed report of flakes, slow steps, and root causes. > **Index file.** Detailed extraction rules, analysis playbooks, and > report templates live under `rules/`, `references/`, and `templates/`. > Load only what the current phase needs — the body of `SKILL.md` is a > thin orchestrator. --- ## Inputs The user passes one or more of: | Input | Detection signal | | ------------------------------------ | ---------------------------------------------------------------------- | | GitHub Actions run URL | Matches `https://github.com/<owner>/<repo>/actions/runs/<id>` — fetch artifacts via `gh run download` | | `trace.zip` archive | Magic bytes `50 4b 03 04`; entries include `trace.trace`, `trace.network`, `*.png`, `resources/` | | Unpacked trace directory | Contains `trace.trace` + `trace.network` (NDJSON) and a `resources/` subdir | | Single `trace.trace` JSONL stream | NDJSON; each line has `type`, `callId`, `startTime`, `params` (e.g. `before`, `action`, `after`) | | Single `trace.network` JSONL stream | NDJSON; entries with `type: "resource-snapshot"` or `requestEvent` / `responseEvent` | | `report.json` (Playwright reporter) | Top-level `config`, `suites`, `stats`; complementary, never authoritative for timing