LGTM2 On Wednesday, June 24, 2026 at 11:24:29 AM UTC-4 Alex Russell wrote:
> LGTM1. Extremely excited about this; congrats on the launch. > > On Tuesday, June 23, 2026 at 1:26:11 PM UTC-7 Michal Mocny wrote: > >> Contact emails >> >> [email protected], [email protected], [email protected] >> >> Explainer >> >> https://github.com/WICG/soft-navigations >> >> Specification >> >> https://wicg.github.io/soft-navigations >> >> Summary >> >> Adds "soft-navigation" and "interaction-contentful-paint" >> PerformanceEntry types to the web performance timeline to track >> interaction-driven page performance, including for "soft" navigations >> (JS-driven navigations in Single Page Apps (SPAs)). This work expands on >> metrics like Largest Contentful Paint (LCP) and Interaction to Next Paint >> (INP). >> >> The "interaction-contentful-paint" entry reports on new contentful paints >> within parts of the page modified by a user interaction, helping developers >> understand interaction loading latency. This proposal tracks the effects of >> interactions across async tasks (like fetch requests). >> >> The "soft-navigation" entry reports same-document history state changes >> initiated by interactions, establishing a new time origin to correctly >> attribute subsequent performance data to the active route rather than the >> initial document URL. >> >> Blink component >> >> Blink>PerformanceAPIs >> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EPerformanceAPIs%22> >> >> Web Feature ID >> >> No information provided >> >> Motivation >> >> Web developers have been asking for a way to measure the loading >> performance of "soft navigations" (JS-driven navigations in Single Page >> Apps (SPA)), and to integrate such navigations into the web performance >> timeline in general. >> >> Besides getting useful new performance insights for these, having a >> shared standard definition for such navigations helps attribution for all >> existing performance timeline data (i.e. resource timings), and provides >> better default aggregation for metrics like INP or CLS with better URL >> attribution. >> >> Initial public proposal >> >> https://github.com/WICG/proposals/issues/71 >> >> TAG review >> >> https://github.com/w3ctag/design-reviews/issues/879 >> >> TAG review status >> >> Pending >> >> Origin Trial Name >> >> Soft Navigation Heuristics >> >> Goals for experimentation >> >> 1. Gaining insights on the quality of the heuristic and how it compares >> to current heuristics employed, from web developers, spa-framework authors, >> and by existing RUM providers; Focusing specifically on the initial >> "soft-navigation" reporting and the "interaction-contentful-paint" loading >> entries that follow. >> >> 2. Learning if developers find the correlation of various existing >> performance entries (i.e. Resource Timings, CLS or INP entries) to these >> soft navigation entries more useful than without them. >> >> Chromium Trial Name >> >> SoftNavigationHeuristics >> >> Link to origin trial feedback summary >> >> https://github.com/WICG/soft-navigations/issues/47 >> >> Origin Trial documentation link >> >> https://github.com/WICG/soft-navigations#soft-navigations >> >> Risks >> >> >> Interoperability and Compatibility >> >> No information provided >> >> Gecko: No signal ( >> https://github.com/mozilla/standards-positions/issues/854) >> >> WebKit: No signal ( >> https://github.com/WebKit/standards-positions/issues/235) >> >> Web developers: Strongly positive >> >> https://issues.chromium.org/issues/40229587 >> >> https://github.com/WICG/proposals/issues/71 >> >> https://twitter.com/yoavweiss/status/1575191332775026688 >> >> Other signals: >> >> WebView application risks >> >> Does this intent deprecate or change behavior of existing APIs, such that >> it has potentially high risk for Android WebView-based applications? >> >> None known. This feature is part of the standard performance timeline, >> which is available in WebView in the same way as non-webview. The feature >> is entirely implemented within blink + renderer. >> >> >> Debuggability >> >> No information provided >> >> Will this feature be supported on all six Blink platforms (Windows, Mac, >> Linux, ChromeOS, Android, and Android WebView)? >> >> Yes >> >> Is this feature fully tested by web-platform-tests >> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> >> ? >> >> Yes >> >> >> Flag name on about://flags >> >> soft-navigation-heuristics >> >> Finch feature name >> >> SoftNavigationHeuristics >> >> Rollout plan >> >> Will ship enabled for all users >> >> Requires code in //chrome? >> >> False >> >> Tracking bug >> >> https://bugs.chromium.org/p/chromium/issues/detail?id=1338390 >> >> Availability expectation >> >> Feature is available only in Chromium browsers for the foreseeable >> future. This is relatively common for Performance APIs, where the >> requirement for Baseline support is lower. A performance API can be feature >> detected and used only on Chromium and still give developers great value. >> >> That said, there is existing Baseline support for the foundations of this >> work: Event Timing, Paint Timing, and LCP-- and it seems there is >> relatively positive support for the nascent AsyncContext and Container >> Timing features which may make interop progress in the next year. Thus we >> expect a future where this set of APIs also reaches interop/Baseline status. >> >> Adoption expectation >> >> At least 3 major abstractions replace their use of an existing feature >> with this feature within 24 months of reaching mainline. Specifically, >> several RUM measurement products and/or frameworks rely on custom >> instrumentation, web platform api monkey-patching, and/or developer hints >> in order to measure interactions and soft-navigations. These APIs have been >> fairly widely deployed during origin trial by many partners/abstractions, >> and we expect that these APIs are broadly adopted over the next few years. >> >> Adoption plan >> >> This feature has been in demand for years, and has been widely discussed >> in relevant web performance groups (w3c web perf working group, rum >> community group, slack, conferences, etc). Many organizations have already >> participated in multiple rounds of OT. This feature is also expected to >> power the next major update to the Core Web Vitals program, and has already >> been integrated into an experimental branch of the web-vital.js library >> which has wide industry adoption (making it an easier integration/upgrade). >> >> Non-OSS dependencies >> >> Does the feature depend on any code or APIs outside the Chromium open >> source repository and its open-source dependencies to function? >> >> No. >> >> Estimated milestones >> >> Shipping on desktop >> >> 151 >> >> Origin trial desktop first >> >> 139 >> >> Origin trial desktop last >> >> 144 >> >> Origin trial extension 1 end milestone >> >> 123 >> >> Origin trial extension 2 end milestone >> >> 149 >> >> Origin trial extension 3 end milestone >> >> 123 >> >> Origin trial extension 4 end milestone >> >> 144 >> >> Shipping on Android >> >> 151 >> >> Origin trial Android first >> >> 139 >> >> Origin trial Android last >> >> 144 >> >> Shipping on WebView >> >> 151 >> >> Origin trial WebView first >> >> 139 >> >> Origin trial WebView last >> >> 144 >> >> >> Anticipated spec changes >> >> Open questions about a feature may be a source of future web compat or >> interop issues. Please list open issues (e.g. links to known github issues >> in the project for the feature specification) whose resolution may >> introduce web compat/interop risk (e.g., changing to naming or structure of >> the API in a non-backward-compatible way). >> >> The API shape has gone through multiple rounds of iteration and is >> expected to be in its final form. There may be future API extensions added >> to expose more features (i.e. to add more "container timing" details) but >> the API was designed to gracefully support this. >> >> Note: the spec currently does not limit this API only the main frame top >> level document, but the chromium implementation does. We expect to change >> the implementation to expose InteractionContentfulPaint also to frames, but >> may change the spec to limit SoftNavigation entries (due to complexity of >> history stack). >> >> Link to entry on the Chrome Platform Status >> >> https://chromestatus.com/feature/5144837209194496?gate=4820517475844096 >> >> Links to previous Intent discussions >> >> Intent to Prototype: >> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfV3qRFx0i-eGJFSzqE8bnbX8XYJCvXAj0LfvO0icPo_jA%40mail.gmail.com >> >> Intent to Experiment: >> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfUb_Gn_5gGy8SnChg5KH2JN57Gv0NhnHN7Q_kH0Aa17CQ%40mail.gmail.com >> >> Intent to Extend Experiment 1: >> https://groups.google.com/a/chromium.org/g/blink-dev/c/xxrmKr-6X38/m/48Hri1cnAgAJ >> >> Intent to Extend Experiment 2: >> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/69cd703e.050a0220.319665.006a.GAE%40google.com >> >> Intent to Extend Experiment 3: >> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfULP5d3fNCAqeO2gLP56R3HCytmaNk%2B9kpYsC2dj4%3DqoQ%40mail.gmail.com >> >> Intent to Extend Experiment 4: >> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAEeF2TfyN4LMy2DQwjPrsTekEw8dNXgcqiogvznagjtWyfqixA%40mail.gmail.com >> >> >> This intent message was generated by Chrome Platform Status >> <https://chromestatus.com/>. >> >> -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/61471840-0ece-4ede-bfea-a57977511c0fn%40chromium.org.
