chore(deps): update npm dev dependencies#6
Open
github-actions[bot] wants to merge 1 commit into
Open
Conversation
1d9247f to
4e401c8
Compare
andremadstop
pushed a commit
that referenced
this pull request
Apr 27, 2026
Phase 153 Plan 01 (Wave-0) complete: - I18N-02 satisfied: scripts/check-i18n-parity.sh shipped, baseline-green on 5x1631 keys, drift-tested, wired into pre-push (block 7) + CI (security-regression workflow step) - OQ4 verdict GREEN: grep-proven that no learning.* user_config key is auto-written during NC user creation — Plan 03 ships Pattern 1 (IConfig::getUserKeys() discriminator) as designed; Option A RepairStep fallback NOT needed - Audit A CLEAN: only bundled scaleX(-1) rule (.icon-vue--directional vendor NcIconSvgWrapper) does not reach .character-avatar — I18N-03 unmirrored-avatar guarantee structurally enforced via selector specificity - Audit B ACTIVE: deploy-prod.sh line 68 still wipes both js/ + css/ before redeploy (success-criterion #6 first half pre-satisfied) Wave-0 is now COMPLETE (both 153-01 and 153-02 plans shipped). Wave 1 (Plans 03+04, parallel-safe) cleared to start. 4 Rule-3 deviations recorded (all plan-vs-reality adaptations): - gitignore allowlist for new script - $ROOT_DIR variable in pre-push (not invented $REPO_ROOT) - CI step anchored after security-anti-patterns (no forbidden-names step exists in workflow) - Audit B verify uses presence-checks (not wc -l >= 2) Tracked changes: STATE.md (decisions + metric + session), REQUIREMENTS.md (I18N-02 marked complete + traceability row). SUMMARY.md durably written to .planning/phases/.../153-01-SUMMARY.md (gitignored per Phase 149 policy). ROADMAP.md unchanged (already marked done in commit 54345c8).
4e401c8 to
c7b85e3
Compare
c7b85e3 to
d7a2054
Compare
d7a2054 to
c7b85e3
Compare
c7b85e3 to
fd40ac2
Compare
fd40ac2 to
c7b85e3
Compare
c7b85e3 to
4211f1b
Compare
4211f1b to
c7b85e3
Compare
c7b85e3 to
30d2c64
Compare
30d2c64 to
c7b85e3
Compare
c7b85e3 to
b8aac1c
Compare
b8aac1c to
c7b85e3
Compare
c7b85e3 to
460c643
Compare
460c643 to
c7b85e3
Compare
c7b85e3 to
59d68a9
Compare
59d68a9 to
c7b85e3
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.58.2->1.61.08.58.0->8.61.18.58.0->8.61.16.0.5->6.0.73.5.32->3.5.3820.8.9->20.10.67.3.1->7.3.54.1.0->4.1.9Release Notes
microsoft/playwright (@playwright/test)
v1.61.0Compare Source
🔑 WebAuthn passkeys
New Credentials virtual authenticator, available via browserContext.credentials, lets tests register passkeys and answer
navigator.credentials.create()/navigator.credentials.get()ceremonies in the page — no real hardware key required, works in all browsers:You can also let the app register a passkey once in a setup test, read it back with credentials.get(), and seed it into later tests — see Credentials for details.
🗃️ Web Storage
New WebStorage API, available via page.localStorage and page.sessionStorage, reads and writes the page's storage for the current origin:
New APIs
Network
Browser and Screencast
artifactsDirin browserType.connectOverCDP() controls where artifacts such as traces and downloads are stored when attached to an existing browser.cursorin screencast.showActions() controls the cursor decoration rendered for pointer actions.onFramecallback in screencast.start() now receives atimestampof when the frame was presented by the browser.Test runner
trace: new'on-all-retries','retain-on-first-failure'and'retain-on-failure-and-retries'values. See the video modes table for which runs are recorded and kept in each mode.expect.soft.poll(...).process.argvfrom the runner process, handy for reading custom arguments passed after the--separator.AggregateErroras a separate entry.-Gcommand line shorthand for--grep-invert.🛠️ Other improvements
Browser Versions
This version was also tested against the following stable channels:
v1.60.0Compare Source
🌐 HAR recording on Tracing
tracing.startHar() / tracing.stopHar() expose HAR recording as a first-class tracing API, with the same
content,modeandurlFilteroptions asrecordHar. The returned Disposable makes it easy to scope a recording withawait using:🪝 Drop API
New locator.drop() simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches
dragenter,dragover, anddropwith a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:🎯 Aria snapshots
page.locator('body').boxesoption on locator.ariaSnapshot() / page.ariaSnapshot() appends each element's bounding box as[box=x,y,width,height], useful for AI consumption.🛑 test.abort()
New test.abort() aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:
New APIs
Browser, Context and Page
Locators and Assertions
descriptionin page.getByRole() / locator.getByRole() / frame.getByRole() / frameLocator.getByRole() for matching the accessible description.pseudoin expect(locator).toHaveCSS() reads computed styles from::beforeor::after.stylein locator.highlight() applies extra inline CSS to the highlight overlay, plus new page.hideHighlight() to clear all highlights.Network
noDefaultsin browserType.connectOverCDP() disables Playwright's default overrides on the default context (download behavior, focus emulation, media emulation), so attaching to a user's daily-driver browser doesn't disturb its state.Errors and Reporting
line/columnproperties (lineNumber/columnNumberare deprecated).expect(...)matcher failure.workerInfoargument with details about the worker for fixture teardown errors.Test runner
{testFileBaseName}token in testProject.snapshotPathTemplate — file name without extension.workers: 0or negative values.🛠️ Other improvements
npx playwright show-reportaccepts.zipfiles directly — no need to unzip first.repeatEachIndexis shown in the test header when non-zero.Breaking Changes⚠️
Locator.ariaRef()— use the standard locator.ariaSnapshot() pipeline.handleoption onBrowserContext.exposeBindingandPage.exposeBinding.loggeroption onBrowserType.connectandBrowserType.connectOverCDP— use tracing instead.videosPath/videoSize— userecordVideoinstead.Browser Versions
This version was also tested against the following stable channels:
v1.59.1Compare Source
Bug Fixes
codegen,--uiandshowcommands (#39990)v1.59.0Compare Source
🎬 Screencast
New page.screencast API provides a unified interface for capturing page content with:
Screencast recording — record video with precise start/stop control, as an alternative to the
recordVideooption:Action annotations — enable built-in visual annotations that highlight interacted elements and display action titles during recording:
screencast.showActions() accepts
position('top-left','top','top-right','bottom-left','bottom','bottom-right'),duration(ms per annotation), andfontSize(px). Returns a disposable to stop showing actions.Action annotations can also be enabled in test fixtures via the
videooption:Visual overlays — add chapter titles and custom HTML overlays on top of the page for richer narration:
Real-time frame capture — stream JPEG-encoded frames for custom processing like thumbnails, live previews, AI vision, and more:
Agentic video receipts — coding agents can produce video evidence of their work. After completing a task, an agent can record a walkthrough video with rich annotations for human review:
The resulting video serves as a receipt: chapter titles provide context, action annotations highlight each interaction, and the visual walkthrough is faster to review than text logs.
🔗 Interoperability
New browser.bind() API makes a launched browser available for
playwright-cli,@playwright/mcp, and other clients to connect to.Bind a browser — start a browser and bind it so others can connect:
Connect from playwright-cli — connect to the running browser from your favorite coding agent.
Connect from @playwright/mcp — or point your MCP server to the running browser.
Connect from a Playwright client — use API to connect to the browser. Multiple clients at a time are supported!
Pass
hostandportoptions to bind over WebSocket instead of a named pipe:Call browser.unbind() to stop accepting new connections.
📊 Observability
Run
playwright-cli showto open the Dashboard that lists all the bound browsers, their statuses, and allows interacting with them:🐛 CLI debugger for agents
Coding agents can now run
npx playwright test --debug=clito attach and debug tests overplaywright-cli— perfect for automatically fixing tests in agentic workflows:📋 CLI trace analysis for agents
Coding agents can run
npx playwright traceto explore Playwright Trace and understand failing or flaky tests from the command line:♻️
await usingMany APIs now return async disposables, enabling the
await usingsyntax for automatic cleanup:🔍 Snapshots and Locators
page.locator('body').ariaSnapshot().depthandmodein locator.ariaSnapshot().New APIs
Screencast
Storage, Console and Errors
filterin page.consoleMessages() and page.pageErrors() controls which messages are returned.Miscellaneous
livein tracing.start() for real-time trace updates.artifactsDirin browserType.launch() to configure the artifacts directory.🛠️ Other improvements
'retain-on-failure-and-retries'records a trace for each test run and retains all traces when an attempt fails — great for comparing a passing trace with a failing one from a flaky test.Known Issues⚠️ ⚠️
navigator.platformemulation can cause Ctrl or Meta dispatching errors (#40009). PassPLAYWRIGHT_NO_UA_PLATFORM = '1'environment variable while we are issuing a patch release. Let us know in the issue how it affected you.Breaking Changes⚠️
@playwright/experimental-ct-sveltepackage.junittest reporter now differentiates between types of errors, so some of the previous<failure>s are now reported as<error>s.Browser Versions
This version was also tested against the following stable channels:
typescript-eslint/typescript-eslint (@typescript-eslint/eslint-plugin)
v8.61.1Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.61.0Compare Source
🚀 Features
UnaryExpression.prefixto alwaystrue(#12372)❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.60.1Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.60.0Compare Source
This was a version bump only for eslint-plugin to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.4Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.3Compare Source
This was a version bump only for eslint-plugin to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.2Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.1Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.0Compare Source
🚀 Features
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.58.2Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.58.1Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
typescript-eslint/typescript-eslint (@typescript-eslint/parser)
v8.61.1Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.61.0Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.60.1Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.60.0Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.4Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.3Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.2Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.1Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.0Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.58.2Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.58.1Compare Source
This was a version bump only for parser to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
vitejs/vite-plugin-vue (@vitejs/plugin-vue)
v6.0.7Features
@rolldown/pluginutilsversion (#776) (941b651)Bug Fixes
v6.0.6Features
Bug Fixes
Miscellaneous Chores
vuejs/core (@vue/compiler-sfc)
v3.5.38Compare Source
v3.5.37Compare Source
v3.5.36Compare Source
Bug Fixes
once: true(#14902) (450a8a8)v3.5.35Compare Source
Bug Fixes
ssrRenderSuspense(#14804) (4760997), closes nuxt/nuxt#28162Configuration
📅 Schedule: Branch creation - "before 6am on monday" in timezone Europe/Berlin, Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Renovate Bot.