Agent skill · data analytics · microsoft
playwright-test-results
Query Playwright CI test results from the aggregated DuckDB database. Answers questions about flaky tests, failure rates, slow tests, and per-run/SHA/PR results without hunting through GitHub artifacts.
Why this skill is useful
Provides specific SQL queries and patterns for analyzing Playwright CI test results from a DuckDB database, which the AI wouldn't reliably generate on its own.
What it needs
Requires npm installed locally. About 5k tokens when loaded. Last updated 2026-08-06. 94,118 stars on the source repository.
What this skill does
Playwright Test Results (DuckDB) A single DuckDB file holds recent Playwright CI test results, so you can answer questions about failures, flakiness, and slow tests with plain SQL. It is refreshed every few hours. Get the database Download the latest snapshot: The snapshot may be missing the newest runs. To top it up locally, run update: Query it through the bundled @duckdb/node-api binding — no separate DuckDB install needed, it ships in nodemodules after npm ci: Integer columns come back as strings (JSON-safe), so do ranking and filtering in SQL, not in JS. Schema Single table testresults, one row per test result (one row per retry). The columns are inferred from the parquet the reporter emits (tests/config/parquetReporter.ts), plus two trailing columns this CLI adds: Column Meaning --- --- runid, runattempt GitHub Actions run identity runstartedat when the run started workflowname e.g. tests 1 / tests 2 / tests others / MCP event push / pullrequest headsha, headbranch, prnumber what was tested botname e.g. chromium-ubuntu-22.04-node20, webkit-macos-15-large — the CI bot. OS and arch are encoded here; there is no separate os column. projectname CI project = browser + suite, e.g. chromium-page, webkit-library, playwright-test testtitle title path within the file, joined by › (describe › test) file, line, columnnumber source location (file is relative to repo root) expectedstatus passed / skipped / ... status actual result: passed / failed / timedOut / skipped / interrupted retry 0 = first attempt resultstartedat when this attempt started durationms result duration errormessage all errors joined, ANSI-stripped (NULL when none) tags list of strings, e.g. ['@slow', '@flaky'] (use list functions / listcontains) annotations list of {type, description} structs, e.g. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills microsoft/playwright-test-results