Skip to content

deps: upgrade trace_engine to 0.0.64#16955

Open
connorjclark wants to merge 6 commits intomainfrom
update-trace-engine-apr-2026
Open

deps: upgrade trace_engine to 0.0.64#16955
connorjclark wants to merge 6 commits intomainfrom
update-trace-engine-apr-2026

Conversation

@connorjclark
Copy link
Copy Markdown
Collaborator

@connorjclark connorjclark commented Apr 8, 2026

This is a draft because my corp machine is preventing me from running npm publish. New behavior, don't know how to fix it yet. So I can't actually pull in the new code in this PR, but I verified it works locally. Paul published it for me.

0.0.61 to 0.0.64 changelog (all of devtools): ChromeDevTools/devtools-frontend@5e6608e...776967b

git log 5e6608ed73149c4453a001ec2845626a65fbfa1d...776967b00c -- front_end/models/trace:

Changelog (just front_end/models/trace, mostly relevant to our usage in LH)
commit 836ae9a4124d884fa428b209ef134dcb94c297b4
Author: Jack Franklin <jacktfranklin@chromium.org>
Date:   Tue Apr 7 13:21:05 2026 +0100

    AI: improve understanding of how to get main thread activity
    
    1. Makes it possible to get all the main thread activity by default.
    2. Tries to teach the AI how to translate bounds to get relevant main
       thread activity.
    
    Bug: 498609926
    Change-Id: I4b0e226c94cef8bd0c33884c2949d47eca35317d
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7725364
    Reviewed-by: Kateryna Prokopenko <kprokopenko@chromium.org>
    Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
    Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>

commit 2e79b236fbe380a21a42157993a8ba49d16538ae
Author: Helmut Januschka <helmut@januschka.com>
Date:   Mon Mar 23 11:41:02 2026 +0100

    LCP discovery: clarify preload priority and lazy-preload handling
    
    Use preload-specific fetchpriority messaging and treat lazy LCP as effectively eager when a high-priority preload request exists.
    
    Bug: 419817756
    Change-Id: Ibdfc04d0d2aa9d6fb2c8d00023a1374827e718fc
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7655111
    Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
    Commit-Queue: Simon Zünd <szuend@chromium.org>
    Reviewed-by: Simon Zünd <szuend@chromium.org>

commit 78995fd152644c7be949fbc3c19379da4b1ae7a6
Author: Simon Zünd <szuend@chromium.org>
Date:   Mon Mar 16 10:28:36 2026 +0100

    [rpp] Remove timeline-v8-runtime-call-stats experiment
    
    This tracing category is not compiled into beta/stable Chrome and Chrome
    for testing binaries and is only effective in certain canary/dev
    releases.
    
    Moreover, developers can fall back to "Show all events" to include
    this tracing category.
    
    The category itself includes synthetic 'parse' and 'compile' frames
    for V8. We get these via separate trace events in any case.
    
    Fixed: 476074999
    Change-Id: I9c6ea636aeed75f0bc4b33ac3bc47bd6f92c32f5
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7664584
    Commit-Queue: Simon Zünd <szuend@chromium.org>
    Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>

commit 595fbf659bfa1f487f9dd813db6471e444b1ffcc
Author: Jack Franklin <jacktfranklin@chromium.org>
Date:   Mon Mar 16 09:16:40 2026 +0000

    AI: Add "Reveal" link when a trace is recorded.
    
    Fixed: 491360946
    Change-Id: Id0384ae73e6cacde7051d4b8e2b679a451d63520
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7664521
    Commit-Queue: Kim-Anh Tran <kimanh@chromium.org>
    Reviewed-by: Kim-Anh Tran <kimanh@chromium.org>
    Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
    Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>

commit a700938f1f8897080f00b889750a97ee33803d9e
Author: Helmut Januschka <helmut@januschka.com>
Date:   Fri Mar 6 08:44:48 2026 +0100

    Add 'Declare a character encoding' performance panel insight
    
    Bug: 40660586
    Change-Id: Id8d7defb2c46d235375f29ec3985154021c37630
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7577714
    Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
    Commit-Queue: Helmut Januschka <helmut@januschka.com>
    Reviewed-by: Danil Somsikov <dsv@chromium.org>

commit cc73844bec4914f584ab960a03c2c80c4c70ec99
Author: Jack Franklin <jacktfranklin@chromium.org>
Date:   Thu Mar 5 10:44:58 2026 +0100

    Move LH types into models/lighthouse
    
    We need these types available in the AI panel, and in the AI models, so
    we need to move these out of the panel.
    
    This CL is a pure restructure of types, no functionality.
    
    Bypass-Check-License: some files are moved, not new.
    Bug: 489620101
    Change-Id: Idee259abe194f590a9fcdeb4b3708e837ac54ffb
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7633109
    Reviewed-by: Kim-Anh Tran <kimanh@chromium.org>
    Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
    Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>

