github.com-microsoft-playwright
all · 15 devs · built 2026-06-13
Repository snapshot
Monthly reports
Highlights
- Introduced experimental support for *WebKit WebViews* automation, including new core functionalities for RDP connections and interactions [25f22d21 · Pavel Feldman].
- Enhanced *WebView* capabilities with keyboard and mouse input synthesis [9fe284a5 · Yury Semikhatsky] and improved site isolation support for *WebKit webviews* [c27ccc43 · Yury Semikhatsky].
- Expanded *device emulation profiles* to include Galaxy Z Fold/Flip, iPhone 16, and iPhone 17 families [872105a8 · Dmitry Munda], [4cd7f685 · Dmitry Munda].
- Added keyboard navigation to the *HTML Reporter*'s `TabbedPane` component, improving accessibility [3edc77fc · Padmaraj Nidagundi].
- Implemented a new `--output-max-size` option for the *MCP backend* to manage disk usage with post-response eviction [525f3754 · Simon Knott].
- Rolled *WebKit* and *Firefox Beta* to newer revisions, ensuring compatibility with the latest browser versions [fda3cd3c · microsoft-playwright-automation[bot]], [79b8f72e · microsoft-playwright-automation[bot]], [54d0f8c4 · microsoft-playwright-automation[bot]].
- Introduced support for *Ubuntu 26.04*, broadening Playwright's compatibility [f98da235 · Yury Semikhatsky].
- Added `printFailuresInline` option to the *list reporter* for immediate feedback during test runs [4d289016 · Pavel Feldman].
- Implemented *ARIA snapshotting* support for the `aria-invalid` attribute, enhancing accessibility testing [2d04b344 · Aditya Singh].
Observations
- Overall output decreased by 41% and grow score by 36% compared to the 2-month average, indicating a slowdown in new feature development.
- Maintenance score saw a significant 68% decrease compared to the 2-month average, suggesting less effort was spent on refactoring or technical debt.
- Waste score increased by 60% (current: 11, 2-month average: 7), primarily driven by bug fixes across various components, including *MCP*, *WebView*, *server-side cookie management*, and *CI/CD reporting*.
- The *Multi-Context Playwright (MCP)* component was a hotspot for fixes, with multiple commits addressing issues like invalid tool arguments [67241ff9 · Huibin Wang], writable cache directories [2fc9d1c3 · Aditya Singh], browser disconnection on dispose [bd4d83f6 · Simon Knott], and dashboard server teardown [142582cb · Simon Knott].
- Significant effort was directed towards refining and extending the `connectOverCDP` API, involving refactoring [4afdd64a · Pavel Feldman], adding custom transport support for *WebKit* [f14741d7 · Pavel Feldman] and *Chromium* [8f503225 · Yury Semikhatsky], and implementing remote connection validation [74fc94e6 · Simon Knott].
- Continuous browser engine updates were observed, with multiple rolls for *WebKit* and *Firefox Beta* throughout the month [fda3cd3c · microsoft-playwright-automation[bot]], [bb8d775b · microsoft-playwright-automation[bot]], [79b8f72e · microsoft-playwright-automation[bot]], [1081edab · microsoft-playwright-automation[bot]], [e32f9073 · microsoft-playwright-automation[bot]], [54d0f8c4 · microsoft-playwright-automation[bot]].
- Several commits addressed specific bug fixes related to *WebView* functionality, such as cross-origin process swaps [08a37f29 · Yury Semikhatsky] and site isolation [c27ccc43 · Yury Semikhatsky], indicating complexity in this area.
- Improvements to developer experience were made through better error reporting for unsupported Node.js versions [ee5a51e7 · Simon Knott] and enhanced CI/CD workflows [624ef28d · Yury Semikhatsky], [de3aa6a7 · Dmitry Gozman].
Performance over time
ETV stacked by Growth, Maintenance and Fixes — 90-day moving average, normalized to ETV / month.
Average performance per developer
ETV per active developer per month — 30-day moving average.
Active developers over time
Unique developers committing each day — 90-day moving average.
Knowledge concentration
How dependent is this repo on a small number of contributors? Higher top-1 share = higher key-person risk.
Pavel Feldman owns 25.9 % of commits.
Top contributors
Most impactful commits
Top 20 by ETV in the all-time window.
- 4.0ETVchore: replace some progress.cleanup calls with try/catch (#36769)Dmitry Gozman · 63d898d6 · 2025-07-29
- 3.4ETVchore: wk_webview experiment (#41010)Pavel Feldman · 25f22d21 · 2026-05-26
- 3.4ETVchore: move timeout handling to the client (#35988)Dmitry Gozman · 6532d7c7 · 2025-05-20
- 3.2ETVchore: export coreBundle (#40057)Pavel Feldman · 72310c75 · 2026-04-06
- 2.6ETVfeat(extension): port Playwright browser extension from playwright-mcp (#40280)Yury Semikhatsky · 7427b1de · 2026-04-17
- 2.1ETVchore: enforce dispatcher API convention for server types (3) (#40035)Pavel Feldman · 99ebd57f · 2026-04-02
- 2.1ETVchore: migrate some dispatchers from CallMetadata to Progress (part 1) (#36429)Dmitry Gozman · a3eff54e · 2025-06-25
- 2.1ETVchore: builtins (#35197)Dmitry Gozman · 0467c287 · 2025-03-25
- 1.9ETVchore: build coreBundle (#40074)Pavel Feldman · 9a99e0c8 · 2026-04-07
- 1.9ETVchore: migrate some dispatchers from CallMetadata to Progress (part 3) (#36439)Dmitry Gozman · e4355f72 · 2025-06-26
- 1.8ETVfeat(dashboard): annotate multiple screenshots (#40664) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>Simon Knott · 2f1d9c06 · 2026-05-06
- 1.7ETVchore: migrate some dispatchers from CallMetadata to Progress (part 4) (#36455)Dmitry Gozman · 184e2bed · 2025-06-30
- 1.7ETVchore(test-runner): vendor the expect library (#40301)Dmitry Gozman · 396a39b1 · 2026-04-21
- 1.7ETVchore: make input actions "strict" in terms of timeout/abort (#36302)Dmitry Gozman · 357ebfe6 · 2025-06-16
- 1.6ETVchore: remove underscore from public members in page (#35820)Yury Semikhatsky · baeb065e · 2025-05-01
- 1.6ETVchore: bundle common (#40120)Pavel Feldman · bc544850 · 2026-04-09
- 1.4ETVchore: prep devtools app (#39231)Pavel Feldman · 6d35c8b1 · 2026-02-12
- 1.3ETVchore: enforce dispatcher API convention for server types (5) (#40038)Pavel Feldman · 21b3d86e · 2026-04-03
- 1.3ETVfeat(dashboard): unify sessions into a single WebSocket channel (#40235)Pavel Feldman · ff3852fb · 2026-04-15
- 1.3ETVchore(mcp): remove context factory (1) (#39449)Pavel Feldman · 9b23cc97 · 2026-03-03