Skip to content

chore: upstream intake 1.9.0 - #67

Merged
mateuszk-opera merged 74 commits into
mainfrom
chore/upstream-intake-1.9.0
Sep 10, 2026
Merged

chore: upstream intake 1.9.0#67
mateuszk-opera merged 74 commits into
mainfrom
chore/upstream-intake-1.9.0

Conversation

@mateuszk-opera

Copy link
Copy Markdown
Contributor

No description provided.

Lightning00Blade and others added 30 commits August 14, 2026 10:35
…#2580)

Currently we print the JSON structure even when used in the CLI.
…f264b` (#2583)

Bumps
[third_party/devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend)
from `eaad249` to `9cf264b`.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/9cf264b26b39a9e8382f795a9084ddcd7a290937"><code>9cf264b</code></a>
Update DevTools DEPS (trusted)</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/56003889ce6455ad5b8d020c6e1540437e577473"><code>5600388</code></a>
Update DevTools DEPS (trusted)</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/129a8d953b9734099c192ada38eaba8780e81ac9"><code>129a8d9</code></a>
Migrate emulated-css-media-feature-prefers-reduced-motion setting to
SettingD...</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/c5cb2b03978755362e551b03ffe7b1effec131d9"><code>c5cb2b0</code></a>
Fix duplicate screen reader announcement for IssueCounter</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/312ddfdcdb85a1baa7532f5a0fa511af22436bc8"><code>312ddfd</code></a>
AI: Streamline and structure debug logging</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/7441098251241eb0395ccf90568bcc34574f12fb"><code>7441098</code></a>
Roll browser-protocol and CfT</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/65f57048e1cbd6ee1dc14716db8d23f0663f9841"><code>65f5704</code></a>
AIv2: implement listStorageKeys and getStorageValues tools</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/5c2586123f7929f9629a0325f795042e0552153c"><code>5c25861</code></a>
AI: Redact screenshot base64 image data in formatEventForAI</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/74d2aa528b8d49afb7ddfb27517f734eba42599d"><code>74d2aa5</code></a>
AI: support initial context widgets for performance traces</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/33dde33039de1ed72b34fb7abbb1322d20c0ce74"><code>33dde33</code></a>
AIv2: add getInsightDetails tool to performance skill</li>
<li>Additional commits viewable in <a
href="https://github.com/ChromeDevTools/devtools-frontend/compare/eaad2491924990cb310a4c753b2851e64d515f00...9cf264b26b39a9e8382f795a9084ddcd7a290937">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This makes it harder to pass wrong arguments to the CLI tools.
This changes the internal responsibility: validatePath is the only place
that is expected to follow symlinks if it can. It then returns a
resolved path for all consumers in the MCP server who are expected not
to follow symlinks.

This is to be combined with the followSymlinks=false setting in
puppeteer/puppeteer#15335
…585)

Currently tools that require --memoryDebugging cannot directly be
invoked from the CLI. The server needs to be start explicitly with the
--memoryDebugging flag first. This PR makes --memoryDebugging a default
for the CLI.
`query_heapsnapshot_objects` allows the agent to filter objects by
properties like class name, self size, retained size, property name
and/or detachedness. The resulting list of objects can be sorted as
well.
…ith 3 updates (#2581)

Bumps the dev-dependencies group with 3 updates in the / directory:
[@blackwell-systems/gcf](https://github.com/blackwell-systems/gcf-typescript),
[@toon-format/toon](https://github.com/toon-format/toon) and
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node).

Updates `@blackwell-systems/gcf` from 2.4.0 to 2.5.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/blackwell-systems/gcf-typescript/releases">@​blackwell-systems/gcf's
releases</a>.</em></p>
<blockquote>
<h2>v2.5.2</h2>
<ul>
<li><strong>Score rounding fix (SPEC 5, spec v3.5.1 errata).</strong>
The graph node-line <code>score</code> now rounds half-to-even on the
exact IEEE-754 double, matching the Go/Rust/Python/Swift/.NET reference.
The previous <code>Number.prototype.toFixed</code> formatter rounded
half-up, so it diverged at exact binary midpoints (<code>0.125</code>
-&gt; <code>0.13</code> instead of <code>0.12</code>, <code>0.625</code>
-&gt; <code>0.63</code> instead of <code>0.62</code>) - a silent,
non-interoperable wire difference. Pinned by the new
<code>graph-encode/004_score_midpoint_rounding</code> conformance
fixture. Encoding is unchanged for every non-midpoint score.</li>
</ul>
<p>Part of spec <a
href="https://github.com/blackwell-systems/gcf/releases/tag/v3.5.1">v3.5.1</a>.</p>
<h2>v2.5.1</h2>
<p>Decoders now reject a declared section count (<code>[N]</code>) that
does not match the actual number of items, in both directions, per SPEC
Section 13 (Count Validation). A declared count smaller than the items
present was previously treated as a read limit and the surplus was
dropped; it is now an error. This applies to the generic tabular,
keyed-map, and root-array forms, the delta and full-set decoders, and
the graph edge section.</p>
<p>Valid payloads are unaffected and encoding is unchanged: encoders
always emit accurate counts, so this only changes how malformed or
externally produced input is handled, rejecting it rather than silently
truncating. New shared conformance fixtures pin the behavior in both
directions.</p>
<h2>v2.5.0: Keyed-tabular map encoding</h2>
<p>Keyed-tabular map encoding (GCF spec v3.5.0).</p>
<h2>Highlights</h2>
<p><strong>Keyed-tabular map encoding (SPEC §7.2a).</strong> A JSON
object whose values are all objects forming a tabular set now encodes as
a keyed table: the shared value fields are declared once in a header,
with one key-prefixed row per member (<code>## [N:]{key,...}</code>). It
is canonical by default, works in nested and streaming positions, and
reuses generic delta with the map key as the identity, so an
object-of-objects that recurs across an agent loop sends only what
changed.</p>
<h2>Also in this release</h2>
<ul>
<li><strong>Negative zero</strong> canonicalizes to <code>0</code> for
both integer and floating-point values (SPEC §2.3.1).</li>
<li><strong>Canonical-output alignment</strong> across all six SDKs:
object key ordering, graph header fields, and symbol ordering follow the
specification and reference implementation exactly.</li>
</ul>
<h2>Compatibility</h2>
<p>Additive. Existing payloads are unaffected. A pre-v3.5 decoder
rejects the <code>[N:]</code> keyed-map marker, so decoders should be
updated to read v3.5 output.</p>
<h2>Quality</h2>
<p>Verified by the shared cross-language conformance suite (byte-exact
across all six SDKs), a re-encode idempotence check on the generic,
graph, and delta profiles, and a differential cross-SDK fuzz in which
the tree-sitter grammar parses every wire the SDKs emit.</p>
<p>Spec release: <a
href="https://github.com/blackwell-systems/gcf/releases/tag/v3.5.0">https://github.com/blackwell-systems/gcf/releases/tag/v3.5.0</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/blackwell-systems/gcf-typescript/blob/main/CHANGELOG.md">@​blackwell-systems/gcf's
changelog</a>.</em></p>
<blockquote>
<h2>v2.5.2 (2026-08-09)</h2>
<ul>
<li><strong>Score rounding fix (SPEC 5, spec v3.5.1 errata).</strong>
The graph node-line <code>score</code> now rounds half-to-even on the
exact IEEE-754 double, matching the Go/Rust/Python/Swift/.NET reference.
The previous <code>Number.prototype.toFixed</code> formatter rounded
half-up, so it diverged at exact binary midpoints (<code>0.125</code>
-&gt; <code>0.13</code> instead of <code>0.12</code>, <code>0.625</code>
-&gt; <code>0.63</code> instead of <code>0.62</code>) - a silent,
non-interoperable wire difference. Pinned by the new
<code>graph-encode/004_score_midpoint_rounding</code> conformance
fixture. Encoding is unchanged for every non-midpoint score.</li>
</ul>
<h2>v2.5.1 (2026-08-07)</h2>
<ul>
<li>Decoders now reject a declared <code>[N]</code> section count that
does not match the actual item count, in both directions, per SPEC
Section 13 (Count Validation). A declared count smaller than the rows or
entries present was previously read as a limit and the surplus was
dropped; it is now an error. Covers the generic tabular, keyed-map, and
root-array forms, the delta and full-set decoders, and the graph
<code>## edges [N]</code> section. Valid payloads and encoding are
unchanged.</li>
</ul>
<h2>v2.5.0 (2026-08-07)</h2>
<h3>Added</h3>
<ul>
<li>Keyed-tabular map encoding (SPEC 7.2a): a JSON object whose values
are all objects forming a tabular set is encoded as a keyed table
(<code>## [N:]{key,...}</code>) - the shared value fields are declared
once, with one key-prefixed row per member. Canonical by default,
supported in nested and streaming positions, and integrated with generic
delta using the map key as the identity.</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Negative zero is canonicalized to <code>0</code> for both integer
and floating-point values (SPEC 2.3.1).</li>
<li>Canonical-output alignment across all six SDKs: object key ordering,
graph header fields, and symbol ordering follow the specification and
reference implementation exactly.</li>
</ul>
<h3>Testing</h3>
<ul>
<li>Conformance runners assert re-encode idempotence
(<code>encode(decode(x)) == x</code>) for the generic, graph, and delta
profiles; a differential cross-SDK fuzz was added to the verification
suite.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/4a440ce84b92f5ce268140c5a480a8f55af9def5"><code>4a440ce</code></a>
release: v2.5.2 — score rounding half-to-even (spec v3.5.1 errata)</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/715f5f9dab631e4ef7acdcc36965b1cbc6674060"><code>715f5f9</code></a>
fix: round graph score half-to-even to match the reference (SPEC 5)</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/82aa33f4d2646d634caefbe0ec9896deadb5c37e"><code>82aa33f</code></a>
docs: update version references (spec v3.5.0, v2.5.1 / Go v1.6.1 / Swift
v2.6...</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/929f8496d98b1374e9de358eddf58efe01f79802"><code>929f849</code></a>
fix: enforce declared [N] section counts in both directions (SPEC
13)</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/53df904bfae84d8f45718fc014d9d640402f564d"><code>53df904</code></a>
docs: absolute README image/LICENSE URLs for guaranteed npm page
rendering</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/6b71173f355981bf02e91f0e7bb20a0371acb4a5"><code>6b71173</code></a>
chore: bump to 2.5.0</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/d7e849a085db3271e08220a1ec8eaf381257520d"><code>d7e849a</code></a>
conformance: assert graph + generic-delta re-encode idempotence</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/46ad9a10276acb958c2d3b269cda6ac0c0061f7f"><code>46ad9a1</code></a>
encode: canonicalize negative zero to 0 (SPEC 2.3.1)</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/7b161aca63e7987fc94986312018bdf7c0772ae8"><code>7b161ac</code></a>
decode: preserve object field order (Map-based reconstruction)</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/ae21ad2adeacc07f6550302a45b049f3e9dbe4d8"><code>ae21ad2</code></a>
generic: preserve first-observed object key order via order-preserving
parse</li>
<li>Additional commits viewable in <a
href="https://github.com/blackwell-systems/gcf-typescript/compare/v2.4.0...v2.5.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `@toon-format/toon` from 4.1.0 to 4.1.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/toon-format/toon/releases">@​toon-format/toon's
releases</a>.</em></p>
<blockquote>
<h2>v4.1.1</h2>
<h3>   🐞 Bug Fixes</h3>
<ul>
<li>Write CLI diagnostics to stderr so stdout carries results only  - 
by <a
href="https://github.com/johannschopplich"><code>@​johannschopplich</code></a>
<a href="https://github.com/toon-format/toon/commit/4675789"><!-- raw
HTML omitted -->(46757)<!-- raw HTML omitted --></a></li>
<li>Terminate the last line of file output with a newline  -  by <a
href="https://github.com/johannschopplich"><code>@​johannschopplich</code></a>
<a href="https://github.com/toon-format/toon/commit/c3d7c2f"><!-- raw
HTML omitted -->(c3d7c)<!-- raw HTML omitted --></a></li>
<li>Treat a tab-indented hash line as content, not a comment  -  by <a
href="https://github.com/johannschopplich"><code>@​johannschopplich</code></a>
<a href="https://github.com/toon-format/toon/commit/6e822b3"><!-- raw
HTML omitted -->(6e822)<!-- raw HTML omitted --></a></li>
<li>Reject a raw string whose comment marker follows a byte-order mark
 -  by <a
href="https://github.com/johannschopplich"><code>@​johannschopplich</code></a>
<a href="https://github.com/toon-format/toon/commit/bde6eae"><!-- raw
HTML omitted -->(bde6e)<!-- raw HTML omitted --></a></li>
</ul>
<h5>    <a
href="https://github.com/toon-format/toon/compare/v4.1.0...v4.1.1">View
changes on GitHub</a></h5>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/toon-format/toon/commit/a9e6d97eca931379824f3b6a1ba8fbfbda7d3c53"><code>a9e6d97</code></a>
chore: release v4.1.1</li>
<li><a
href="https://github.com/toon-format/toon/commit/349941c83c724165680b3d35e657e93919be9ea1"><code>349941c</code></a>
chore: update <code>@​toon-format/spec</code> to v4.1.1</li>
<li><a
href="https://github.com/toon-format/toon/commit/bfca235d6308439bb39707631ec4506fd21f84c1"><code>bfca235</code></a>
docs: list the misplaced scalar line among the both-mode decode
errors</li>
<li><a
href="https://github.com/toon-format/toon/commit/bde6eae9855f083f08380bd59164e424fabce94b"><code>bde6eae</code></a>
fix: reject a raw string whose comment marker follows a byte-order
mark</li>
<li><a
href="https://github.com/toon-format/toon/commit/6e822b3d961967e9a78db4edb3f9aebe4a9be22c"><code>6e822b3</code></a>
fix: treat a tab-indented hash line as content, not a comment</li>
<li><a
href="https://github.com/toon-format/toon/commit/1ab9e43a3f2c4cd7870841267380af4668030339"><code>1ab9e43</code></a>
style: trim package and docs comments to intent and constraints</li>
<li><a
href="https://github.com/toon-format/toon/commit/0d9945b235ae10913adce78366b2a29b70c545e8"><code>0d9945b</code></a>
style: mark benchmark question sections with regions</li>
<li><a
href="https://github.com/toon-format/toon/commit/c702deb1580c98fdabca6d0c9ab39ac175f9f419"><code>c702deb</code></a>
style: trim benchmark comments to intent and constraints</li>
<li><a
href="https://github.com/toon-format/toon/commit/96c53e5b1b36549dfbb1f4ed1209f4954ca86484"><code>96c53e5</code></a>
style: open shared boundary docs with a verb and name values as
nouns</li>
<li><a
href="https://github.com/toon-format/toon/commit/05adaf343d89947bd408ab89abc8bbd85e9e1505"><code>05adaf3</code></a>
build: update the lockfile after dropping the runtime dependencies</li>
<li>Additional commits viewable in <a
href="https://github.com/toon-format/toon/compare/v4.1.0...v4.1.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `@types/node` from 26.1.2 to 26.2.0
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">compare
view</a></li>
</ul>
</details>
<br />

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Roscino <nroscino@google.com>
…32095` (#2590)

Bumps
[third_party/devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend)
from `9cf264b` to `9e32095`.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/9e3209578a3ba27cd3af620392bd10027b59c0fe"><code>9e32095</code></a>
Migrate jpeg-xl-format-disabled setting to SettingDescriptor</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/3b38206ea24025ff30ad25abd5ed5eb74da49921"><code>3b38206</code></a>
Fix Build.gn deps</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/933872b3f8520add8c43e30adf00c32622f6bdf4"><code>933872b</code></a>
Update What's new content for Chrome 152</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/1949175a365ccb0dc57e6fc9210cbc5bae3e56cb"><code>1949175</code></a>
Gate safe-area emulation and cutouts behind feature flag</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/66654ee4a48b89e26442d62273cc4415a84573d1"><code>66654ee</code></a>
[Connection Allowlist] Enforce for FedCM API - Add DevTools frontend
issues</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/c3217602c08c5371d8662ec9142194a08ee5a0ca"><code>c321760</code></a>
Fix laggy resizing in device mode view</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/bdbae4f8789745900f1614cc08c3425a40d59562"><code>bdbae4f</code></a>
[object_ui] Use ObjectPropertiesSectionWidget in ObjectPropertiesSection
tests</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/1298cb53b294e3eb6cc7e4a46ef6062fe65a1079"><code>1298cb5</code></a>
Roll puppeteer-core</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/24bebc09b9cd1311482f0ce8376b9945033f3681"><code>24bebc0</code></a>
Instantiate SearchableView in the View of SourcesView</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/0ca4d017425e066920727653c1c3a7c2943a2ea8"><code>0ca4d01</code></a>
Migrate avif-format-disabled setting to SettingDescriptor</li>
<li>Additional commits viewable in <a
href="https://github.com/ChromeDevTools/devtools-frontend/compare/9cf264b26b39a9e8382f795a9084ddcd7a290937...9e3209578a3ba27cd3af620392bd10027b59c0fe">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Replace separate minimum and maximum heap-size filters with range
strings. Values can use byte counts or units, such as `1024-2048`,
`1MB-2MB`, `-1MiB`, and `1GiB-`. A bare value such as `10M` is treated
as a minimum.

The range syntax is used by `query_heapsnapshot_objects` for retained
and self sizes and by `get_heapsnapshot_edges` for retained sizes.
…ates (#2582)

Bumps the bundled group with 2 updates in the / directory:
[core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js)
and [puppeteer](https://github.com/puppeteer/puppeteer).

Updates `core-js` from 3.49.0 to 3.50.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/zloirock/core-js/releases">core-js's
releases</a>.</em></p>
<blockquote>
<h2>3.50.0 - 2026.08.05</h2>
<ul>
<li>Changes <a
href="https://github.com/zloirock/core-js/compare/v3.49.0...v3.50.0">v3.49.0...v3.50.0</a>
(138 commits)</li>
<li><a href="https://github.com/tc39/proposal-joint-iteration">Joint
iteration proposal</a>:
<ul>
<li>Built-ins:
<ul>
<li><code>Iterator.zip</code></li>
<li><code>Iterator.zipKeyed</code></li>
</ul>
</li>
<li>Moved to stable ES, <a
href="https://github.com/tc39/proposals/commit/7e2d9a45e71525984d4c35313a3daeb4260773ef">May
2026 TC39 meeting</a></li>
<li>Added <code>es.</code> namespace modules, <code>/es/</code> and
<code>/stable/</code> namespace entries</li>
</ul>
</li>
<li><a
href="https://github.com/tc39/proposal-iterator-chunking"><code>Iterator</code>
chunking proposal</a>:
<ul>
<li>Built-ins:
<ul>
<li><code>Iterator.prototype.chunks</code></li>
<li><code>Iterator.prototype.windows</code></li>
</ul>
</li>
<li>Throw a <code>TypeError</code> instead of <code>RangeError</code> on
non-integer number <code>chunkSize</code> / <code>windowSize</code>,
following [tc39/proposal-iterator-chunking/<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/30">#30</a>](<a
href="https://redirect.github.com/tc39/proposal-iterator-chunking/pull/30">tc39/proposal-iterator-chunking#30</a>)</li>
<li>Moved to stage 3, <a
href="https://github.com/tc39/proposals/commit/7226f0af93443025010efcad219115cec7dc8b2a">May
2026 TC39 meeting</a></li>
<li>Added <code>/actual/</code> namespace entries, unconditional forced
replacement changed to feature detection</li>
</ul>
</li>
<li>Added <a
href="https://github.com/tc39/proposal-iterator-includes"><code>Iterator</code>
includes stage 3 proposal</a>:
<ul>
<li>Added built-in:
<ul>
<li><code>Iterator.prototype.includes</code></li>
</ul>
</li>
</ul>
</li>
<li>Added <a
href="https://github.com/tc39/proposal-iterator-join"><code>Iterator</code>
join stage 3 proposal</a>:
<ul>
<li>Added built-in:
<ul>
<li><code>Iterator.prototype.join</code></li>
</ul>
</li>
</ul>
</li>
<li>Added <a
href="https://github.com/tc39/proposal-await-dictionary">Await
dictionary of Promises stage 3 proposal</a>:
<ul>
<li>Added built-ins:
<ul>
<li><code>Promise.allKeyed</code></li>
<li><code>Promise.allSettledKeyed</code></li>
</ul>
</li>
</ul>
</li>
<li>Throw a <code>RangeError</code> on finite unsafe integer
<code>limit</code> in <code>Iterator.prototype.{ drop, take }</code>,
following [tc39/ecma262/<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/3776">#3776</a>](<a
href="https://redirect.github.com/tc39/ecma262/pull/3776">tc39/ecma262#3776</a>)</li>
<li>Use <code>PromiseResolve</code> semantics in
<code>Promise.try</code>, following [tc39/ecma262/<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/3883">#3883</a>](<a
href="https://redirect.github.com/tc39/ecma262/pull/3883">tc39/ecma262#3883</a>)</li>
<li>Added detection of missed <a
href="https://bugs.webkit.org/show_bug.cgi?id=297532">Webkit ~ Safari
&lt; 26.2 <code>Iterator.prototype.flatMap</code> bug</a> case, <a
href="https://redirect.github.com/zloirock/core-js/issues/1538">#1538</a></li>
<li>Deno 2.9+ <a
href="https://redirect.github.com/denoland/deno/pull/35192"><em>replaces</em>
<code>Object.prototype.__proto__</code></a> instead of removing it, so
the feature detection updated</li>
<li>Fixed <code>JSON.stringify</code> polyfill with an array replacer -
keys order now follows the replacer, inherited and non-enumerable
properties are no longer ignored, <a
href="https://redirect.github.com/zloirock/core-js/issues/1539">#1539</a></li>
<li>Make <code>URL</code> / <code>URLSearchParams</code> parsing a
little more correct (char sets, percent coding, etc)</li>
<li>Ensure opaque paths always roundtrip in URL polyfill (still without
adding to feature detection), <a
href="https://redirect.github.com/whatwg/url/pull/844">whatwg/url#844</a></li>
<li>Fix <code>URL#toJSON</code> when <code>URL#toString</code> is
reassigned after core-js is imported</li>
<li>Fixed possible crash on some keys in <code>Symbol.for</code></li>
<li>Some <code>get-iterator</code> / <code>get-iterator-method</code>
fixes</li>
<li>Fixed <code>String.prototype.{ match, search }</code> polyfills
conversion order</li>
<li>Added missed <code>MAX_SAFE_INTEGER</code> excess check in
<code>Array.from</code> and <code>{ Map, Object }.groupBy</code>
polyfills</li>
<li>Improved the way of inner iterators cleaning in iterator
helpers</li>
<li>Improved accuracy of <code>Math.{ asinh, cbrt, log1p }</code>
polyfills with big and small values</li>
<li>Improved performance of <code>Uint8Array</code> base64 methods</li>
<li>Improved performance of <code>escape</code></li>
<li>Slight performance improvement for engines with native
<code>Array.prototype.fill</code> on <code>ArrayBuffer</code>
constructor and <code>%TypedArray%.prototype.fill</code></li>
<li>Clarify supported Node versions in <code>package.json</code> of some
missed packages (just to satisfy <code>publint</code>)</li>
<li>Compat data improvements:
<ul>
<li>Following [tc39/ecma262/<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/3776">#3776</a>](<a
href="https://redirect.github.com/tc39/ecma262/pull/3776">tc39/ecma262#3776</a>),
<code>Iterator.prototype.{ drop, take }</code> properly supported from:
<ul>
<li><a
href="https://github.com/v8/v8/commit/ce52c1d84268311648c9362e8d3bbb08fc58bd3c">V8
~ Chrome 150</a></li>
<li>Safari 27.0</li>
<li>Bun 1.4.0</li>
</ul>
</li>
<li>Following [tc39/ecma262/<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/3883">#3883</a>](<a
href="https://redirect.github.com/tc39/ecma262/pull/3883">tc39/ecma262#3883</a>),
<code>Promise.try</code> marked as not properly supported in all
engines</li>
<li><a
href="https://github.com/tc39/proposal-iterator-chunking"><code>Iterator.prototype.{
chunks, windows }</code></a> marked as <a
href="https://bugzilla.mozilla.org/show_bug.cgi?id=2047997">shipped in
FF154</a></li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/zloirock/core-js/blob/master/CHANGELOG.md">core-js's
changelog</a>.</em></p>
<blockquote>
<h3><a
href="https://github.com/zloirock/core-js/releases/tag/v3.50.0">3.50.0 -
2026.08.05</a></h3>
<ul>
<li>Changes <a
href="https://github.com/zloirock/core-js/compare/v3.49.0...v3.50.0">v3.49.0...v3.50.0</a>
(138 commits)</li>
<li><a href="https://github.com/tc39/proposal-joint-iteration">Joint
iteration proposal</a>:
<ul>
<li>Built-ins:
<ul>
<li><code>Iterator.zip</code></li>
<li><code>Iterator.zipKeyed</code></li>
</ul>
</li>
<li>Moved to stable ES, <a
href="https://github.com/tc39/proposals/commit/7e2d9a45e71525984d4c35313a3daeb4260773ef">May
2026 TC39 meeting</a></li>
<li>Added <code>es.</code> namespace modules, <code>/es/</code> and
<code>/stable/</code> namespace entries</li>
</ul>
</li>
<li><a
href="https://github.com/tc39/proposal-iterator-chunking"><code>Iterator</code>
chunking proposal</a>:
<ul>
<li>Built-ins:
<ul>
<li><code>Iterator.prototype.chunks</code></li>
<li><code>Iterator.prototype.windows</code></li>
</ul>
</li>
<li>Throw a <code>TypeError</code> instead of <code>RangeError</code> on
non-integer number <code>chunkSize</code> / <code>windowSize</code>,
following [tc39/proposal-iterator-chunking/<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/30">#30</a>](<a
href="https://redirect.github.com/tc39/proposal-iterator-chunking/pull/30">tc39/proposal-iterator-chunking#30</a>)</li>
<li>Moved to stage 3, <a
href="https://github.com/tc39/proposals/commit/7226f0af93443025010efcad219115cec7dc8b2a">May
2026 TC39 meeting</a></li>
<li>Added <code>/actual/</code> namespace entries, unconditional forced
replacement changed to feature detection</li>
</ul>
</li>
<li>Added <a
href="https://github.com/tc39/proposal-iterator-includes"><code>Iterator</code>
includes stage 3 proposal</a>:
<ul>
<li>Added built-in:
<ul>
<li><code>Iterator.prototype.includes</code></li>
</ul>
</li>
</ul>
</li>
<li>Added <a
href="https://github.com/tc39/proposal-iterator-join"><code>Iterator</code>
join stage 3 proposal</a>:
<ul>
<li>Added built-in:
<ul>
<li><code>Iterator.prototype.join</code></li>
</ul>
</li>
</ul>
</li>
<li>Added <a
href="https://github.com/tc39/proposal-await-dictionary">Await
dictionary of Promises stage 3 proposal</a>:
<ul>
<li>Added built-ins:
<ul>
<li><code>Promise.allKeyed</code></li>
<li><code>Promise.allSettledKeyed</code></li>
</ul>
</li>
</ul>
</li>
<li>Throw a <code>RangeError</code> on finite unsafe integer
<code>limit</code> in <code>Iterator.prototype.{ drop, take }</code>,
following [tc39/ecma262/<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/3776">#3776</a>](<a
href="https://redirect.github.com/tc39/ecma262/pull/3776">tc39/ecma262#3776</a>)</li>
<li>Use <code>PromiseResolve</code> semantics in
<code>Promise.try</code>, following [tc39/ecma262/<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/3883">#3883</a>](<a
href="https://redirect.github.com/tc39/ecma262/pull/3883">tc39/ecma262#3883</a>)</li>
<li>Added detection of missed <a
href="https://bugs.webkit.org/show_bug.cgi?id=297532">Webkit ~ Safari
&lt; 26.2 <code>Iterator.prototype.flatMap</code> bug</a> case, <a
href="https://redirect.github.com/zloirock/core-js/issues/1538">#1538</a></li>
<li>Deno 2.9+ <a
href="https://redirect.github.com/denoland/deno/pull/35192"><em>replaces</em>
<code>Object.prototype.__proto__</code></a> instead of removing it, so
the feature detection updated</li>
<li>Fixed <code>JSON.stringify</code> polyfill with an array replacer -
keys order now follows the replacer, inherited and non-enumerable
properties are no longer ignored, <a
href="https://redirect.github.com/zloirock/core-js/issues/1539">#1539</a></li>
<li>Make <code>URL</code> / <code>URLSearchParams</code> parsing a
little more correct (char sets, percent coding, etc)</li>
<li>Ensure opaque paths always roundtrip in URL polyfill (still without
adding to feature detection), <a
href="https://redirect.github.com/whatwg/url/pull/844">whatwg/url#844</a></li>
<li>Fix <code>URL#toJSON</code> when <code>URL#toString</code> is
reassigned after core-js is imported</li>
<li>Fixed possible crash on some keys in <code>Symbol.for</code></li>
<li>Some <code>get-iterator</code> / <code>get-iterator-method</code>
fixes</li>
<li>Fixed <code>String.prototype.{ match, search }</code> polyfills
conversion order</li>
<li>Added missed <code>MAX_SAFE_INTEGER</code> excess check in
<code>Array.from</code> and <code>{ Map, Object }.groupBy</code>
polyfills</li>
<li>Improved the way of inner iterators cleaning in iterator
helpers</li>
<li>Improved accuracy of <code>Math.{ asinh, cbrt, log1p }</code>
polyfills with big and small values</li>
<li>Improved performance of <code>Uint8Array</code> base64 methods</li>
<li>Improved performance of <code>escape</code></li>
<li>Slight performance improvement for engines with native
<code>Array.prototype.fill</code> on <code>ArrayBuffer</code>
constructor and <code>%TypedArray%.prototype.fill</code></li>
<li>Clarify supported Node versions in <code>package.json</code> of some
missed packages (just to satisfy <code>publint</code>)</li>
<li>Compat data improvements:
<ul>
<li>Following [tc39/ecma262/<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/3776">#3776</a>](<a
href="https://redirect.github.com/tc39/ecma262/pull/3776">tc39/ecma262#3776</a>),
<code>Iterator.prototype.{ drop, take }</code> properly supported from:
<ul>
<li><a
href="https://github.com/v8/v8/commit/ce52c1d84268311648c9362e8d3bbb08fc58bd3c">V8
~ Chrome 150</a></li>
<li>Safari 27.0</li>
<li>Bun 1.4.0</li>
</ul>
</li>
<li>Following [tc39/ecma262/<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/3883">#3883</a>](<a
href="https://redirect.github.com/tc39/ecma262/pull/3883">tc39/ecma262#3883</a>),
<code>Promise.try</code> marked as not properly supported in all
engines</li>
<li><a
href="https://github.com/tc39/proposal-iterator-chunking"><code>Iterator.prototype.{
chunks, windows }</code></a> marked as <a
href="https://bugzilla.mozilla.org/show_bug.cgi?id=2047997">shipped in
FF154</a></li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/zloirock/core-js/commit/486e8d62611aa2f5f2321329b0c168135bf22861"><code>486e8d6</code></a>
v3.50.0</li>
<li><a
href="https://github.com/zloirock/core-js/commit/6a78c6a8a9afd39da026744440c26ecab0170ed7"><code>6a78c6a</code></a>
Cache URL#toString (<a
href="https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/1533">#1533</a>)</li>
<li><a
href="https://github.com/zloirock/core-js/commit/5d4f1388b709cf8861337a8c72dd119b072355e9"><code>5d4f138</code></a>
fix: correct Iterator zip entry exports</li>
<li><a
href="https://github.com/zloirock/core-js/commit/7e8e1cc000907b14271c6fc3f59b1e58e5dc0cfe"><code>7e8e1cc</code></a>
rename method for consistency</li>
<li><a
href="https://github.com/zloirock/core-js/commit/25071152ee6dece312a0635d2ee00c9ece68e991"><code>2507115</code></a>
fix <code>JSON.stringify</code> polyfill with an array
replacer<code>JSON.stringify</code> polyfill...</li>
<li><a
href="https://github.com/zloirock/core-js/commit/40363429c2d917175fd0c3286e2cdf6787dc7f62"><code>4036342</code></a>
make <code>URL</code> / <code>URLSearchParams</code> parsing a little
more correct (char sets, perc...</li>
<li><a
href="https://github.com/zloirock/core-js/commit/37375badb6e700eee527aaf53c2cd732228e9753"><code>37375ba</code></a>
fix order of detection</li>
<li><a
href="https://github.com/zloirock/core-js/commit/276de479a7efd3176988a0191620db5b24121bb0"><code>276de47</code></a>
add detection of missed Webkit ~ Safari &lt; 26.2
<code>Iterator.prototype.flatMap</code> b...</li>
<li><a
href="https://github.com/zloirock/core-js/commit/6e4a942e62409ac8b7cbf89d314e1b7dc1af0548"><code>6e4a942</code></a>
use <code>PromiseResolve</code> semantics in
<code>Promise.try</code></li>
<li><a
href="https://github.com/zloirock/core-js/commit/ff52b9f31b16d9e01557ce4a7ba50a55344a707a"><code>ff52b9f</code></a>
backport await dictionary stage 3 proposal</li>
<li>Additional commits viewable in <a
href="https://github.com/zloirock/core-js/commits/v3.50.0/packages/core-js">compare
view</a></li>
</ul>
</details>
<br />

Updates `puppeteer` from 25.6.0 to 25.8.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/puppeteer/puppeteer/releases">puppeteer's
releases</a>.</em></p>
<blockquote>
<h2>puppeteer-core: v25.8.0</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v25.7.0...puppeteer-core-v25.8.0">25.8.0</a>
(2026-08-17)</h2>
<h3>🎉 Features</h3>
<ul>
<li>support followSymlinks option (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15335">#15335</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/af6a23dde5e95516929b24b62f2eac4e71fa14c8">af6a23d</a>)</li>
</ul>
<h3>🛠️ Fixes</h3>
<ul>
<li>computeSystemExecutablePath support validatePath (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15340">#15340</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/73da9a41b32f26e995ac00b50c958e6e95fb2be2">73da9a4</a>)</li>
<li>launch browsers in detached mode on Windows to fix flakiness (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15339">#15339</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/8e1022b543f27d9d517310435aaa2b299fe99d46">8e1022b</a>)</li>
<li>remove redundant overwrite and file access from ScreenRecorder (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15352">#15352</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/61a16759e01ed622ffac0d0426d35180f7ab4064">61a1675</a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li><code>@​puppeteer/browsers</code> bumped from 3.2.0 to 3.2.1</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2>puppeteer: v25.8.0</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.7.0...puppeteer-v25.8.0">25.8.0</a>
(2026-08-17)</h2>
<h3>🎉 Features</h3>
<ul>
<li>support followSymlinks option (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15335">#15335</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/af6a23dde5e95516929b24b62f2eac4e71fa14c8">af6a23d</a>)</li>
</ul>
<h3>🛠️ Fixes</h3>
<ul>
<li>tell the user how to recover a partial browser folder (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15319">#15319</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/bbc51bd2eff8a4423bf8432c41a31178b13ea9f7">bbc51bd</a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li><code>@​puppeteer/browsers</code> bumped from 3.2.0 to 3.2.1</li>
<li>puppeteer-core bumped from 25.7.0 to 25.8.0</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2>puppeteer-core: v25.7.0</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v25.6.0...puppeteer-core-v25.7.0">25.7.0</a>
(2026-08-13)</h2>
<h3>🎉 Features</h3>
<ul>
<li>roll to Chrome 152.0.7977.42 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15330">#15330</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/0c187db99161fe49d7d966d242f131c63337e76e">0c187db</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md">puppeteer's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.7.0...puppeteer-v25.8.0">25.8.0</a>
(2026-08-17)</h2>
<h3>🎉 Features</h3>
<ul>
<li>support followSymlinks option (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15335">#15335</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/af6a23dde5e95516929b24b62f2eac4e71fa14c8">af6a23d</a>)</li>
</ul>
<h3>🛠️ Fixes</h3>
<ul>
<li>computeSystemExecutablePath support validatePath (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15340">#15340</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/73da9a41b32f26e995ac00b50c958e6e95fb2be2">73da9a4</a>)</li>
<li>launch browsers in detached mode on Windows to fix flakiness (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15339">#15339</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/8e1022b543f27d9d517310435aaa2b299fe99d46">8e1022b</a>)</li>
<li>remove redundant overwrite and file access from ScreenRecorder (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15352">#15352</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/61a16759e01ed622ffac0d0426d35180f7ab4064">61a1675</a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li><code>@​puppeteer/browsers</code> bumped from 3.2.0 to 3.2.1</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.6.0...puppeteer-v25.7.0">25.7.0</a>
(2026-08-13)</h2>
<h3>🎉 Features</h3>
<ul>
<li>roll to Chrome 152.0.7977.42 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15330">#15330</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/0c187db99161fe49d7d966d242f131c63337e76e">0c187db</a>)</li>
<li><strong>tracing:</strong> support bufferSize option in tracing.start
(<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15328">#15328</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/987f146b85115b73f8415c1c1b93d3b42576f058">987f146</a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li>puppeteer-core bumped from 25.6.0 to 25.7.0</li>
</ul>
</li>
</ul>
</li>
</ul>
<h3>🛠️ Fixes</h3>
<ul>
<li>logger calling causing crashes (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15338">#15338</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/eb874a58e55bd7221bca35d4216dc298b1f8ee86">eb874a5</a>)</li>
<li>roll to Firefox 153.0.4 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15329">#15329</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/df5a5241108b6856d8198b019e6772c001da2729">df5a524</a>)</li>
</ul>
<h3>🏗️ Refactor</h3>
<ul>
<li>use Desposable stacks to track listeners (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15332">#15332</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/df2d71988ef7b2a857ff66615cdc28a857078e9c">df2d719</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/8a95741d498c183c1a0d80a61bad7ecda12755f2"><code>8a95741</code></a>
chore: release main (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15341">#15341</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/bbc51bd2eff8a4423bf8432c41a31178b13ea9f7"><code>bbc51bd</code></a>
fix: tell the user how to recover a partial browser folder (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15319">#15319</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/61a16759e01ed622ffac0d0426d35180f7ab4064"><code>61a1675</code></a>
fix: remove redundant overwrite and file access from ScreenRecorder (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15352">#15352</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/8e1022b543f27d9d517310435aaa2b299fe99d46"><code>8e1022b</code></a>
fix: launch browsers in detached mode on Windows to fix flakiness (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15339">#15339</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/af6a23dde5e95516929b24b62f2eac4e71fa14c8"><code>af6a23d</code></a>
feat: support followSymlinks option (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15335">#15335</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/73da9a41b32f26e995ac00b50c958e6e95fb2be2"><code>73da9a4</code></a>
fix: computeSystemExecutablePath support validatePath (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15340">#15340</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/58e5798615cd9aaeaab6766dd716aa7b24c75595"><code>58e5798</code></a>
chore: release main (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15331">#15331</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/0c187db99161fe49d7d966d242f131c63337e76e"><code>0c187db</code></a>
feat: roll to Chrome 152.0.7977.42 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15330">#15330</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/eb874a58e55bd7221bca35d4216dc298b1f8ee86"><code>eb874a5</code></a>
fix: logger calling causing crashes (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15338">#15338</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/df2d71988ef7b2a857ff66615cdc28a857078e9c"><code>df2d719</code></a>
refactor: use Desposable stacks to track listeners (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15332">#15332</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.6.0...puppeteer-v25.8.0">compare
view</a></li>
</ul>
</details>
<br />

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Roscino <nroscino@google.com>
…cccaa` (#2595)

Bumps
[third_party/devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend)
from `9e32095` to `23cccaa`.

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicholas Roscino <nroscino@google.com>
…db53e` (#2602)

Bumps
[third_party/devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend)
from `23cccaa` to `6fdb53e`.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/6fdb53e0f7a5cb1ebf16e40c45439a5c8007d9be"><code>6fdb53e</code></a>
Ensure consistent UI Strings in
front_end/ui/legacy/components/color_picker</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/f6da8dd83c8c18e9b64180e8cd2fe4984357ee59"><code>f6da8dd</code></a>
Update DevTools DEPS (trusted)</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/22bb576673eb1d71a3687d01143627273339d53b"><code>22bb576</code></a>
Migrate ai generation to foundation modules</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/fbcc42e1a226c5fc90a8ac4f1dae563d0819be0c"><code>fbcc42e</code></a>
[WebAudio] Add renderQuantumSize to WebAudio pane</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/33602978cb8600203866060fbc2abc3ef3fcc76d"><code>3360297</code></a>
Update DevTools DEPS (trusted)</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/b1a5fba618574eb851e4f8634ea10aa57dac2330"><code>b1a5fba</code></a>
Ensure consistent UI strings in front_end/panels/elements</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/d65f8daf648bf0a5b069dfc630132f255071c5ec"><code>d65f8da</code></a>
Turn ai__code_completion model into a foundation module</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/02687ca0b5924c08cce1a5b5e6deea8028f28b2c"><code>02687ca</code></a>
Roll browser-protocol and CfT</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/73a8374649e639a7c78ec8750076c11cff2a5f01"><code>73a8374</code></a>
Update DevTools DEPS (trusted)</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/2c52a74d3ff556455771e7c25301dc99dbaf6252"><code>2c52a74</code></a>
Add visual logging contexts to Layers panel for comment anchoring</li>
<li>Additional commits viewable in <a
href="https://github.com/ChromeDevTools/devtools-frontend/compare/23cccaa78f7458a5aad99c1af98dc1856d2494a3...6fdb53e0f7a5cb1ebf16e40c45439a5c8007d9be">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Fixes #2531

## What changed

- factor the page's actual `window.devicePixelRatio` into screenshot
downscaling
- keep CDP clip dimensions in CSS pixels while bounding the resulting
bitmap dimensions
- add a regression test for the real `defaultViewport: null` path with a
forced 2x device scale factor

## Why

Screenshot source boxes and CDP clip dimensions are expressed in CSS
pixels, but the returned bitmap is scaled by the page's device pixel
ratio. The previous calculation compared the CSS width directly with
`screenshotMaxWidth`, so a 2x page could return an image twice the
configured bound.

The new calculation derives the clip scale from `box ×
devicePixelRatio`, making the limit apply to the image pixels sent to
the model.

## Validation

- `npm run check-format`
- `npm run build`
- `npm run test -- tests/tools/screenshot.test.ts
--test-name-pattern='honors screenshotMaxWidth at device scale factors
above 1'`
- `npm run test -- tests/tools/screenshot.test.ts
--test-skip-pattern='with full page resulting in a large screenshot'`

The new regression fails on `main` with a 200px-wide image and passes
with an exact 100px result after this change. I also attempted the full
suite with retries; this local environment still times out in unrelated
daemon/extension E2E tests and hits the existing
`Page.captureScreenshot: Page is too large` case, which reproduces on
pristine `main`.
Removes `--experimental-page-id-routing` making it the default behavior.
To go back to the previous behavior, pass `--pageIdRouting=false` when
starting the server.

---------

Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
Co-authored-by: Samiya Caur <samiyac@google.com>
…#2613)

Follow up #1777 

The flags for page id routing were added to the middle of
flag_usage_metrics.json. This change moves them to the end
🤖 I have created a release *beep* *boop*
---


##
[1.8.0](ChromeDevTools/chrome-devtools-mcp@chrome-devtools-mcp-v1.7.0...chrome-devtools-mcp-v1.8.0)
(2026-08-25)


### 🎉 Features

* Add additional params to get_heapsnapshot_edges
([#2561](ChromeDevTools/chrome-devtools-mcp#2561))
([b58c613](ChromeDevTools/chrome-devtools-mcp@b58c613))
* add optional stack traces to list_console_messages
([#2505](ChromeDevTools/chrome-devtools-mcp#2505))
([85c73a0](ChromeDevTools/chrome-devtools-mcp@85c73a0))
* add PWA automation tools
([#2430](ChromeDevTools/chrome-devtools-mcp#2430))
([0ea5c8d](ChromeDevTools/chrome-devtools-mcp@0ea5c8d)),
closes
[#2270](ChromeDevTools/chrome-devtools-mcp#2270)
* Add query_heapsnapshot MCP tool
([#2553](ChromeDevTools/chrome-devtools-mcp#2553))
([fadbf41](ChromeDevTools/chrome-devtools-mcp@fadbf41))
* allow evaluate_script to skip the stable DOM wait
([#2346](ChromeDevTools/chrome-devtools-mcp#2346))
([781e2fb](ChromeDevTools/chrome-devtools-mcp@781e2fb))
* make pageId required for page-scoped tools by default
([#1777](ChromeDevTools/chrome-devtools-mcp#1777))
([50a16fa](ChromeDevTools/chrome-devtools-mcp@50a16fa))
* Report memory kept alive by contexts in get_heapsnapshot_summary
([#2570](ChromeDevTools/chrome-devtools-mcp#2570))
([4103808](ChromeDevTools/chrome-devtools-mcp@4103808))
* Show self and retained sizes for edges
([#2529](ChromeDevTools/chrome-devtools-mcp#2529))
([2a7eb76](ChromeDevTools/chrome-devtools-mcp@2a7eb76))
* support uploading multiple files with upload_file
([#2257](ChromeDevTools/chrome-devtools-mcp#2257))
([c8a2393](ChromeDevTools/chrome-devtools-mcp@c8a2393))
* Use ranges with human readable sizes
([#2589](ChromeDevTools/chrome-devtools-mcp#2589))
([61e312f](ChromeDevTools/chrome-devtools-mcp@61e312f))


### 🛠️ Fixes

* **cli:** adjust chrome-devtools start defaults
([#2597](ChromeDevTools/chrome-devtools-mcp#2597))
([c6cff23](ChromeDevTools/chrome-devtools-mcp@c6cff23))
* **cli:** enable tools which require --memoryDebugging on the CLI
([#2585](ChromeDevTools/chrome-devtools-mcp#2585))
([1c92ba0](ChromeDevTools/chrome-devtools-mcp@1c92ba0))
* **clI:** print the errror message alone instead of JSON in the CLI
([#2580](ChromeDevTools/chrome-devtools-mcp#2580))
([fce756a](ChromeDevTools/chrome-devtools-mcp@fce756a))
* **cli:** update the CLI skill
([#2569](ChromeDevTools/chrome-devtools-mcp#2569))
([0e108ea](ChromeDevTools/chrome-devtools-mcp@0e108ea))
* do not append page url when the previously selected page is gone.
([#2588](ChromeDevTools/chrome-devtools-mcp#2588))
([6506425](ChromeDevTools/chrome-devtools-mcp@6506425))
* do not block tool calls on a roots/list the client is slow to answer
([#2477](ChromeDevTools/chrome-devtools-mcp#2477))
([d93e667](ChromeDevTools/chrome-devtools-mcp@d93e667)),
closes
[#2476](ChromeDevTools/chrome-devtools-mcp#2476)
* do not enable invalidation tracking in performance traces
([#2500](ChromeDevTools/chrome-devtools-mcp#2500))
([f00778d](ChromeDevTools/chrome-devtools-mcp@f00778d)),
closes
[#2499](ChromeDevTools/chrome-devtools-mcp#2499)
* do not validate local files for remote browsers
([#2573](ChromeDevTools/chrome-devtools-mcp#2573))
([c0a7417](ChromeDevTools/chrome-devtools-mcp@c0a7417))
* ensure debugger statements are skipped by devtools
([#2555](ChromeDevTools/chrome-devtools-mcp#2555))
([f8572f0](ChromeDevTools/chrome-devtools-mcp@f8572f0))
* fix formatter bugs
([#2552](ChromeDevTools/chrome-devtools-mcp#2552))
([b247315](ChromeDevTools/chrome-devtools-mcp@b247315))
* flakiness in wait for helper
([#2541](ChromeDevTools/chrome-devtools-mcp#2541))
([12f989a](ChromeDevTools/chrome-devtools-mcp@12f989a))
* **input:** select empty-value options by text
([#2501](ChromeDevTools/chrome-devtools-mcp#2501))
([b969c45](ChromeDevTools/chrome-devtools-mcp@b969c45))
* new flags for page id routing moved to the end of metrics json
([#2613](ChromeDevTools/chrome-devtools-mcp#2613))
([6dba5c7](ChromeDevTools/chrome-devtools-mcp@6dba5c7))
* puppeteer actions would not follow symlinks anymore
([#2592](ChromeDevTools/chrome-devtools-mcp#2592))
([1bac85c](ChromeDevTools/chrome-devtools-mcp@1bac85c))
* require .heapsnapshot (or .heaptimeline) as file extension
([#2579](ChromeDevTools/chrome-devtools-mcp#2579))
([b750168](ChromeDevTools/chrome-devtools-mcp@b750168))
* respect screenshot bounds on HiDPI displays
([#2536](ChromeDevTools/chrome-devtools-mcp#2536))
([ebf58f2](ChromeDevTools/chrome-devtools-mcp@ebf58f2))
* warn on unknown CLI args
([#2577](ChromeDevTools/chrome-devtools-mcp#2577))
([e450369](ChromeDevTools/chrome-devtools-mcp@e450369))


### 📄 Documentation

* add Bob MCP client configuration
([#2364](ChromeDevTools/chrome-devtools-mcp#2364))
([5c16940](ChromeDevTools/chrome-devtools-mcp@5c16940))
* fix commands
([#2546](ChromeDevTools/chrome-devtools-mcp#2546))
([9331b63](ChromeDevTools/chrome-devtools-mcp@9331b63))


### 🏗️ Refactor

* make validatePath return resolved url
([#2572](ChromeDevTools/chrome-devtools-mcp#2572))
([57adfa9](ChromeDevTools/chrome-devtools-mcp@57adfa9))
* move config files out of bin
([#2578](ChromeDevTools/chrome-devtools-mcp#2578))
([5d02839](ChromeDevTools/chrome-devtools-mcp@5d02839))
* move files to folders that better represent their use
([#2564](ChromeDevTools/chrome-devtools-mcp#2564))
([06b7a5c](ChromeDevTools/chrome-devtools-mcp@06b7a5c))
* **performance:** use default trace categories from DevTools
([#2571](ChromeDevTools/chrome-devtools-mcp#2571))
([cb89762](ChromeDevTools/chrome-devtools-mcp@cb89762))
* replace debug with NodeJS native
([#2562](ChromeDevTools/chrome-devtools-mcp#2562))
([f44f3c6](ChromeDevTools/chrome-devtools-mcp@f44f3c6))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Currently if the generic DevTools SKILL is not in the context the LLM
just drop trying to find the tools.
Giving this hit allows it to prompt the user for a change. This still
will require a restart for now.
….2gb) (#2614)

Align the trace buffer size configured during performance trace
recording with the 1.2 GB (1,200,000 KB) buffer size used by DevTools
TracingManager. This prevents traces from overflowing the default 200 MB
buffer during longer recordings.
## Summary

Puppeteer already subscribes to `Audits.issueAdded`.
`overrideDevToolsGlobals` did not stop the DevTools frontend from
enabling its own `Audits` domain, so a second consumer of the same
stream was created on session setup. Against a target holding a large
retained issue backlog, that second subscription replays the entire
backlog through `IssuesManager`, logging `No handler registered for
issue code PerformanceIssue` per unsupported entry and delaying
unrelated page work.

This stubs `Audits.invoke_enable` on the agent prototype exactly the way
the Network emulation commands are already stubbed, so the redundant
subscription is never enabled. The four identical no-op command bodies
are collapsed into one `noopAgentCommand` helper while adding the
fourth.

## Why this matters

Closes #2556

The guard added in #2535 covers `PageEventSubscriber.#onIssueAdded`, the
collector's own subscription. It does not cover the frontend's
`IssuesManager` path, which is the other consumer of the same CDP event,
so the warning and the backlog replay both survive it. Fixing it at the
`invoke_enable` boundary means the frontend never receives the replay at
all, rather than filtering each issue after the fact.

## Testing

`node scripts/test.js tests/devtools/DevtoolsUtils.test.ts` -> 20
passing. `npm run build` and `npm run typecheck` both clean.

The added case builds a real 500-issue `PerformanceIssue` backlog on a
page, detaches, then constructs the target universe and asserts the
warning is never emitted while `Runtime.evaluate` still works.

It pins the defect rather than just covering the path. Reverting only
`src/devtools/DevtoolsUtils.ts`, rebuilding, and re-running:

```
warn('No handler registered for issue code PerformanceIssue') at createIssuesFromProtocolIssue
  (build/third_party/devtools-frontend/front_end/models/issues_manager/IssuesManager.js:164:13)
  ... (repeated)
at assert2.<computed> [as neverCalledWithMatch]
✖ createTargetUniverse (1533.363458ms)
  '1 subtest failed'
```

Not tested: no measurement of the tool-call timeout the report describes
on a long-lived session. The test asserts the backlog is no longer
replayed, which is the mechanism, not the end-to-end latency.

AI was used for assistance.
Co-authored-by: Mathias Bynens <mathias@qiwi.be>
While we keep the evaluate script available by default since it is
useful for many users, we give an option to disable it.
…ith 6 updates (#2632)

Bumps the dev-dependencies group with 6 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
|
[@blackwell-systems/gcf](https://github.com/blackwell-systems/gcf-typescript)
| `2.5.2` | `2.6.1` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)
| `8.66.0` | `8.67.0` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)
| `8.66.0` | `8.67.0` |
| [globals](https://github.com/sindresorhus/globals) | `17.9.0` |
`17.11.0` |
| [rollup](https://github.com/rollup/rollup) | `4.62.4` | `4.62.5` |
|
[typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)
| `8.66.0` | `8.67.0` |


Updates `@blackwell-systems/gcf` from 2.5.2 to 2.6.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/blackwell-systems/gcf-typescript/releases">@​blackwell-systems/gcf's
releases</a>.</em></p>
<blockquote>
<h2>gcf-typescript v2.6.1 — decode quoted-key/array-value
round-trip</h2>
<p>A quoted key containing <code>[</code> alongside an array value now
round-trips. Such a key encodes to a named-array line
(<code>{&quot;a[b&quot;: [1]}</code> -&gt; <code>&quot;a[b&quot;[1]:
1</code>); the decoder locates the array count bracket after the closing
quote, per SPEC 4.2. Verified across all seven SDKs by the shared
conformance fixtures (<code>keys/012</code>, <code>keys/014</code>,
<code>keys/015</code>) and the cross-SDK differential fuzz.</p>
<p><strong>Full changelog:</strong> <a
href="https://github.com/blackwell-systems/gcf-typescript/blob/main/CHANGELOG.md">https://github.com/blackwell-systems/gcf-typescript/blob/main/CHANGELOG.md</a></p>
<h2>gcf-typescript v2.6.0 — int64 numeric domain + largeInt</h2>
<p>Implements the v3.5.3 numeric domain (<a
href="https://github.com/blackwell-systems/gcf/releases/tag/v3.5.3">SPEC
2.3.2</a>): the canonical domain is signed <code>int64</code> for
integers and IEEE-754 double for non-integers. This SDK parses integer
literals to an exact <code>int64</code> on decode and on the
JSON-to-value bridge, and rejects a value outside <code>int64</code>
with an out-of-range error on both decode and encode, rather than
following the host numeric type for integers beyond the double-exact
range (2^53). Values beyond <code>int64</code> (unsigned-64 identifiers,
exact decimals) are modeled as strings. Canonical number formatting
aligns to the domain: a double at or above 2^53 renders in exponent
notation. Verified against the shared conformance fixtures
(<code>numbers/017-024</code>, <code>errors-v2/041-042</code>) and the
cross-SDK differential fuzz.</p>
<p>Adds a <code>largeInt</code> decode option
(<code>decodeGeneric(input, { largeInt })</code>: <code>error</code>
default / <code>string</code> / <code>bigint</code> /
<code>number</code>) for an in-domain integer beyond the JavaScript 2^53
safe range; a <code>bigint</code> is accepted and serialized on
encode.</p>
<p><strong>Full changelog:</strong> <a
href="https://github.com/blackwell-systems/gcf-typescript/blob/main/CHANGELOG.md">https://github.com/blackwell-systems/gcf-typescript/blob/main/CHANGELOG.md</a></p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/blackwell-systems/gcf-typescript/compare/v2.5.2...v2.6.0">https://github.com/blackwell-systems/gcf-typescript/compare/v2.5.2...v2.6.0</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/blackwell-systems/gcf-typescript/blob/main/CHANGELOG.md">@​blackwell-systems/gcf's
changelog</a>.</em></p>
<blockquote>
<h2>v2.6.1 (2026-08-15)</h2>
<ul>
<li>Decode: quoted-key/array-value round-trip (SPEC 4.2).</li>
</ul>
<h2>v2.6.0 (2026-08-14)</h2>
<ul>
<li><strong>Numeric domain (spec v3.5.3, SPEC 2.3.2).</strong> Specifies
the canonical numeric domain as signed <code>int64</code> for integers
and IEEE-754 double for non-integers. Earlier versions left integers
beyond the double-exact range (2^53) to the host numeric type; this
version parses integer literals to an exact <code>int64</code> on decode
and on the JSON-to-value bridge, returns an out-of-range error for a
value outside <code>int64</code> on both decode and encode, and models
larger values (unsigned-64 identifiers, exact decimals) as strings.
Canonical number formatting aligns to the domain: a double at or above
2^53 renders in exponent notation. Verified against new
<code>numbers/017-024</code> and <code>errors-v2/041-042</code>
conformance fixtures and the cross-SDK differential fuzz. Adds a
<code>largeInt</code> decode option (<code>decodeGeneric</code>
<code>opts.largeInt</code>: <code>'error'</code> default,
<code>'string'</code>, <code>'bigint'</code>, <code>'number'</code>) for
an in-domain integer beyond the JavaScript 2^53 safe range; a
<code>bigint</code> is accepted and serialized on encode.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/542beb089ff3be117b0518c71363fad5bccf2b2b"><code>542beb0</code></a>
release: v2.6.1</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/d5ea0fed544b7add7cee6431d9375270dc57f789"><code>d5ea0fe</code></a>
fix(decode): locate array count bracket past quoted keys (SPEC 4.2)</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/dfc3b5c4499bded0b5660472f55a59a4b20b7675"><code>dfc3b5c</code></a>
docs(readme): refresh fleet versions for the v3.5.3 release (spec
v3.5.3, 279...</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/ef166cc8ae30429cb98af8d183a55e15ce7c4c26"><code>ef166cc</code></a>
release: v2.6.0 — int64 numeric domain (SPEC 2.3.2); largeInt decode
option</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/00972f2dc781477eb6d369e62edfe03ad4112a07"><code>00972f2</code></a>
Enforce int64 numeric domain with a largeInt policy (SPEC 2.3.2)</li>
<li><a
href="https://github.com/blackwell-systems/gcf-typescript/commit/b993b535ecc0e2b71aab688ddb3849f9075a0343"><code>b993b53</code></a>
docs(readme): update spec version (v3.5.2), fixture count (269), current
SDK ...</li>
<li>See full diff in <a
href="https://github.com/blackwell-systems/gcf-typescript/compare/v2.5.2...v2.6.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/eslint-plugin` from 8.66.0 to 8.67.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases">@​typescript-eslint/eslint-plugin's
releases</a>.</em></p>
<blockquote>
<h2>v8.67.0</h2>
<h2>8.67.0 (2026-08-10)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>typescript-eslint:</strong> export basic globs for using
tseslint (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12105">#12105</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Josh Goldberg ✨</li>
<li>Kirk Waiblinger <a
href="https://github.com/kirkwaiblinger"><code>@​kirkwaiblinger</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.67.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md">@​typescript-eslint/eslint-plugin's
changelog</a>.</em></p>
<blockquote>
<h2>8.67.0 (2026-08-10)</h2>
<p>This was a version bump only for eslint-plugin to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.67.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/20a261fb8e62351e88176b075090dc9276d26072"><code>20a261f</code></a>
chore(release): publish 8.67.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/6dfe4d0c572c48f51097638ec4132763defa311a"><code>6dfe4d0</code></a>
chore(eslint-plugin-internal): [plugin-test-formatting] enforce
zero-indentat...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/3b155bb1344fd7ce83086cf2f864a7e8f3b4a217"><code>3b155bb</code></a>
chore: use typescript 7 for typechecking (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12601">#12601</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.67.0/packages/eslint-plugin">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/parser` from 8.66.0 to 8.67.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases">@​typescript-eslint/parser's
releases</a>.</em></p>
<blockquote>
<h2>v8.67.0</h2>
<h2>8.67.0 (2026-08-10)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>typescript-eslint:</strong> export basic globs for using
tseslint (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12105">#12105</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Josh Goldberg ✨</li>
<li>Kirk Waiblinger <a
href="https://github.com/kirkwaiblinger"><code>@​kirkwaiblinger</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.67.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md">@​typescript-eslint/parser's
changelog</a>.</em></p>
<blockquote>
<h2>8.67.0 (2026-08-10)</h2>
<p>This was a version bump only for parser to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.67.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/20a261fb8e62351e88176b075090dc9276d26072"><code>20a261f</code></a>
chore(release): publish 8.67.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/3b155bb1344fd7ce83086cf2f864a7e8f3b4a217"><code>3b155bb</code></a>
chore: use typescript 7 for typechecking (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12601">#12601</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.67.0/packages/parser">compare
view</a></li>
</ul>
</details>
<br />

Updates `globals` from 17.9.0 to 17.11.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sindresorhus/globals/releases">globals's
releases</a>.</em></p>
<blockquote>
<h2>v17.11.0</h2>
<ul>
<li>Add <code>react-native</code> globals (<a
href="https://redirect.github.com/sindresorhus/globals/issues/337">#337</a>)
61eafbf</li>
</ul>
<hr />
<p><a
href="https://github.com/sindresorhus/globals/compare/v17.10.0...v17.11.0">https://github.com/sindresorhus/globals/compare/v17.10.0...v17.11.0</a></p>
<h2>v17.10.0</h2>
<ul>
<li>Add <code>GM_cookie</code> to Greasemonkey globals (<a
href="https://redirect.github.com/sindresorhus/globals/issues/349">#349</a>)
f468407</li>
</ul>
<hr />
<p><a
href="https://github.com/sindresorhus/globals/compare/v17.9.0...v17.10.0">https://github.com/sindresorhus/globals/compare/v17.9.0...v17.10.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/sindresorhus/globals/commit/8c599278a68a0a6ea17b0c12f976f2270f70f391"><code>8c59927</code></a>
17.11.0</li>
<li><a
href="https://github.com/sindresorhus/globals/commit/61eafbf105037079654824d883edc261834a0fbd"><code>61eafbf</code></a>
Add <code>react-native</code> globals (<a
href="https://redirect.github.com/sindresorhus/globals/issues/337">#337</a>)</li>
<li><a
href="https://github.com/sindresorhus/globals/commit/7bed4af3730dcb5dbea4274b5264e6be4c4b8910"><code>7bed4af</code></a>
17.10.0</li>
<li><a
href="https://github.com/sindresorhus/globals/commit/f4684072a5ec0ad598ee4a20989b3eaa733753bf"><code>f468407</code></a>
Add <code>GM_cookie</code> to Greasemonkey globals (<a
href="https://redirect.github.com/sindresorhus/globals/issues/349">#349</a>)</li>
<li>See full diff in <a
href="https://github.com/sindresorhus/globals/compare/v17.9.0...v17.11.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `rollup` from 4.62.4 to 4.62.5
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rollup/rollup/releases">rollup's
releases</a>.</em></p>
<blockquote>
<h2>v4.62.5</h2>
<h2>4.62.5</h2>
<p><em>2026-08-20</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Resolve an issue where compact mode could result in invalid module
concatenations (<a
href="https://redirect.github.com/rollup/rollup/issues/6468">#6468</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6468">#6468</a>:
Keep the semicolon added after a replaced default export (<a
href="https://github.com/Jaybhade"><code>@​Jaybhade</code></a>, <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6469">#6469</a>:
fix(deps): update minor/patch updates (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6470">#6470</a>:
fix(deps): update swc monorepo (major) (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6471">#6471</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6472">#6472</a>:
chore(deps): update dependency eslint-plugin-unicorn to v73 (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6476">#6476</a>:
chore(deps): update dtolnay/rust-toolchain digest to 4360b52 (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6477">#6477</a>:
fix(deps): update minor/patch updates (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6478">#6478</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6479">#6479</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6480">#6480</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rollup/rollup/blob/master/CHANGELOG.md">rollup's
changelog</a>.</em></p>
<blockquote>
<h2>4.62.5</h2>
<p><em>2026-08-20</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Resolve an issue where compact mode could result in invalid module
concatenations (<a
href="https://redirect.github.com/rollup/rollup/issues/6468">#6468</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6468">#6468</a>:
Keep the semicolon added after a replaced default export (<a
href="https://github.com/Jaybhade"><code>@​Jaybhade</code></a>, <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6469">#6469</a>:
fix(deps): update minor/patch updates (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6470">#6470</a>:
fix(deps): update swc monorepo (major) (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6471">#6471</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6472">#6472</a>:
chore(deps): update dependency eslint-plugin-unicorn to v73 (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6476">#6476</a>:
chore(deps): update dtolnay/rust-toolchain digest to 4360b52 (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6477">#6477</a>:
fix(deps): update minor/patch updates (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6478">#6478</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6479">#6479</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6480">#6480</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/rollup/rollup/commit/c20402e2d4498a5861a4f49e00b2e7446c9900bb"><code>c20402e</code></a>
4.62.5</li>
<li><a
href="https://github.com/rollup/rollup/commit/e24957a6d37553bab48149ba0d7e20c476dfd294"><code>e24957a</code></a>
Keep the semicolon added after a replaced default export (<a
href="https://redirect.github.com/rollup/rollup/issues/6468">#6468</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/4b6bc39ea71c5f7ce346da8151657d7fcaae926e"><code>4b6bc39</code></a>
chore(deps): update dtolnay/rust-toolchain digest to 4360b52 (<a
href="https://redirect.github.com/rollup/rollup/issues/6476">#6476</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/62efc426918aa8a8101f1b5959b9b1c06315719d"><code>62efc42</code></a>
fix(deps): update swc monorepo (major) (<a
href="https://redirect.github.com/rollup/rollup/issues/6470">#6470</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/c9372898c39240a68f6861515fc14ee9557da016"><code>c937289</code></a>
chore(deps): update dependency eslint-plugin-unicorn to v73 (<a
href="https://redirect.github.com/rollup/rollup/issues/6472">#6472</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/d652a69048f182c4480babf7578589b9ac0627cd"><code>d652a69</code></a>
chore(deps): lock file maintenance (<a
href="https://redirect.github.com/rollup/rollup/issues/6480">#6480</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/bd116c7a93bd05ec415395eb9ddf46d9a246582e"><code>bd116c7</code></a>
chore(deps): lock file maintenance (<a
href="https://redirect.github.com/rollup/rollup/issues/6479">#6479</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/10edaf7446412bb048e120a572000c21af087d8c"><code>10edaf7</code></a>
chore(deps): lock file maintenance (<a
href="https://redirect.github.com/rollup/rollup/issues/6478">#6478</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/d42b0d641bda24121417ba388c44cb223afb09f6"><code>d42b0d6</code></a>
fix(deps): update minor/patch updates (<a
href="https://redirect.github.com/rollup/rollup/issues/6477">#6477</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/bfda94f089dfa9b9f9a15239561d21097122fceb"><code>bfda94f</code></a>
fix(deps): update minor/patch updates (<a
href="https://redirect.github.com/rollup/rollup/issues/6469">#6469</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/rollup/rollup/compare/v4.62.4...v4.62.5">compare
view</a></li>
</ul>
</details>
<br />

Updates `typescript-eslint` from 8.66.0 to 8.67.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases">typescript-eslint's
releases</a>.</em></p>
<blockquote>
<h2>v8.67.0</h2>
<h2>8.67.0 (2026-08-10)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>typescript-eslint:</strong> export basic globs for using
tseslint (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12105">#12105</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Josh Goldberg ✨</li>
<li>Kirk Waiblinger <a
href="https://github.com/kirkwaiblinger"><code>@​kirkwaiblinger</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.67.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md">typescript-eslint's
changelog</a>.</em></p>
<blockquote>
<h2>8.67.0 (2026-08-10)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>typescript-eslint:</strong> export basic globs for using
tseslint (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12105">#12105</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Claude Sonnet 5</li>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Josh Goldberg</li>
<li>Josh Goldberg ✨</li>
<li>Kirk Waiblinger <a
href="https://github.com/kirkwaiblinger"><code>@​kirkwaiblinger</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.67.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/20a261fb8e62351e88176b075090dc9276d26072"><code>20a261f</code></a>
chore(release): publish 8.67.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/c245fbb611d8cff3199ffa3a169df156d0e35928"><code>c245fbb</code></a>
feat(typescript-eslint): export basic globs for using tseslint (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint/issues/12105">#12105</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/3b155bb1344fd7ce83086cf2f864a7e8f3b4a217"><code>3b155bb</code></a>
chore: use typescript 7 for typechecking (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint/issues/12601">#12601</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.67.0/packages/typescript-eslint">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Wolfgang Beyer <wolfi@chromium.org>
OrKoN and others added 26 commits September 3, 2026 13:38
the test fails often and it does not give a good signal if the feature
is working or not. There have been multiple attempts to fix this but it
seems to be riddled with some underlying flakiness (seems to be
exclusive to Windows but not 100% sure).
…0f6aa` (#2656)

Bumps
[third_party/devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend)
from `de0546b` to `330f6aa`.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/330f6aa67c977208d92feb7dfb4abb77e9708ae2"><code>330f6aa</code></a>
Add focus rings to expandable controls</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/3e299ff967cbe458f3317243960888ae4f1b3f82"><code>3e299ff</code></a>
[ts_library] Migrate ui/legacy/components/quick_open to split
compilation</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/a1722efa2a1b20042f9c5c03a4519c1f3ddf5fae"><code>a1722ef</code></a>
[ts_library] Migrate ui/legacy/components/perf_ui to split
compilation</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/3d9a47c3f53df85b1cd34abf309712ac3f2bed43"><code>3d9a47c</code></a>
Add missing console:css_files dependency to application panel
bundle</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/c86f5b73fd546dac3b12619124a34ac6a93e3211"><code>c86f5b7</code></a>
[ts_library] Migrate Changes panel to split compilation</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/3eed5d457ebce0739e536da7cf63bde0025079d6"><code>3eed5d4</code></a>
[foundation] Fix flaky Universe.test.ts</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/674f3f3496b70e8aceb71ce027c65162bf993dff"><code>674f3f3</code></a>
Improve return type of getComputedStylesForDomNode</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/1d3e71a681dbea922b4fcbd8ac550e08abe6a091"><code>1d3e71a</code></a>
[ts_library] Migrate Accessibility panel to split compilation</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/390f974f96fe313897ba58a3a3f2d50ea8d56e16"><code>390f974</code></a>
[ts_library] Migrate test/e2e/host to split compilation</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/5e356a5c2ff344991bea87841db224ec9900aa01"><code>5e356a5</code></a>
Make writeIfChanged asynchronous</li>
<li>Additional commits viewable in <a
href="https://github.com/ChromeDevTools/devtools-frontend/compare/de0546ba37bda1e4b4115dfa2fbacae08b53e752...330f6aa67c977208d92feb7dfb4abb77e9708ae2">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Fixes #2657

## Summary

- `BrowserContext.newPage()` in Puppeteer 25.9 supports the `background`
option, so pass it through in the isolated-context branch of
`McpContext.newPage()` instead of dropping it.
- Add a real-browser regression test asserting the original page keeps
focus when `new_page` is called with both `background: true` and
`isolatedContext`.

## Testing

- `npm run typecheck`
- `npm run test:no-build tests/tools/pages.test.ts`
- prettier + eslint pass
test: mock-based unit tests for emulation, no real browser needed

Relates to #2639.

Summary
Adds tests/mocks.ts — sinon createStubInstance-based factories for
McpPage, McpContext, McpResponse, and Puppeteer's Page (via the concrete
CdpPage subclass)
createHandlerMocks() helper returns {page, context, response} together
for handler tests
Converts the network and cpu describe blocks in emulation.test.ts from
real-browser (withMcpContext) to the sinon mocks
Converts emulate() behavior tests in McpPage.test.ts to use a real
McpPage instance wrapping a mocked Puppeteer page
(createMockPuppeteerPage()), instead of a real browser
No new test files — all changes are in-place edits to existing test
files, per review feedback
Remaining emulate()-related tests that need real browser behavior
(predefined-condition validation, secondary DevTools session) are
intentionally left as real-browser tests
Verification
npm run format
npm run test
… group (#2671)

Bumps the bundled group with 1 update:
[puppeteer](https://github.com/puppeteer/puppeteer).

Updates `puppeteer` from 25.9.0 to 25.10.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/puppeteer/puppeteer/releases">puppeteer's
releases</a>.</em></p>
<blockquote>
<h2>puppeteer-core: v25.10.0</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v25.9.0...puppeteer-core-v25.10.0">25.10.0</a>
(2026-09-03)</h2>
<h3>🎉 Features</h3>
<ul>
<li>implement video-stream-based screen recording via page.record() (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15387">#15387</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/f6d5e28021f207d80c10528956738b3b01b41609">f6d5e28</a>)</li>
<li>roll to Firefox 155.0 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15408">#15408</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/ed544f71fbfadf8748040008453ea1fdedfc5ec9">ed544f7</a>)</li>
</ul>
<h3>🛠️ Fixes</h3>
<ul>
<li>detect a websocket connection that died without a close (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15406">#15406</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/8c3576b789440cc3b9627e9d6749369a6f175ff3">8c3576b</a>)</li>
<li>distinguish an unwritable userDataDir from a running browser (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15405">#15405</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/b464f6d6ea6e119cac48fed961d706325d50d8a9">b464f6d</a>)</li>
<li>do not miss the first screencast frame while startScreencast is in
flight (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15389">#15389</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/1969426492e7201e9ff78c49c918cdd1cbbeef2a">1969426</a>)</li>
<li>roll to Chrome 152.0.7977.64 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15395">#15395</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/974e53667e81363e36f634222eb300a054c1fb6c">974e536</a>)</li>
<li>roll to Chrome 152.0.7977.75 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15409">#15409</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/89f3f187827fed44fe33bf2ab80f01d1fce20f40">89f3f18</a>)</li>
<li>roll to Firefox 154.0.1 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15397">#15397</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/8ac76fdbdee170902a2ac4e831c9c82cafe17b65">8ac76fd</a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li><code>@​puppeteer/browsers</code> bumped from 3.2.1 to 3.2.2</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2>puppeteer: v25.10.0</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.9.0...puppeteer-v25.10.0">25.10.0</a>
(2026-09-03)</h2>
<h3>♻️ Chores</h3>
<ul>
<li><strong>puppeteer:</strong> Synchronize puppeteer versions</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li><code>@​puppeteer/browsers</code> bumped from 3.2.1 to 3.2.2</li>
<li>puppeteer-core bumped from 25.9.0 to 25.10.0</li>
</ul>
</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/88b517ab3beb4a237b541cd18ada98ba43de71a7"><code>88b517a</code></a>
chore: release main (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15396">#15396</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/a84b0325de0e860c9c4b60de7bff7c0ae100accd"><code>a84b032</code></a>
fix: revert launch browsers in detached mode on Windows to fix flakiness
(<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15">#15</a>...</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/7a17a9a843c36f7aab98ea1de840f2f78c761d19"><code>7a17a9a</code></a>
chore(deps): bump the all group across 1 directory with 2 updates (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15368">#15368</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/4ff495d90c1629f46849e50f39c7fc827ea89630"><code>4ff495d</code></a>
test: explain the CDP-only mouse expectations (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15380">#15380</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/c3ca31394ae4f133620d6587a7efedbe5e945ff4"><code>c3ca313</code></a>
test: update webmcp-types dep and simplify execute handler signatures
(<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15414">#15414</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/8ca9ab4e7b528e632145c85514feb7af61033425"><code>8ca9ab4</code></a>
chore(deps-dev): bump browserslist from 4.28.4 to 4.28.8 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15413">#15413</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/3744bad72207a29c11bc1c6e202d916e3f629dc3"><code>3744bad</code></a>
chore(deps-dev): bump <code>@​humanfs/node</code> from 0.16.7 to 0.16.8
(<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15412">#15412</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/051c195ab2beb77856ce501e80e61885f9fa6a4f"><code>051c195</code></a>
chore(deps): bump fast-uri from 3.1.5 to 3.1.7 in /website (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15411">#15411</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/89f3f187827fed44fe33bf2ab80f01d1fce20f40"><code>89f3f18</code></a>
fix: roll to Chrome 152.0.7977.75 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15409">#15409</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/ed544f71fbfadf8748040008453ea1fdedfc5ec9"><code>ed544f7</code></a>
feat: roll to Firefox 155.0 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15408">#15408</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.9.0...puppeteer-v25.10.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=puppeteer&package-manager=npm_and_yarn&previous-version=25.9.0&new-version=25.10.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
allowing to disable DevTools source maps similar to what DevTools
settings allow in the UI.
Relates to #2639.

Follow-up to #2641 and feedback in #2660 (`AGENTS.md`).

### Summary of Changes

1. **`tests/tools/emulation.test.ts`**:
- Completely migrated off `withMcpContext`, removing all real-browser
launches, `serverHooks`, and HTTP fixtures.
- All tool handler test suites (`geolocation`, `viewport`, `userAgent`,
`extraHttpHeaders`, `colorScheme`, `network`, `cpu`) now use
`createHandlerMocks()` from `tests/mocks.ts` and verify `page.emulate()`
is invoked with exact expected arguments.

2. **`tests/McpPage.test.ts`**:
- Added unit test coverage for `McpPage.emulate()` using
`createMockPuppeteerPage()`:
     - Offline network throttling settings and network blocking guard.
     - Secondary DevTools session CPU throttling delegation.
     - Geolocation set/clear behavior.
     - Viewport set/clear with default parameter merging.
     - Extra HTTP headers set/clear behavior.

### Verification
- `npm run check-format`: Passed (clean ESLint + Prettier)
- `npm run build`: Compiled with exit code 0
- `node scripts/test.js tests/tools/emulation.test.ts`: 50/50 tests
passed
- `node scripts/test.js tests/McpPage.test.ts`: 32/32 tests passed
Dependabot identifies git submodules by their path in `.gitmodules`
(`third_party/devtools-frontend`), not by the submodule section name
(`devtools-frontend`).

Because `dependency-name` was configured as `devtools-frontend`, the
ignore condition never matched, causing Dependabot to pick the latest
semver tag (`v1.0.x`) instead of the latest commit on the tracked `main`
branch.

This updates the `dependency-name` to `third_party/devtools-frontend` so
tagged releases are properly ignored and Dependabot falls back to branch
commits.
Co-authored-by: Alex Rudenko <OrKoN@users.noreply.github.com>
…a4fbf` (#2689)

Bumps
[third_party/devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend)
from `330f6aa` to `d1a4fbf`.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/d1a4fbfd673fecf19981c27b3a461f9881eebe8e"><code>d1a4fbf</code></a>
AI Assistance: Add integration tests for GetNetworkRequestDetails CORS
gating</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/e882517cf3f1fc8792bbfb5f309e27ce23d09d3f"><code>e882517</code></a>
AI Assistance: Use SecurityOrigin for tool origin matching</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/f4067bdfa942221062d8c008afb0b802267bf80b"><code>f4067bd</code></a>
[trace] Handle legacy and instant DisplayItemList snapshots</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/b8050e51731dfd414898d178a6458fdcdf8877b4"><code>b8050e5</code></a>
RPP [2/4]: Optimize TimelineUIUtils synthetic events and tree/filter
fixture ...</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/9daacbd6abab54658b092f86c20c87ea9711fc6b"><code>9daacbd</code></a>
AI Assistance: Rename #startConversation to #submitQuery</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/e61f11cfad66b567228603499a1f69934c0bcf49"><code>e61f11c</code></a>
RPP: Increase timeout for LayoutShiftDetails tests</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/96a9ecb4a562e24b703641dc439512d4b681e3af"><code>96a9ecb</code></a>
Remove duplicate diff patch types</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/50a56662d4a48731cccde6c58b402b9e230f75aa"><code>50a5666</code></a>
RPP: Increase timeout for TimelinePanel tests</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/8ab2bfe19d421e6d74aee1bac65bfd3436eec5a0"><code>8ab2bfe</code></a>
Use size tokens in timeline overlays and components</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/7631139076a35deb2bb1556364d5c69289e94b6c"><code>7631139</code></a>
Use size tokens in coverage, event_listeners, and recorder</li>
<li>Additional commits viewable in <a
href="https://github.com/ChromeDevTools/devtools-frontend/compare/330f6aa67c977208d92feb7dfb4abb77e9708ae2...d1a4fbfd673fecf19981c27b3a461f9881eebe8e">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This PR migrates `tests/tools/screencast.test.ts` from real-browser
tests (`withMcpContext`) to mock-based unit tests using the established
Sinon mock infrastructure.

### Summary
- References #2639 (item 1)
- Follow-up building on #2641 and #2665
- Rewrites `tests/tools/screencast.test.ts` to use
`createHandlerMocks()` instead of `withMcpContext()`, eliminating real
browser launches.
- Adds `createMockScreenRecorder()` helper and wires
`getScreenRecorder`/`setScreenRecorder` and `ensureExtension` in
`tests/mocks.ts`.
- Re-exports `ScreenRecorder` from `src/third_party/index.ts` to comply
with internal import boundaries.
🤖 I have created a release *beep* *boop*
---


##
[1.9.0](ChromeDevTools/chrome-devtools-mcp@chrome-devtools-mcp-v1.8.0...chrome-devtools-mcp-v1.9.0)
(2026-09-08)


### 🎉 Features

* Add --allow-unrestricted-paths by default for CLI
([#2618](ChromeDevTools/chrome-devtools-mcp#2618))
([2dc104c](ChromeDevTools/chrome-devtools-mcp@2dc104c))
* add Agent Plugins 1.0 package
([#2623](ChromeDevTools/chrome-devtools-mcp#2623))
([05d9e55](ChromeDevTools/chrome-devtools-mcp@05d9e55))
* add an option to turn off js execution tools
([#2627](ChromeDevTools/chrome-devtools-mcp#2627))
([a78566e](ChromeDevTools/chrome-devtools-mcp@a78566e))
* Add cookie-debugging skill and improve network/pages tool descriptions
([#2596](ChromeDevTools/chrome-devtools-mcp#2596))
([6a67552](ChromeDevTools/chrome-devtools-mcp@6a67552))
* add screencast fps option
([#2312](ChromeDevTools/chrome-devtools-mcp#2312))
([2e641d8](ChromeDevTools/chrome-devtools-mcp@2e641d8))
* extend --no-javascript-evaluation to cover navigations and initScripts
([#2638](ChromeDevTools/chrome-devtools-mcp#2638))
([4993a0f](ChromeDevTools/chrome-devtools-mcp@4993a0f))
* option to disable source maps
([#2628](ChromeDevTools/chrome-devtools-mcp#2628))
([4430a76](ChromeDevTools/chrome-devtools-mcp@4430a76))
* **performance:** set default trace buffer size to match DevTools
(1.2gb)
([#2614](ChromeDevTools/chrome-devtools-mcp#2614))
([d1baa90](ChromeDevTools/chrome-devtools-mcp@d1baa90))
* support configurable filesystem roots
([#2605](ChromeDevTools/chrome-devtools-mcp#2605))
([d00e6f8](ChromeDevTools/chrome-devtools-mcp@d00e6f8))


### 🛠️ Fixes

* detect scheduled script navigations
([#2622](ChromeDevTools/chrome-devtools-mcp#2622))
([1b2c0e5](ChromeDevTools/chrome-devtools-mcp@1b2c0e5))
* do not enable the DevTools frontend Audits subscription
([#2625](ChromeDevTools/chrome-devtools-mcp#2625))
([d1e73ff](ChromeDevTools/chrome-devtools-mcp@d1e73ff))
* filter out Chrome webui targets by default
([#2648](ChromeDevTools/chrome-devtools-mcp#2648))
([020c048](ChromeDevTools/chrome-devtools-mcp@020c048))
* honor background when new_page uses isolatedContext
([#2658](ChromeDevTools/chrome-devtools-mcp#2658))
([f215c82](ChromeDevTools/chrome-devtools-mcp@f215c82))
* **memory:** expliclity mention the need of a flag
([#2620](ChromeDevTools/chrome-devtools-mcp#2620))
([46c3e05](ChromeDevTools/chrome-devtools-mcp@46c3e05))
* truncate long urls in concise network request output
([#2513](ChromeDevTools/chrome-devtools-mcp#2513))
([552c870](ChromeDevTools/chrome-devtools-mcp@552c870))
* validate viewport and geolocation inputs in emulate tool
([#2663](ChromeDevTools/chrome-devtools-mcp#2663))
([808aed6](ChromeDevTools/chrome-devtools-mcp@808aed6)),
closes
[#2662](ChromeDevTools/chrome-devtools-mcp#2662)


### 📄 Documentation

* correct what --screenshotFormat reduces
([#2617](ChromeDevTools/chrome-devtools-mcp#2617))
([c575777](ChromeDevTools/chrome-devtools-mcp@c575777))
* split the docs in separate files
([#2600](ChromeDevTools/chrome-devtools-mcp#2600))
([5463101](ChromeDevTools/chrome-devtools-mcp@5463101))
* update agents.md for testing
([#2660](ChromeDevTools/chrome-devtools-mcp#2660))
([18ca912](ChromeDevTools/chrome-devtools-mcp@18ca912))
* update SECURITY.md
([#2626](ChromeDevTools/chrome-devtools-mcp#2626))
([fd67970](ChromeDevTools/chrome-devtools-mcp@fd67970))


### 🏗️ Refactor

* extract browser options
([#2654](ChromeDevTools/chrome-devtools-mcp#2654))
([a918b7b](ChromeDevTools/chrome-devtools-mcp@a918b7b))
* extract category config into a seprate file
([#2652](ChromeDevTools/chrome-devtools-mcp#2652))
([401a119](ChromeDevTools/chrome-devtools-mcp@401a119))
* move transform logic to Clearcut level
([#2637](ChromeDevTools/chrome-devtools-mcp#2637))
([f0058d5](ChromeDevTools/chrome-devtools-mcp@f0058d5))
* wrap Server into a class
([#2633](ChromeDevTools/chrome-devtools-mcp#2633))
([1a092ff](ChromeDevTools/chrome-devtools-mcp@1a092ff))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Utilizes the Yargs default. We may need to change this to resolve this
ourself, but for now we can explicitly allow this.
…ith 5 updates (#2670)

Bumps the dev-dependencies group with 5 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
|
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)
| `26.2.0` | `26.4.0` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)
| `8.67.0` | `8.69.0` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)
| `8.67.0` | `8.69.0` |
| [rollup](https://github.com/rollup/rollup) | `4.62.5` | `4.63.1` |
|
[typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)
| `8.67.0` | `8.69.0` |


Updates `@types/node` from 26.2.0 to 26.4.0
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/eslint-plugin` from 8.67.0 to 8.69.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases">@​typescript-eslint/eslint-plugin's
releases</a>.</em></p>
<blockquote>
<h2>v8.69.0</h2>
<h2>8.69.0 (2026-08-31)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-misused-promises] add flagUnions
option for checkConditionals (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12603">#12603</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-mixed-enums] use scope analysis
instead of type checking for merged namespaces (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12731">#12731</a>)</li>
<li><strong>eslint-plugin:</strong> [unified-signatures] compare type
parameters by constraint instead of name (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12741">#12741</a>)</li>
<li><strong>eslint-plugin:</strong> [no-meaningless-void-operator]
report void on non-call expressions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12727">#12727</a>)</li>
<li><strong>website:</strong> respect allowJs playground config (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12744">#12744</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Abdu Alim Arlikhozhaev <a
href="https://github.com/Arlikhozhaev"><code>@​Arlikhozhaev</code></a></li>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Josh Goldberg ✨</li>
<li>wonbeanie <a
href="https://github.com/wonbeanie"><code>@​wonbeanie</code></a></li>
<li>Younsang Na <a
href="https://github.com/nayounsang"><code>@​nayounsang</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.69.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
<h2>v8.68.0</h2>
<h2>8.68.0 (2026-08-24)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [strict-void-return] add fix
suggestions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12086">#12086</a>)</li>
<li><strong>utils:</strong> support ESLint rule meta.languages (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12663">#12663</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [unified-signatures] deduplicate
types in report (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12656">#12656</a>)</li>
<li><strong>eslint-plugin:</strong> [return-await] prevent autofix from
breaking code in arrow-functions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12707">#12707</a>)</li>
<li><strong>eslint-plugin:</strong> [unified-signatures] report
identical signatures (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12678">#12678</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion]
prevent stack overflow in recursive types (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12711">#12711</a>)</li>
<li><strong>eslint-plugin:</strong> [no-floating-promises] setting
<code>ignoreVoid: false</code> results in false negative in
ArrowFunctionExpression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12646">#12646</a>)</li>
<li><strong>eslint-plugin:</strong> [no-empty-object-type] ignore
suggestions that result in invalid interfaces and export defaults (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12739">#12739</a>)</li>
<li><strong>website:</strong> playground crashes on <code>extends</code>
configs (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12608">#12608</a>)</li>
<li><strong>website:</strong> account for thanks.dev and out-of-band
donors in sponsors list (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12735">#12735</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Hugo <a
href="https://github.com/hugop95"><code>@​hugop95</code></a></li>
<li>Josh Goldberg ✨</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md">@​typescript-eslint/eslint-plugin's
changelog</a>.</em></p>
<blockquote>
<h2>8.69.0 (2026-08-31)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-misused-promises] add flagUnions
option for checkConditionals (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12603">#12603</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-meaningless-void-operator]
report void on non-call expressions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12727">#12727</a>)</li>
<li><strong>eslint-plugin:</strong> [unified-signatures] compare type
parameters by constraint instead of name (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12741">#12741</a>)</li>
<li><strong>eslint-plugin:</strong> [no-mixed-enums] use scope analysis
instead of type checking for merged namespaces (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12731">#12731</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Abdu Alim Arlikhozhaev <a
href="https://github.com/Arlikhozhaev"><code>@​Arlikhozhaev</code></a></li>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Josh Goldberg ✨</li>
<li>wonbeanie <a
href="https://github.com/wonbeanie"><code>@​wonbeanie</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.69.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
<h2>8.68.0 (2026-08-24)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [strict-void-return] add fix
suggestions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12086">#12086</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-empty-object-type] ignore
suggestions that result in invalid interfaces and export defaults (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12739">#12739</a>)</li>
<li><strong>eslint-plugin:</strong> [no-floating-promises] setting
<code>ignoreVoid: false</code> results in false negative in
ArrowFunctionExpression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12646">#12646</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion]
prevent stack overflow in recursive types (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12711">#12711</a>)</li>
<li><strong>eslint-plugin:</strong> [unified-signatures] report
identical signatures (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12678">#12678</a>)</li>
<li><strong>eslint-plugin:</strong> [return-await] prevent autofix from
breaking code in arrow-functions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12707">#12707</a>)</li>
<li><strong>eslint-plugin:</strong> [unified-signatures] deduplicate
types in report (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12656">#12656</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Hugo <a
href="https://github.com/hugop95"><code>@​hugop95</code></a></li>
<li>Niki <a
href="https://github.com/phaux"><code>@​phaux</code></a></li>
<li>Younsang Na <a
href="https://github.com/nayounsang"><code>@​nayounsang</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/9a6e546823e5d8f2dc015df2aa66c0230615e209"><code>9a6e546</code></a>
chore(release): publish 8.69.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/513638effe9e7b78566cc153d4d809a1435153f3"><code>513638e</code></a>
fix(eslint-plugin): [no-meaningless-void-operator] report void on
non-call ex...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/1dba4c50f0599cc212e9d1eca9ec0f21a818f0b5"><code>1dba4c5</code></a>
chore(eslint-plugin): fix
<code>eslint-plugin/require-test-error-positions</code> report...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/a2fccae39c7cb1e516a29b1c746b7767bffa03e2"><code>a2fccae</code></a>
fix(eslint-plugin): [unified-signatures] compare type parameters by
constrain...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/a23069df170bc4f9c35c8aaf3a8634635591844a"><code>a23069d</code></a>
test(eslint-plugin): [no-mixed-enums] add error positions (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12779">#12779</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/3f0dffd45a91d0292bf1acc1159496d1b232d319"><code>3f0dffd</code></a>
fix(eslint-plugin): [no-mixed-enums] use scope analysis instead of type
check...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/e18fea861d50ffc8b7b7149ae3454d114f6a8200"><code>e18fea8</code></a>
test(eslint-plugin): [no-floating-promises] reactivate skipped
<code>node:test</code> sp...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/324515c53c2f541cff2a8af9b2a929decba0af91"><code>324515c</code></a>
test(eslint-plugin): [no-unnecessary-condition] add tests for optional
chains...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/2a387f1298e9c10b83936044a017f84b8ee5b7f3"><code>2a387f1</code></a>
feat(eslint-plugin): [no-misused-promises] add flagUnions option for
checkCon...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/8f4e00a4e8f3bdf93a5e5e8bc568ba1c15a4f896"><code>8f4e00a</code></a>
chore(release): publish 8.68.0</li>
<li>Additional commits viewable in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.69.0/packages/eslint-plugin">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/parser` from 8.67.0 to 8.69.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases">@​typescript-eslint/parser's
releases</a>.</em></p>
<blockquote>
<h2>v8.69.0</h2>
<h2>8.69.0 (2026-08-31)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-misused-promises] add flagUnions
option for checkConditionals (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12603">#12603</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-mixed-enums] use scope analysis
instead of type checking for merged namespaces (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12731">#12731</a>)</li>
<li><strong>eslint-plugin:</strong> [unified-signatures] compare type
parameters by constraint instead of name (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12741">#12741</a>)</li>
<li><strong>eslint-plugin:</strong> [no-meaningless-void-operator]
report void on non-call expressions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12727">#12727</a>)</li>
<li><strong>website:</strong> respect allowJs playground config (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12744">#12744</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Abdu Alim Arlikhozhaev <a
href="https://github.com/Arlikhozhaev"><code>@​Arlikhozhaev</code></a></li>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Josh Goldberg ✨</li>
<li>wonbeanie <a
href="https://github.com/wonbeanie"><code>@​wonbeanie</code></a></li>
<li>Younsang Na <a
href="https://github.com/nayounsang"><code>@​nayounsang</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.69.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
<h2>v8.68.0</h2>
<h2>8.68.0 (2026-08-24)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [strict-void-return] add fix
suggestions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12086">#12086</a>)</li>
<li><strong>utils:</strong> support ESLint rule meta.languages (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12663">#12663</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [unified-signatures] deduplicate
types in report (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12656">#12656</a>)</li>
<li><strong>eslint-plugin:</strong> [return-await] prevent autofix from
breaking code in arrow-functions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12707">#12707</a>)</li>
<li><strong>eslint-plugin:</strong> [unified-signatures] report
identical signatures (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12678">#12678</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion]
prevent stack overflow in recursive types (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12711">#12711</a>)</li>
<li><strong>eslint-plugin:</strong> [no-floating-promises] setting
<code>ignoreVoid: false</code> results in false negative in
ArrowFunctionExpression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12646">#12646</a>)</li>
<li><strong>eslint-plugin:</strong> [no-empty-object-type] ignore
suggestions that result in invalid interfaces and export defaults (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12739">#12739</a>)</li>
<li><strong>website:</strong> playground crashes on <code>extends</code>
configs (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12608">#12608</a>)</li>
<li><strong>website:</strong> account for thanks.dev and out-of-band
donors in sponsors list (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12735">#12735</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Hugo <a
href="https://github.com/hugop95"><code>@​hugop95</code></a></li>
<li>Josh Goldberg ✨</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md">@​typescript-eslint/parser's
changelog</a>.</em></p>
<blockquote>
<h2>8.69.0 (2026-08-31)</h2>
<p>This was a version bump only for parser to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.69.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
<h2>8.68.0 (2026-08-24)</h2>
<p>This was a version bump only for parser to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/9a6e546823e5d8f2dc015df2aa66c0230615e209"><code>9a6e546</code></a>
chore(release): publish 8.69.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/8f4e00a4e8f3bdf93a5e5e8bc568ba1c15a4f896"><code>8f4e00a</code></a>
chore(release): publish 8.68.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/55f6d5d4ca39d2fab93db97ced497b956017878d"><code>55f6d5d</code></a>
chore: enable source maps (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12677">#12677</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.69.0/packages/parser">compare
view</a></li>
</ul>
</details>
<br />

Updates `rollup` from 4.62.5 to 4.63.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rollup/rollup/releases">rollup's
releases</a>.</em></p>
<blockquote>
<h2>v4.63.1</h2>
<h2>4.63.1</h2>
<p><em>2026-08-28</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Revert function return value tracking until the most recent issue is
understood (<a
href="https://redirect.github.com/rollup/rollup/issues/6490">#6490</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6489">#6489</a>:
fix(deps): update minor/patch updates (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6490">#6490</a>:
Revert improve function return value tracking (<a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
</ul>
<h2>v4.63.0</h2>
<h2>4.63.0</h2>
<p><em>2026-08-25</em></p>
<h3>Features</h3>
<ul>
<li>Allow to analyze function return values in many more cases (<a
href="https://redirect.github.com/rollup/rollup/issues/6065">#6065</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6065">#6065</a>:
feat: improve function return value tracking (<a
href="https://github.com/cyyynthia"><code>@​cyyynthia</code></a>, <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6482">#6482</a>:
Remove unused rendered module sources map (<a
href="https://github.com/yoominho91"><code>@​yoominho91</code></a>, <a
href="https://github.com/irontaek"><code>@​irontaek</code></a>, <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6483">#6483</a>:
chore(deps): update minor/patch updates (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6484">#6484</a>:
fix(deps): update swc monorepo (major) (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot], <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6485">#6485</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot], <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6486">#6486</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rollup/rollup/blob/master/CHANGELOG.md">rollup's
changelog</a>.</em></p>
<blockquote>
<h2>4.63.1</h2>
<p><em>2026-08-28</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Revert function return value tracking until the most recent issue is
understood (<a
href="https://redirect.github.com/rollup/rollup/issues/6490">#6490</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6489">#6489</a>:
fix(deps): update minor/patch updates (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6490">#6490</a>:
Revert improve function return value tracking (<a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
</ul>
<h2>4.63.0</h2>
<p><em>2026-08-25</em></p>
<h3>Features</h3>
<ul>
<li>Allow to analyze function return values in many more cases (<a
href="https://redirect.github.com/rollup/rollup/issues/6065">#6065</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6065">#6065</a>:
feat: improve function return value tracking (<a
href="https://github.com/cyyynthia"><code>@​cyyynthia</code></a>, <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6482">#6482</a>:
Remove unused rendered module sources map (<a
href="https://github.com/yoominho91"><code>@​yoominho91</code></a>, <a
href="https://github.com/irontaek"><code>@​irontaek</code></a>, <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6483">#6483</a>:
chore(deps): update minor/patch updates (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6484">#6484</a>:
fix(deps): update swc monorepo (major) (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot], <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6485">#6485</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot], <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/6486">#6486</a>:
chore(deps): lock file maintenance (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/rollup/rollup/commit/78bfef0cb94479566f81012fafa372c84b90bd34"><code>78bfef0</code></a>
4.63.1</li>
<li><a
href="https://github.com/rollup/rollup/commit/be6b8352974d521a0574205940b9d1bda66acd9c"><code>be6b835</code></a>
Revert improve function return value tracking (<a
href="https://redirect.github.com/rollup/rollup/issues/6490">#6490</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/db15922c05713465fa11e5eb976e88ffdb0d3376"><code>db15922</code></a>
fix(deps): update minor/patch updates (<a
href="https://redirect.github.com/rollup/rollup/issues/6489">#6489</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/34b8b924c815ec9413d7821f6fd54cc615584a51"><code>34b8b92</code></a>
4.63.0</li>
<li><a
href="https://github.com/rollup/rollup/commit/456b237dbfcc35c48d76c6be2060f881f440a532"><code>456b237</code></a>
feat: improve function return value tracking (<a
href="https://redirect.github.com/rollup/rollup/issues/6065">#6065</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/21528bb381e0c5a5853f91e04d597fa2f45568fa"><code>21528bb</code></a>
fix(deps): update swc monorepo (major) (<a
href="https://redirect.github.com/rollup/rollup/issues/6484">#6484</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/250b175b33b6a3ef96b54d509137f23db669ee9f"><code>250b175</code></a>
chore(deps): lock file maintenance (<a
href="https://redirect.github.com/rollup/rollup/issues/6486">#6486</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/89bda2cd8e9def2ea037e7dbffaf392ce9f1ddcb"><code>89bda2c</code></a>
chore(deps): update minor/patch updates (<a
href="https://redirect.github.com/rollup/rollup/issues/6483">#6483</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/f0b0413470667e1c4efe6e07ef9aecc144a2a950"><code>f0b0413</code></a>
chore(deps): lock file maintenance (<a
href="https://redirect.github.com/rollup/rollup/issues/6485">#6485</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/a362d28d4cc01513c927678d068182f569954eba"><code>a362d28</code></a>
Remove unused rendered module sources map (<a
href="https://redirect.github.com/rollup/rollup/issues/6482">#6482</a>)</li>
<li>See full diff in <a
href="https://github.com/rollup/rollup/compare/v4.62.5...v4.63.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `typescript-eslint` from 8.67.0 to 8.69.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases">typescript-eslint's
releases</a>.</em></p>
<blockquote>
<h2>v8.69.0</h2>
<h2>8.69.0 (2026-08-31)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-misused-promises] add flagUnions
option for checkConditionals (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12603">#12603</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-mixed-enums] use scope analysis
instead of type checking for merged namespaces (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12731">#12731</a>)</li>
<li><strong>eslint-plugin:</strong> [unified-signatures] compare type
parameters by constraint instead of name (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12741">#12741</a>)</li>
<li><strong>eslint-plugin:</strong> [no-meaningless-void-operator]
report void on non-call expressions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12727">#12727</a>)</li>
<li><strong>website:</strong> respect allowJs playground config (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12744">#12744</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Abdu Alim Arlikhozhaev <a
href="https://github.com/Arlikhozhaev"><code>@​Arlikhozhaev</code></a></li>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Josh Goldberg ✨</li>
<li>wonbeanie <a
href="https://github.com/wonbeanie"><code>@​wonbeanie</code></a></li>
<li>Younsang Na <a
href="https://github.com/nayounsang"><code>@​nayounsang</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.69.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
<h2>v8.68.0</h2>
<h2>8.68.0 (2026-08-24)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [strict-void-return] add fix
suggestions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12086">#12086</a>)</li>
<li><strong>utils:</strong> support ESLint rule meta.languages (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12663">#12663</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [unified-signatures] deduplicate
types in report (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12656">#12656</a>)</li>
<li><strong>eslint-plugin:</strong> [return-await] prevent autofix from
breaking code in arrow-functions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12707">#12707</a>)</li>
<li><strong>eslint-plugin:</strong> [unified-signatures] report
identical signatures (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12678">#12678</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion]
prevent stack overflow in recursive types (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12711">#12711</a>)</li>
<li><strong>eslint-plugin:</strong> [no-floating-promises] setting
<code>ignoreVoid: false</code> results in false negative in
ArrowFunctionExpression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12646">#12646</a>)</li>
<li><strong>eslint-plugin:</strong> [no-empty-object-type] ignore
suggestions that result in invalid interfaces and export defaults (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12739">#12739</a>)</li>
<li><strong>website:</strong> playground crashes on <code>extends</code>
configs (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12608">#12608</a>)</li>
<li><strong>website:</strong> account for thanks.dev and out-of-band
donors in sponsors list (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12735">#12735</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a></li>
<li>Hugo <a
href="https://github.com/hugop95"><code>@​hugop95</code></a></li>
<li>Josh Goldberg ✨</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md">typescript-eslint's
changelog</a>.</em></p>
<blockquote>
<h2>8.69.0 (2026-08-31)</h2>
<p>This was a version bump only for typescript-eslint to align it with
other projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.69.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
<h2>8.68.0 (2026-08-24)</h2>
<p>This was a version bump only for typescript-eslint to align it with
other projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/9a6e546823e5d8f2dc015df2aa66c0230615e209"><code>9a6e546</code></a>
chore(release): publish 8.69.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/8f4e00a4e8f3bdf93a5e5e8bc568ba1c15a4f896"><code>8f4e00a</code></a>
chore(release): publish 8.68.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/55f6d5d4ca39d2fab93db97ced497b956017878d"><code>55f6d5d</code></a>
chore: enable source maps (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint/issues/12677">#12677</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.69.0/packages/typescript-eslint">compare
view</a></li>
</ul>
</details>
<br />

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Natasha Gorshunova <47688881+nattallius@users.noreply.github.com>
…5562d` (#2700)

Bumps
[third_party/devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend)
from `d1a4fbf` to `2a5562d`.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/2a5562dea4bfa759c15700d2311fc623c1b684d1"><code>2a5562d</code></a>
Fix flaky test in front_end/panels/application/WebMCPView.test.ts</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/b44678065f0b07b07b35f8d111e3272500c6318c"><code>b446780</code></a>
[position-area] Allow configuring axis mode and self bit in the
editor</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/e751f983c9a47b34c8ea59a68e16cb053bcc259b"><code>e751f98</code></a>
Timeline: Clean up track appender tests and assertions</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/49fe11a1e9191ca6a3ee854af69a57f91f3b76e7"><code>49fe11a</code></a>
Testing: Migrate NetworkDataGridNode unit tests to
NetworkRequestHelpers</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/27d82ddc7c925a2ed7a0b5a18a1574c98efff2b6"><code>27d82dd</code></a>
Testing: Migrate Network headers and item views to
NetworkRequestHelpers</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/5d3299c13092010a391fa50fae0f8589a501ace5"><code>5d3299c</code></a>
Timeline: Clean up and optimize timeline panel test suites</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/c1bbd5816b1335e4fd6165b6740971b7fd6a0124"><code>c1bbd58</code></a>
Parse initial_url from task.textproto in AI eval helpers</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/d13fdbd416b5d3ab3d185910e1550461fdef0dae"><code>d13fdbd</code></a>
Add wrap-reverse to the flexbox editor's flex-wrap options</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/93d8a052f677cb46e6e52446e19368d725367408"><code>93d8a05</code></a>
Add helpers to launch eval base apps</li>
<li><a
href="https://github.com/ChromeDevTools/devtools-frontend/commit/d75f2201f3c10c495a7ecd9015567c8d7383bbb9"><code>d75f220</code></a>
Add Phase 1 run_started initialization and commit marker</li>
<li>Additional commits viewable in <a
href="https://github.com/ChromeDevTools/devtools-frontend/compare/d1a4fbfd673fecf19981c27b3a461f9881eebe8e...2a5562dea4bfa759c15700d2311fc623c1b684d1">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This is part 1 of stacked PRs for DevTools comments support.

Adds the hidden CLI flag `devtoolsComments` to feature-gate all new
DevTools comment tools.
…2693)

This is part 2 of stacked PRs for DevTools comments support.

Defines the `open_devtools`, `get_devtools_comments`,
`resolve_devtools_comment`, and `reveal_in_devtools` tools with complete
schemas, categories, and descriptions, throwing `Not implemented` until
implemented. Gated behind the hidden flag `devtoolsComments`.

### Stack
1. #2692 chore: add hidden devtoolsComments flag
2. **#this PR**: chore: add comments and open_devtools tools without
implementation
3. chore: implement bridge and DevTools comments tools
… tests to McpPage (#2698)

This PR migrates tests in `tests/tools/snapshot.test.ts` to mock-based
unit tests using the established Sinon mock infrastructure and relocates
the real-browser integration tests to `tests/McpPage.test.ts`.

### Summary
- References #2639 (item 1).
- Follow-up building on #2641, #2665, and #2683.
- Relocated the 6 real-browser `waitFor` integration tests to a
dedicated `waitForTextOnPage()` suite in `tests/McpPage.test.ts` to
directly cover the `mcpPage.waitForTextOnPage` method.
- Converted all tool handler tests in `tests/tools/snapshot.test.ts`
(`take_snapshot` and `wait_for`) to mock unit tests using
`createHandlerMocks()`, completely removing `withMcpContext` from the
file.
- Asserted exact method calls on `response` and `page` using
`sinon.assert.calledOnceWithExactly()`.
- Maintained `afterEach(() => sinon.restore())` cleanup per `AGENTS.md`.

### Verification
- `npm run test tests/tools/snapshot.test.ts` (4 passed, 0 failed, exit
code: 0)
- `npm run test tests/McpPage.test.ts` (39 passed, 0 failed, exit code:
0)
- `npm run check-format` (exit code: 0)
- `npm run docs:generate` (exit code: 0)
- `git status` (clean working tree, exit code: 0)
Re-applies the Opera seam on top of upstream's v1.8.0/v1.9.0 changes:
- Config files moved from src/bin/ to src/config/ (cli-options, mcp-options,
  browser-options, category-options); re-applied branding and the OPERA
  category override at the new locations.
- McpServer class replaces createMcpServer; re-wired operaHooks,
  buildLaunchOptions and branded disclaimers onto the class.
- Registry and .gitattributes updated for the config move and the
  release-please files deleted in favour of publish-on-tag.
@mateuszk-opera mateuszk-opera self-assigned this Sep 10, 2026
@mateuszk-opera mateuszk-opera changed the title Chore/upstream intake 1.9.0 chore: upstream intake 1.9.0 Sep 10, 2026
@mateuszk-opera
mateuszk-opera merged commit e6bde49 into main Sep 10, 2026
15 of 18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.