commit d8a7070cb4d5dbb2881dbeb359670143a0350028
Author: Barry Pollard <barrypollard@google.com>
Date:   Fri Feb 27 18:25:19 2026 +0000

    Render-blocking should (mostly) be with a hyphen.
    
    Grammar police as this is bugging me. When used as an compound
    modifier/adjective "render-blocking" should be with a hyphen (e.g. "a
    render-blocking resource").
    
    After the noun, it's a bit more subjective (e.g. "these resources are
    render blocking" is technically correct, but "these resources are
    render-blocking" isn't totally incorrect either, as can be shorthand
    for "these resources are render-blocking (resources)"). So for
    consistency, and cause my head hurts trying to figure out which is
    which, I've changed them too.
    
    Change-Id: I2220ce2f8cbac008e7d30aacc496351721382410
    Bug: None
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7609649
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
    Commit-Queue: Barry Pollard <barrypollard@chromium.org>

commit a718fd59205c847882992a8aec65f5e23ed93a7c
Author: Nikolay Vitkov <nvitkov@chromium.org>
Date:   Mon Feb 23 20:36:59 2026 +0100

    Use ? instead of undefined in most places
    
    This simplifies the code as we don't need to explicitly pass
    the variables reducing the need to visually skip this part ot the code.
    If we want to be explicit about passing something we should use null.
    https://google.github.io/styleguide/tsguide.html#prefer-optional-over-undefined
    
    Bug: none
    Change-Id: I321a4fdf8abdc9a03c2cb311dfb7f7ddc762a0e7
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7596197
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>

commit ea2c92b098d68aecd9a3fa0247bdb3fbcfab846f
Author: Paul Irish <paulirish@chromium.org>
Date:   Tue Jan 20 11:01:01 2026 -0800

    RPP: Fix EventsSerializer crash on JSSample events
    
    The keyForEvent method was calling getActiveManager() for JSSample events,
    which are synthetic but not SyntheticBased. This caused a crash in tests
    where the manager was not initialized. Adding an early return for
    JSSample events fix this and aligns with the expected behavior of returning
    null for these events.
    
    Bug: 477295323
    Change-Id: Ia1a5b186297c6007506bd94057f56f4f9cf8624d
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7498915
    Auto-Submit: Paul Irish <paulirish@chromium.org>
    Reviewed-by: Connor Clark <cjamcl@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>

commit 4f3ccbf49d0103178f32f8b6e40afff17e3c461d
Author: alinavarkki <alinavarkki@google.com>
Date:   Fri Jan 16 20:39:47 2026 +0100

    [GreenDev] Remove widgets prototype
    
    Bug: 461427169
    Change-Id: Idea32e7ab6bf0063f20238839959455f7cfc2806
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7489113
    Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
    Commit-Queue: Alina Varkki <alinavarkki@chromium.org>

commit 8b9a227cf425a51e2825dad31e7cdc3bd3c4d606
Author: Jack Franklin <jacktfranklin@chromium.org>
Date:   Tue Jan 20 12:13:43 2026 +0000

    Trace: remove outdated comment
    
    Way way way back in the past we thought we would have multiple
    processors, and at one point we did have a Lighthouse processor in here,
    but we moved away from that and have no plans to add it. I think this
    comment just got left behind.
    
    R=kimanh@chromium.org
    
    Bug: none
    Change-Id: I7fd7bd1b1a47abdb0d98ff8e38a5e787ca1e6af4
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7497611
    Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
    Reviewed-by: Kim-Anh Tran <kimanh@chromium.org>
    Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
    Commit-Queue: Kim-Anh Tran <kimanh@chromium.org>

commit eddf713e1954b6b87e77c64935d71c22c73820a6
Author: Connor Clark <cjamcl@chromium.org>
Date:   Thu Jan 15 11:29:35 2026 -0800

    [RPP] Tweak strings, styles for soft LCP
    
    - Fix text in Summary drawer
    - Capitalize (largest contentful paint -> Largest Contentful Paint)
    - Add * to soft markers (Nav*, LCP*)
    
    Bug: 475845083
    Change-Id: I9f4c42ab6cc27846c1d2e20e889ebdef671c3368
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7471788
    Commit-Queue: Connor Clark <cjamcl@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Reviewed-by: Paul Irish <paulirish@chromium.org>

commit 5823edd2e8a40d6d6b4a6ab8ea123121c90bd8f5
Author: Jack Franklin <jacktfranklin@chromium.org>
Date:   Fri Jan 9 12:00:34 2026 +0000

    RPP: use new network initiator lookup in NetworkDependencyTree
    
    R=paulirish@chromium.org
    
    Bug: 392090449
    Change-Id: Ib25fa5d11188db689f9192be4b5b1b8398f04304
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7414809
    Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
    Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
    Reviewed-by: Paul Irish <paulirish@chromium.org>

