Closed Bug 2091964 Opened 3 days ago Closed 10 hours ago

[wpt-sync] Sync PR 64553 - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=316291

Categories

(Core :: DOM: Performance APIs, task, P4)

task

Tracking

()

RESOLVED FIXED
162 Branch
Tracking Status
firefox162 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 64553 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/64553
Details from upstream follow.

Yoav Weiss <yoav.weiss@shopify.com> wrote:

WebKit export of https://bugs.webkit.org/show_bug.cgi?id=316291

WebKit export from bug: Navigation Timing performance entries get skewed by BCG switches

<pre>
Set timeOrigin to align with spec, even when BCG switches take place.

Currently the timeOrigin is set when the final process starts the navigation request load.
But in the case of a BCG switch, that load ends up resuming/reusing a load that was already
started in the previous process.
This PR pipes the relevant information over, so that the timeOrigin will be properly set
in these cases.

This is fine from a w3c/navigation-timing#160 perspective, because as
against this by obfuscating more than just the redirect data for cross-origin redirects.

Test progression.

WebKit-Bug: <a href="https://bugs.webkit.org/show_bug.cgi?id=316291">https://bugs.webkit.org/show_bug.cgi?id=316291</a>
WebKit-Canonical-Link: <a href="https://commits.webkit.org/318057@main">https://commits.webkit.org/318057@main</a>
</pre>

Component: web-platform-tests → DOM: Performance APIs
Product: Testing → Core

CI Results

Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 60 tests and 12 subtests

Status Summary

Firefox

OK : 1[GitHub] 59[Gecko-android-em-14-x86_64-debug-geckoview] 60[Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt]
PASS : 433[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug] 434[Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt]
FAIL : 1[GitHub] 26[Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt] 27[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug]

Chrome

FAIL : 1
ERROR: 1

Safari

OK : 1
PASS : 1

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

  • /navigation-timing/secure-connection-start-reuse.https.html [wpt.fyi]: OK [Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt], SKIP [Gecko-android-em-14-x86_64-debug-geckoview]
  • /navigation-timing/content-encoding.https.html?pipe=gzip [wpt.fyi]
    • contentEncoding should be gzip.: FAIL
  • /navigation-timing/idlharness.window.html [wpt.fyi]
    • PerformanceNavigationTiming interface: attribute criticalCHRestart: FAIL
    • PerformanceNavigationTiming interface: attribute notRestoredReasons: FAIL
    • PerformanceNavigationTiming interface: attribute confidence: FAIL
    • PerformanceNavigationTiming interface: performance.getEntriesByType("navigation")[0] must inherit property "criticalCHRestart" with the proper type: FAIL
    • PerformanceNavigationTiming interface: performance.getEntriesByType("navigation")[0] must inherit property "notRestoredReasons" with the proper type: FAIL
    • PerformanceNavigationTiming interface: performance.getEntriesByType("navigation")[0] must inherit property "confidence" with the proper type: FAIL
    • PerformanceNavigationTiming interface: default toJSON operation on performance.getEntriesByType("navigation")[0]: FAIL
    • PerformanceTimingConfidence interface: existence and properties of interface object: FAIL
    • PerformanceTimingConfidence interface object length: FAIL
    • PerformanceTimingConfidence interface object name: FAIL
    • PerformanceTimingConfidence interface: existence and properties of interface prototype object: FAIL
    • PerformanceTimingConfidence interface: existence and properties of interface prototype object's "constructor" property: FAIL
    • PerformanceTimingConfidence interface: existence and properties of interface prototype object's @@unscopables property: FAIL
    • PerformanceTimingConfidence interface: attribute randomizedTriggerRate: FAIL
    • PerformanceTimingConfidence interface: attribute value: FAIL
    • PerformanceTimingConfidence interface: operation toJSON(): FAIL
  • /navigation-timing/nav2-test-response-end-and-duration-before-during-and-after-load-event.html [wpt.fyi]
    • Check that performance.getEntriesByType('navigation')[0].responseEnd has reasonable values before and after the load has finished: FAIL
  • /navigation-timing/nav2-test-timing-persistent.html [wpt.fyi]
    • iframe navigation times are persistent after the iframe is removed. Part 1.: FAIL
  • /navigation-timing/prefetch-transfer-size-iframe.html [wpt.fyi]
    • Navigation timing transfer size for a prefetched navigation should be 0.: FAIL
  • /navigation-timing/redirect-tao.html [wpt.fyi]
    • Exposed when a cross-origin redirect opts in to the destination origin: FAIL
    • Exposed when a cross-origin redirect opts in with a wildcard: FAIL
    • Exposed when every redirect in the chain opts in to the destination origin: FAIL
  • /navigation-timing/response-start-after-coop-bcg-switch-no-tao.tentative.https.html [wpt.fyi]
    • Redirect data is hidden and the navigation start time is not leaked after a cross-origin COOP browsing context group switch without a TAO opt-in: FAIL (Chrome: FAIL, Safari: PASS)
  • /navigation-timing/secure-connection-start-non-zero.https.html [wpt.fyi]
    • Test that secureConnectionStart is not zero: FAIL [Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug], PASS [Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt]
  • /navigation-timing/unload-event-same-origin-check.html [wpt.fyi]
    • Redirect chain with full TAO opt-in: FAIL
    • No previous document with cross origin redirect with partial TAO: FAIL

Tests Disabled in Gecko Infrastructure

  • /navigation-timing/secure-connection-start-reuse.https.html [wpt.fyi]: OK [Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt], SKIP [Gecko-android-em-14-x86_64-debug-geckoview]
Status: NEW → RESOLVED
Closed: 10 hours ago
Resolution: --- → FIXED
Target Milestone: --- → 162 Branch
You need to log in before you can comment on or make changes to this bug.