Description Please backport client side changes:
chore: move some trace utilities to isomorphic playwright#38373 - trace utilities refactoring, no Python changes needed
docs: Worker.waitForConsoleMessage in java playwright#38385 - docs only
fix(trace viewer): prevent stale content for resource overrides playwright#38404 - trace viewer fix, no Python changes needed
chore: remove deprecated devtools option playwright#38392 - removed devtools parameter
docs: service-workers doc for python playwright#38432 - docs only
feat(mcp): allow passing --console-level playwright#38439 - MCP console-level, added "time" to ConsoleMessage.type
chore: iterate on perform playwright#38458 - perform API (JS-only)
chore: perform-specific tools playwright#38462 - perform API (JS-only)
chore: add perform secrets, form tool playwright#38467 - perform API (JS-only)
chore: move agent cache management into ArtifactsRecorder playwright#38518 - agent cache management (JS-only)
chore: include generated code in generated actions playwright#38531 - agent codegen (JS-only)
chore: report perform usage, cap tokens and turns playwright#38534 - perform API (JS-only)
chore: perform agent turn event playwright#38535 - perform API (JS-only)
fix(trace): operate trace uri, not path playwright#38566 - trace uri fix, no Python changes needed
feat(api): expose connectOverCDP({ isLocal }) playwright#38614 - added isLocal to connect_over_cdp
chore: copy perform snapshtos on write playwright#38620 - perform API (JS-only)
chore: make AriaNode isomorphic playwright#38639 - AriaNode refactoring, no Python changes needed
feat: Expose types and documentation for Locator.toString playwright#38633 - Locator.toString types (already exists in Python)
chore: add expectAria to perform playwright#38640 - perform API (JS-only)
chore(mcp): restrict file uploads to workspace roots playwright#38657 - MCP file uploads, no Python changes needed
chore: unify trace parsing utilities playwright#38660 - trace parsing, no Python changes needed
chore: roll lowire to v0.0.14 playwright#38686 - perform API (JS-only)
clean: remove post-conditions playwright#38694 - perform API (JS-only)
fix: npx playwright open should include console api playwright#38721 - playwright open console, no Python changes needed
chore: move to page.agent({ params }) api playwright#38735 - page.agent API (JS-only)
fix(route): don't get stalled by "runBeforeUnload" playwright#38748 - route fix (server-side)
chore: share contexts between agent calls playwright#38738 - agent contexts (JS-only)
chore: agent system prompt playwright#38752 - agent system prompt (JS-only)
fix(tracing): resourceOverrides issues playwright#38750 - tracing fix, no Python changes needed
chore(route): ignore forbidden header overrides playwright#38724 - route header overrides (server-side)
feat(toHaveCss) Overload toHaveCSS matcher to accept React.CSSProperties playwright#38617 - toHaveCss matcher (test assertions, JS-only)
chore: report perform to trace playwright#38763 - perform trace (JS-only)
feat: proper source maps for spec.md playwright#38773 - source maps for spec.md, no Python changes needed
chore: render call log in perform playwright#38783 - perform call log (JS-only)
chore: perform testing framework playwright#38785 - perform testing framework (JS-only)
chore: mark page.agent as js-only playwright#38793 - docs: page.agent is JS-only
chore: agent.usage() playwright#38790 - agent.usage() (JS-only)
chore: prepare to reuse expect formatting logic playwright#38792 - expect formatting (JS-only)
chore: update agent limits playwright#38800 - agent limits (JS-only)
chore(agent): expectURL playwright#38812 - agent expectURL (JS-only)
chore: zod 4 playwright#38809 - zod 4 upgrade, no Python changes needed
chore: strip ansi from llm errors playwright#38840 - agent error formatting (JS-only)
fix: H-scroll positions after restore playwright#38822 - H-scroll snapshot fix, no Python changes needed
test: do not render [active] in snapshots to reuse cache across browsers playwright#38851 - test cache fix, no Python changes needed
chore: page.agent timeouts sorted playwright#38839 - agent timeouts (JS-only)
docs: fix containsText example in ports playwright#38899 - docs fix
chore(agent): make sure events are dispatched and dispose is respected playwright#38891 - agent events (JS-only)
feat(toHaveCss) Overload toHaveCSS matcher to accept React.CSSProperties playwright#38617 - duplicate entry
chore: hide stuff playwright#38882 - hide agent stuff (JS-only)
Reactions are currently unavailable
You can’t perform that action at this time.
Please backport client side changes:
devtoolsoption playwright#38392 - removed devtools parameterLocator.toStringplaywright#38633 - Locator.toString types (already exists in Python)