commit a14d23c64f8bea44a93b53410f3072506cd7b61d
Author: Nikolay Vitkov <nvitkov@chromium.org>
Date:   Tue Jan 13 13:12:03 2026 +0100

    Fix more prod Deps
    
    Identified with a script.
    
    Bug: none
    Change-Id: Ia6ca8e31f27bbef7fe297ff414299be39b0f68cb
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7456247
    Commit-Queue: Simon Zünd <szuend@chromium.org>
    Reviewed-by: Simon Zünd <szuend@chromium.org>

commit 4ab85c801fa10e6b382804dc0565a3a7c6256f96
Author: Nikolay Vitkov <nvitkov@chromium.org>
Date:   Wed Jan 7 14:51:41 2026 +0100

    Update build deps and visibility
    
    The CL tries to fix all the deps that are not included but should.
    The may be the cause of flaky build failures on Windows.
    
    Bug: none
    Change-Id: I3c39c2381a5a8928bdcfe39962a10d2810a08fa8
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7404137
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Commit-Queue: Ergün Erdoğmuş <ergunsh@chromium.org>

commit 0f87dceb5652d26c12903cfac707bc1b505bb277
Author: Jack Franklin <jacktfranklin@chromium.org>
Date:   Wed Jan 7 11:07:08 2026 +0000

    RPP: fix incorrect initiators by using samples + stack traces
    
    This CL fixes a long-standing bug where the initiator for certain
    resources - primarily ones injected by JS - are incorrect in the network
    trace event's `initiator` object.
    
    We could fix this on the backend, but it is much harder to do due to
    various reasons (please see the attached bug which has an investigation
    doc linked). Instead, the easier fix is to hijack initiator logic for
    network requests and add in extra logic to first look for a parent call
    frame which is more reliable.
    
    I've left one usage in Insights where we rely on the (potentially
    broken) initiator lookup; I just want some more time to verify that
    change and make sure it works as intended. I also worry that it could be
    expensive to check (as the implementation currently is O(n) based on
    searching the network requests for a match by a URL). If this is a
    problem, we can update the network handler to create a map of
    URL=>RequestId (or URL=>Request directly but I wonder if we want to
    avoid yet another map of every request) and then avoid the linear
    look-up.
    
    Bug: 392090449
    Change-Id: I409044021f31b990c563d29394313b83132b70d4
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7032169
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
    Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>

commit 27f9ac6ec1566274c7ba1856f2365c1abfa04085
Author: Connor Clark <cjamcl@chromium.org>
Date:   Thu Dec 18 12:43:22 2025 -0800

    [RPP] Ignore soft-LCP associated with unknown soft-nav
    
    Fixed: 469948184
    Change-Id: Id550722d723d9c5c980af84a5a8e6039c6ccf58f
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7276394
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>
    Reviewed-by: Paul Irish <paulirish@chromium.org>

commit 37e9d5d08dffe85c5d8238def0f2b0e9a15c624c
Author: Danil Somsikov <dsv@chromium.org>
Date:   Thu Dec 18 04:15:21 2025 -0800

    Fix anonymous functions being pooled together in the performance profile
    
    Bug: 40685097
    Change-Id: I0de1ba83b1d891ac3414ee2d2eff412ce0f2dd0a
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7273387
    Reviewed-by: Connor Clark <cjamcl@chromium.org>
    Auto-Submit: Danil Somsikov <dsv@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>

commit 30133a2f37f21183a1cced221177bff7838fc0ba
Author: Connor Clark <cjamcl@chromium.org>
Date:   Mon Dec 15 16:17:53 2025 -0800

    [RPP] Simplify PageLoadMetricsHandler map
    
    Instead of using a navigation id as the key, use the navigation event
    object directly. Benefits:
    
    * The map can more simply contain soft and hard navs
    * Usages don't need to know how to lookup the navigation event by an
      id - a useful property since where to look depends on if its a soft
      or a hard navigation
    * Also changed InsightModel to hold the navigation event directly,
      rather than a navigation id. Insights still don't handle soft-navs yet
    
    Bug: 450673887
    Change-Id: I58c74cc92fae1f3233fb8191310889caa2d141f1
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7214930
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>

commit 802453b5345f0e6a28e727037d420084102145fa
Author: Connor Clark <cjamcl@chromium.org>
Date:   Mon Dec 15 16:17:43 2025 -0800

    [RPP] Add marker for LCP after a soft navigation
    
    Bug: 450673887
    Change-Id: Id3f470f94c89a9e9784058f2105fc27403fa015f
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7214929
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>

commit 073fe0216432bcf2d35cfc708215ccca7dcd5f82
Author: Connor Clark <cjamcl@chromium.org>
Date:   Mon Dec 15 16:17:32 2025 -0800

    [RPP] Add marker for soft navigations
    
    Bug: 450673886
    Change-Id: I978f4093126bd9e045be7cc931c04a2ea054f747
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7214928
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>

commit e0772fca545c40f6146d93e32d42d8abc67c17d1
Author: Connor Clark <cjamcl@chromium.org>
Date:   Mon Dec 15 17:41:57 2025 -0800

    [RPP] Don't set SyntheticLayoutShiftCluster rawSourceEvent to fake event
    
    * Ensure rawSourceEvent is an actually raw source event
    * Throw error in EventsSerializer.keyForEvent if event is not known,
      instead of generating a bad key that will throw an error much later
    
    This should resolve the strange bug in the AI Performance Agent where
    the text rendered as broken plain markdown.
    
    Fixed: 469185150
    Change-Id: I835fe58bc21dc830a030087192c8ce6f8f458c9c
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7262923
    Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
    Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>

commit d998df961baf27d919a95d97252023399916e090
Author: Kuba Mikulski <kmikulski@google.com>
Date:   Tue Dec 9 07:11:23 2025 -0800

    [TDR] Remove TODOs linked to issue 372319476
    
    This CL was generated by an AI agent and verified by the CL owner before
    sending for review. The TODOs were identified as stale by TODO Removal
    Agent (http://go/dead-todo-removal-agent).
    * Detailed reasoning can be found in the CL comments.
    * How to review this CL: http://go/tdr-review-instructions
    * To opt-out from future reviews: http://go/tdr-opt-out.
    
    The associated bug crbug.com/372319476 was closed as OBSOLETE after an
    investigation determined that the proposed trace event
    (HTMLDocumentParser::FetchQueuedPreloads) was unreliable for its
    intended purpose. The exploration is complete, and the task is no longer
    relevant.
    
    Change-Id: Id532b716a27355d77d30e6a7b4c92e859ac61bde
    Bug: 372319476
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7241811
    Commit-Queue: Kuba Mikulski <kmikulski@google.com>
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Reviewed-by: Connor Clark <cjamcl@chromium.org>

commit 51e3a7413f715d0704cf20f44fbcaaa78d48b77e
Author: Kuba Mikulski <kmikulski@google.com>
Date:   Tue Dec 9 07:10:59 2025 -0800

    [TDR] Remove TODOs linked to issue 40273823
    
    This CL was generated by an AI agent and verified by the CL owner before
    sending for review. The TODOs were identified as stale by TODO Removal
    Agent (http://go/dead-todo-removal-agent).
    * Detailed reasoning can be found in the CL comments.
    * How to review this CL: http://go/tdr-review-instructions
    * To opt-out from future reviews: http://go/tdr-opt-out.
    
    The associated bug crbug.com/40273823 was closed as OBSOLETE. The
    discussion in the bug concluded that requestMethod should remain a
    string and not be converted to an enum, making the TODO's proposed
    change irrelevant.
    
    Change-Id: Id87328017630893133dbb95c5911798f7ae27a8f
    Bug: 40273823
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7241603
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Reviewed-by: Nancy Li <nancyly@chromium.org>

commit 7116806a8572358c8424600a0111972d925f48aa
Author: Connor Clark <cjamcl@chromium.org>
Date:   Tue Dec 9 12:32:18 2025 -0800

    [trace] Document behavior of setHasChildren on BottomUpNode
    
    This code had no bugs, but it threw me (and Gemini) for a loop because
    it wasn't clear that "setHasChildren" here was being called correctly.
    
    Fixed: 454088373
    Change-Id: I3e01f12b46a4cf5f249301cfccb1be1e5a5474c1
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7240306
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>

commit 4700c21f04b896b38fba933bb8a37913e6cdf3fd
Author: Connor Clark <cjamcl@chromium.org>
Date:   Mon Dec 1 17:29:26 2025 -0800

    [RPP] Improve error handling for insights
    
    An insight set's `models` was typed in a way that was conducive to
    throwing errors at runtime, since each caller had to check if the value
    was an Error first. TypeScript makes it annoying to actually type this
    indexed type as an Error, so instead I made it nullable and introduced a
    second property `modelErrors` to contain the actual error information.
    
    This would have prevented the associated bug. It also addresses many
    other potential bugs of the same nature.
    
    Fixed: 465174321
    Change-Id: I87bb05d2bcf00288acf85f7f894d08416e846b39
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7213670
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>
    Commit-Queue: Paul Irish <paulirish@chromium.org>
    Reviewed-by: Paul Irish <paulirish@chromium.org>

commit 6d73baf67ef3a4e4b5ddd1ff9b75d938ca2f15cb
Author: alinavarkki <alinavarkki@google.com>
Date:   Mon Dec 1 19:37:26 2025 +0100

    [GreenDev] Flamechart widget
    
    Allows the performance agent to add a flamechart widget. The agent can provides the start and end of the displayed flamechart.
    
    Bug: 461427169
    Change-Id: Ideabb09ca14eada67d8e7a0a88bb3a45cc9e80cb
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7208912
    Reviewed-by: Finnur Thorarinsson <finnur@chromium.org>
    Commit-Queue: Alina Varkki <alinavarkki@chromium.org>
    Auto-Submit: Alina Varkki <alinavarkki@chromium.org>

commit 7d26bddc0d06cd6a294663fd23d0918e6ad33475
Author: Finnur Thorarinsson <finnur@chromium.org>
Date:   Mon Dec 1 15:32:00 2025 +0000

    [GreenDev]: Flesh out the annotations a little further.
    
    - Add support for showing annotations for Network Requests
      and Network Request Details.
    - Add annotations for elements affected by layout shift.
    - Annotations in Elements panel now properly handle TreeElements
      collapsing/expanding.
    - Support users being able to delete annotations.
    - Add anchor connection points for annotations.
    
    Bug: 461428483
    Change-Id: I49881112538425450face562cd60151537511849
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7213173
    Reviewed-by: Alina Varkki <alinavarkki@chromium.org>
    Commit-Queue: Finnur Thorarinsson <finnur@chromium.org>

commit 9b261e7b580102c22270346bc4311f86570dae03
Author: Jack Franklin <jacktfranklin@chromium.org>
Date:   Fri Nov 28 11:51:43 2025 +0000

    GreenDev: "floaty" in DevTools prototype
    
    This is the prototype of the "DevTools Floaty" window idea that will
    enable users to use a "point and click" approach to add additional
    context to the active AI Agent in DevTools.
    
    **Important**: all of this functionality is behind the GreenDev flag. We
    have **no intention** of pushing this feature live in this state. This
    is code landing to user test in Canary that will not ship without an
    additional project to make this code fully production worthy. That is
    why this CL has no tests, for example.
    
    **What**
    
    This CL is made up of a few parts:
    
    1. The `Floaty` window. This window appears either via the icon in the
       AI Assistance panel, or by using the `f` key on the keyboard.
    2. The `onFloatyClick` function, which can be called when the user has
      clicked on something that we want to add as context. If the floaty is
      in inspect mode, it will add this item to the context.
    3. The `extraContext` in the AI Assistance chat view, which shows all
       the additional context items the user has added.
    4. The `facts` added in AI Agent, which are added to the prompt that is
       sent to the LLM so it is aware that the user has explicitly added more
       items to the context.
    
    Bug: 461428712
    Change-Id: Ic21e18d266a994d4eb593d3b7ef4726b5d214cb0
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7198584
    Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
    Reviewed-by: Finnur Thorarinsson <finnur@chromium.org>

commit 703da59c49cbeb09e844d0ebf6339430d2276490
Author: Paul Irish <paulirish@chromium.org>
Date:   Wed Nov 19 14:16:24 2025 -0800

    RPP: Support columns, pretty'd sources in Source's panel profile data
    
    The profile data decorations in the Sources panel now apply to the '-'
    lines in Sources when a minified file is pretty-printed, and correctly
    for minified + source map'd scripts.
    
    The Sources panel displays profile data ("x ms") in the line gutters
    when a performance trace is active. However, we did not handle common
    edge cases involving pretty-formatted files (the `{}` button), nor did
    we handle source mapped content well (we totally ignored column
    information, and since most generated code is minified across few lines,
    profile data would be displayed far too coarsely).
    
    Now, we utilize the pretty -> original line mapping to create accurate
    profile data for the formatted code; and further we consider the column
    when mapping the profile data to a UILocation.
    
    Bug: 406012441
    Change-Id: I84278eec4e778c62f8568e2c96353fa98be92b32
    Bypass-Check-License: test fixture cannot have the license without breaking the test. (because isMinified)
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6588993
    Commit-Queue: Paul Irish <paulirish@chromium.org>
    Reviewed-by: Connor Clark <cjamcl@chromium.org>

commit cd885374e464e252345251e3b1585fbd52a9aa92
Author: Connor Clark <cjamcl@chromium.org>
Date:   Tue Nov 18 16:58:54 2025 -0800

    [AI] Add line, column to AICallTree serialization
    
    This adds line/column to each frame serialized by AICallTree. This is
    the same line/column presented to the user, respecting source maps if
    present.
    
    Fixed: 461845211
    Change-Id: Ib77e7fab0d8d3dfe70eb665c9309412e8794b4e8
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7169758
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>

commit 6a3d30b18308e0702cb6e107e2b0c9c321f31675
Author: Nikolay Vitkov <nvitkov@chromium.org>
Date:   Mon Nov 17 11:52:50 2025 +0100

    Fix Lint command
    
    Bug: none
    Change-Id: I1444862dc1340527723dd7b1b216ee92daee4418
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7157048
    Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
    Commit-Queue: Ergün Erdoğmuş <ergunsh@chromium.org>
    Reviewed-by: Ergün Erdoğmuş <ergunsh@chromium.org>
    Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
    Owners-Override: Ergün Erdoğmuş <ergunsh@chromium.org>

commit efd29ef74ce4d3ce04344d22bcd7e32b18b5b904
Author: Issack John <issackjohn@microsoft.com>
Date:   Wed Nov 5 10:16:56 2025 -0800

    Select one CPU profile stream per thread by source
    
    DevTools merges concurrent CPU profile streams on the same thread, which
    corrupts JavaScript attribution when multiple profiling sources are
    active simultaneously. For example, when JS Self-Profiling API runs
    concurrently with internal V8 tracing, their samples get incorrectly
    merged into a single profile.
    
    This CL ingests the optional args.data.source field on
    "Profile"/"ProfileChunk" trace events and selects exactly one stream per
    thread based on source priority. Models are built only for the chosen
    stream, preventing corruption.
    
    This enables reliable profiling when multiple sources are active, with
    backward compatibility for profiles without source tags
    
    Related CLs:
    V8 CL: https://crrev.com/c/7004962
    Chromium CL: https://crrev.com/c/6874588
    
    Bug: 375614293
    Change-Id: I4032b8570dfc7b70046ce5b7b979dc6f27306fda
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6877206
    Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Issack John <issackjohn@microsoft.com>

commit dfb392d4dcd19041e86c6e55d07d099479b64b90
Author: Nikolay Vitkov <nvitkov@chromium.org>
Date:   Tue Nov 11 21:12:21 2025 +0100

    [cleanup] Fix test issues
    
    We should not be importing test from another test, this will make it
    that the imported test run even when we have sharded the two into
    separate runners.
    
    Some eslint-rule could be fixed so did so.
    
    Bug: none
    Change-Id: Ibe78d8f9f743fc4fbbc0c8976a7c68fd6579a7ea
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7143198
    Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
    Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
    Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>

commit 7085befd1d91bcb3b23f522b21f3b6f43271907b
Author: Connor Clark <cjamcl@chromium.org>
Date:   Fri Nov 7 10:45:40 2025 -0800

    [RPP] Fix saving source maps when script loads before start
    
    If trace recording starts after a script had already been compiled,
    we won't get any rundown events to help associate the script with a
    frame. And without a frame, we can't find the source map to save.
    
    We can easily find a proper frame for the script given we know its
    isolate. We just need an isolate -> frame mapping. Luckily, FunctionCall
    provides that and is very common.
    
    Bug: 427455148
    Change-Id: I391d2557d1116ba8771318d0ba361f1ddd9ce9f9
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7129705
    Commit-Queue: Connor Clark <cjamcl@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Reviewed-by: Paul Irish <paulirish@chromium.org>

commit 67a631561ba193aaf72303215d5ef5bd2def4811
Author: Connor Clark <cjamcl@chromium.org>
Date:   Thu Nov 6 14:33:53 2025 -0800

    [RPP] Simplify insight set id
    
    Instead of using the navigation id for navigation-associated insight
    sets, just use a simpler `NAVIGATION_<index>` string. This makes them
    more human (and non-human) friendly.
    
    Bug: 452335091
    Change-Id: I29925dc9fc4e7fc411a8f68feea725917a5d9587
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7128914
    Commit-Queue: Paul Irish <paulirish@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>
    Reviewed-by: Paul Irish <paulirish@chromium.org>

commit 6ab96e17a5044dc0cd907f8fdfa766c8cb8f5eb3
Author: Jack Franklin <jacktfranklin@chromium.org>
Date:   Wed Nov 5 09:50:35 2025 +0000

    RPP: Change "CPP GC" to "C++ GC" for clarity
    
    R=szuend@chromium.org
    
    Bug: none
    Change-Id: Ia6d9cc8758f1692c7284d5f882f83a0bee14db31
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7124199
    Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
    Commit-Queue: Simon Zünd <szuend@chromium.org>
    Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
    Reviewed-by: Simon Zünd <szuend@chromium.org>

commit da824b848d37f3f8de738d6cbf57df77b30c61ab
Author: Jack Franklin <jacktfranklin@chromium.org>
Date:   Mon Nov 3 17:20:57 2025 +0000

    TraceEngine: update render_blocking with preload status change
    
    This CL fixes a bug where a blocking resource (e.g. stylesheet) is not
    marked as blocking in RPP because it is first preloaded.
    
    This was because we did not pay attention to the
    PreloadRenderBlockingStatusChange event which exists for this exact
    reason. With this CL when we construct the final synthetic network
    request for a resource, we will use the render blocking status from the
    last PreloadRenderBlockingStatusChange event (if we have any), before
    falling back to the render blocking status on the SendRequest event.
    
    R=cjamcl@chromium.org
    
    Fixed: 457323832
    Change-Id: I996a3372a4ec8f9cbf8d1c387b2ec44a80aa9c14
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7112841
    Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
    Reviewed-by: Connor Clark <cjamcl@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>

commit a42bb00c53907aa2f0d0c336d7be55729c5065a6
Author: Connor Clark <cjamcl@chromium.org>
Date:   Wed Oct 29 17:04:36 2025 -0700

    [RPP] Rename ProfileNode functionName to originalFunctionName
    
    Also removed some unused code in buildDetailsNodeForTraceEvent.
    
    Bug: 456242397
    Change-Id: Idc70296362be4abea68772dfbafeb564c370b82a
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7098669
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>

commit f2ceb57d6572709fef0e03526a4dd4b879bb0196
Author: Connor Clark <cjamcl@chromium.org>
Date:   Tue Oct 28 17:12:43 2025 -0700

    [RPP] Include HTML and CSS content in trace export
    
    For enhanced traces with script contents, inline scripts within HTML
    document did not show up correctly in the Sources panel. Only the last
    inline script showed there, which is confusing.
    
    Now, we export the contents of all HTML documents. To accommodate this,
    the "script contents" checkbox is renamed to "resource contents".
    
    Also now including CSS resources.
    
    Fixed: 455942736
    Change-Id: I44e7309d1df16f388307cfc20ea74c0cc8fd9fe1
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7088202
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>

commit 420b33e69a9639a0b2fa82b4a1aa888782a68c75
Author: Connor Clark <cjamcl@chromium.org>
Date:   Tue Oct 28 11:44:33 2025 -0700

    [RPP] In trace_app, ignore frames not in the primary main frame
    
    Sometimes, these irrelevant frames are listed first in the frame tree,
    resulting in them being the primary frame (the first
    `Target.attachedToTarget` event emitted by RehydratingConnection). That
    broke source map resolution in the Performance panel.
    
    Instead, ignore such frames in EnhancedTraceParser.
    
    Fixed: 455887912
    Change-Id: I4812ed8061fe3c4e2c44a957958560d7f9ffba27
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7091024
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>

commit 5a5fdd6301d8fb1c0e3546ad758187ad4eb39480
Author: Nikolay Vitkov <nvitkov@chromium.org>
Date:   Fri Oct 24 16:26:07 2025 +0200

    [cleanup] Prefer assert.exist
    
    Verify likely this was done as back in the day chai assert did not
    have good typing for this.
    
    Bug: none
    Change-Id: I22ce025dc9c56313560db3eade87687be8fe7ad4
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7079394
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>

commit 8cf3f6e6e069efefa0ae8ef9557214f62e856f81
Author: Nikolay Vitkov <nvitkov@chromium.org>
Date:   Tue Oct 21 22:54:06 2025 +0200

    [cleanup] Remove eslint-rulesdir in favor of EsLint plugin
    
    We already need to rewrite the package to support ESM,
    so just dropping it seems better for feature compatibility.
    
    Bug: none
    Change-Id: I26fe4f5249820bf814ddb8c4899071105b214e18
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7069903
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Auto-Submit: Nikolay Vitkov <nvitkov@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>

commit e4a23d93d00e84b5b0b0dd6c28b51bc6a505eaa2
Author: Connor Clark <cjamcl@chromium.org>
Date:   Tue Oct 21 13:59:25 2025 -0700

    [RPP] Calculate id only once per event in ungroupedTopNodes
    
    This is a minor improvement to generating an id twice for each event (on
    start and end). Instead, use a stack to calculate it just once.
    
    I explored more serious improvements here related to avoiding the second
    Map for totalTimeById – profiling showed that a significant amount of
    time was spent in Map. However, it proved too difficult to figure out in
    the time I set aside for this.
    
    I did discover a potential logic error related to marking when an event
    has children. I added a comment and a test about it, but I'm not sure
    the impact is meaningful so I'll leave it there.
    
    Bug: 444483828
    Change-Id: Ibfa584d55306177acff81e18de00a5411a7c2ae5
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6940959
    Reviewed-by: Paul Irish <paulirish@chromium.org>
    Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>

commit 0f817a9272f8589dd7cf2857935a982e9f0f7646
Author: Paul Irish <paulirish@chromium.org>
Date:   Mon Oct 20 11:33:51 2025 -0700

    RPP: Improve clarity around forced reflow insight details
    
    Change-Id: If610429677f511c6e7fda1f030aae3cd33bf05d9
    Bug: none
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6921528
    Commit-Queue: Connor Clark <cjamcl@chromium.org>
    Reviewed-by: Connor Clark <cjamcl@chromium.org>
    Commit-Queue: Paul Irish <paulirish@chromium.org>
    Auto-Submit: Paul Irish <paulirish@chromium.org>

commit c3f7930663c638e4cbbaaf42d587225838a986f6
Author: Connor Clark <cjamcl@chromium.org>
Date:   Thu Oct 16 13:58:00 2025 -0700

    [RPP] Add showAllEvents to trace handler Meta
    
    This allows us to avoid querying an experiment within AICallTree – now,
    just read from the parsedTrace.
    
    Bug: 451502260
    Change-Id: I4d905d4d149a2dc0ec9cdd6d3f5e6deedc942398
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7048952
    Commit-Queue: Paul Irish <paulirish@chromium.org>
    Commit-Queue: Connor Clark <cjamcl@chromium.org>
    Auto-Submit: Connor Clark <cjamcl@chromium.org>
    Reviewed-by: Paul Irish <paulirish@chromium.org>

commit 9ebcd2699157e6bb74f25fe518c563fcc5ea5ea3
Author: Natallia Harshunova <nharshunova@chromium.org>
Date:   Mon Oct 13 09:48:12 2025 +0000

    Roll browser-protocol
    
    This roll requires a manual review. See http://go/reviewed-rolls for guidance.
    
    In case of failures or errors, reach out to someone from config/owner/COMMON_OWNERS.
    
    Roll created at https://cr-buildbucket.appspot.com/build/8701159793788502273
    
    R=chrome-devtools-waterfall-gardener-emea-oncall@google.com
    
    Bug: none
    Change-Id: I4ebd5d181f35cbb8cd7a36156cd1dc9030e05ee2
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7033726
    Owners-Override: Natallia Harshunova <nharshunova@chromium.org>
    Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
    Commit-Queue: Natallia Harshunova <nharshunova@chromium.org>

commit 212d6f8f0891a3f5e535e0caeda04c29a90281d9
Author: Alex Rudenko <alexrudenko@chromium.org>
Date:   Mon Oct 13 11:52:44 2025 +0200

    Add MCP entrypoint
    
    Bug: 451502260
    Change-Id: I35ab1bd9352262c3c3d08f80a7e646fd386e3ee2
    Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7035911
    Reviewed-by: Simon Zünd <szuend@chromium.org>
    Commit-Queue: Alex Rudenko <alexrudenko@chromium.org>

Many changes relevant to LH:

  • traceEngineResult.insights map is no longer key'd by navigation id
  • errors are stored on insights.modelErrors not in insights.model
  • every insight model is optional now (could have not run / error'd)
  • fix the temporary type issue we had w/ network events

@connorjclark
Copy link
Copy Markdown
Collaborator Author

needs more work for bundling

✘ [ERROR] Top-level await is currently not supported with the "iife" output format

    node_modules/@paulirish/trace_engine/core/platform/HostRuntime.js:11:28:
      11 │ export const HOST_RUNTIME = await (async () => {
         ╵                             ~~~~~

✘ [ERROR] Could not resolve "node:worker_threads"

    node_modules/@paulirish/trace_engine/core/platform/node/HostRuntime.js:4:31:
      4 │ import * as WorkerThreads from 'node:worker_threads';
        ╵                                ~~~~~~~~~~~~~~~~~~~~~

  The package "node:worker_threads" wasn't found on the file system but is built into node. Are you
  trying to bundle for node? You can use "platform: 'node'" to do that, which will remove this
  error.

/Users/cjamcl/src/lighthouse/node_modules/esbuild/lib/main.js:1467
  let error = new Error(text);
              ^

Error: Build failed with 2 errors:
node_modules/@paulirish/trace_engine/core/platform/HostRuntime.js:11:28: ERROR: Top-level await is currently not supported with the "iife" output format
node_modules/@paulirish/trace_engine/core/platform/node/HostRuntime.js:4:31: ERROR: Could not resolve "node:worker_threads"
    at failureErrorWithLog (/Users/cjamcl/src/lighthouse/node_modules/esbuild/lib/main.js:1467:15)
    at /Users/cjamcl/src/lighthouse/node_modules/esbuild/lib/main.js:926:25
    at /Users/cjamcl/src/lighthouse/node_modules/esbuild/lib/main.js:1345:9
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5) {

@connorjclark connorjclark changed the title deps: upgrade trace_engine to 0.0.62 deps: upgrade trace_engine to 0.0.63 Apr 8, 2026
@connorjclark connorjclark changed the title deps: upgrade trace_engine to 0.0.63 deps: upgrade trace_engine to 0.0.64 Apr 8, 2026
@connorjclark connorjclark marked this pull request as ready for review April 8, 2026 23:07
@connorjclark connorjclark requested a review from a team as a code owner April 8, 2026 23:07
@connorjclark connorjclark requested review from paulirish and removed request for a team April 8, 2026 23:07
@connorjclark
Copy link
Copy Markdown
Collaborator Author

new CharacterSet insight, gotta add it https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7577714 :)

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.

1 participant