Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[COOP report] Add support for report-only #24552

Merged
merged 1 commit into from
Jul 27, 2020
Merged

Conversation

chromium-wpt-export-bot
Copy link
Collaborator

@chromium-wpt-export-bot chromium-wpt-export-bot commented Jul 10, 2020

This adds the support for report-only COOP triggered Browsing context
group switches.
During navigation, besides computing whether COOP triggers a BCG switch,
this also computes if any of the report-only policies would also trigger
a switch if they were effective, the resulting values are stored in
booleans within |CrossOriginOpenerPolicyStatus|.
This booleans are then used to trigger the navigation reports, and in a
follow up to trigger access reports.

Explainer [WIP]:
https://github.com/camillelamy/explainers/blob/master/coop_reporting.md

Specification [WIP]:
whatwg/html#5518

Bug: 1099208
Change-Id: I2cb66ec5cdcd9d5b4658c28f0608bc6b52d0da6b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2241529
Commit-Queue: Pâris Meuleman <[email protected]>
Reviewed-by: Camille Lamy <[email protected]>
Reviewed-by: Arthur Hemery <[email protected]>
Auto-Submit: Pâris Meuleman <[email protected]>
Cr-Commit-Position: refs/heads/master@{#790781}

Copy link
Collaborator

@wpt-pr-bot wpt-pr-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The review process for this patch is being conducted in the Chromium project.

@chromium-wpt-export-bot chromium-wpt-export-bot changed the title [COOP report] Add support for report-only. [COOP report] Add support for report-only Jul 10, 2020
@chromium-wpt-export-bot chromium-wpt-export-bot force-pushed the chromium-export-cl-2241529 branch 2 times, most recently from 93cd632 to f876e61 Compare July 15, 2020 11:05
@chromium-wpt-export-bot chromium-wpt-export-bot force-pushed the chromium-export-cl-2241529 branch 3 times, most recently from 3ff9620 to 123ef74 Compare July 22, 2020 09:13
This adds the support for report-only COOP triggered Browsing context
group switches.
During navigation, besides computing whether COOP triggers a BCG switch,
this also computes if any of the report-only policies would also trigger
a switch if they were effective, the resulting values are stored in
booleans within |CrossOriginOpenerPolicyStatus|.
This booleans are then used to trigger the navigation reports, and in a
follow up to trigger access reports.

Explainer [WIP]:
https://github.com/camillelamy/explainers/blob/master/coop_reporting.md

Specification [WIP]:
whatwg/html#5518

Bug: 1099208
Change-Id: I2cb66ec5cdcd9d5b4658c28f0608bc6b52d0da6b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2241529
Commit-Queue: Pâris Meuleman <[email protected]>
Reviewed-by: Camille Lamy <[email protected]>
Reviewed-by: Arthur Hemery <[email protected]>
Auto-Submit: Pâris Meuleman <[email protected]>
Cr-Commit-Position: refs/heads/master@{#790781}
@LukeZielinski
Copy link
Contributor

LukeZielinski commented Jul 27, 2020

One flaky test on Firefox:

Test Subtest Results Messages
/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-popup-same-origin-coep-report-to.https.html coop reporting test reporting same origin with report-to to SAME_ORIGIN with same-origin; report-to="coop-popup-report-endpoint", require-corp, , PASS: 9/10, MISSING: 1/10
/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-popup-same-origin-coep-report-to.https.html coop reporting test reporting same origin with report-to to SAME_ORIGIN with same-origin; report-to="coop-popup-report-endpoint", , , FAIL: 9/10, MISSING: 1/10 promise_test: Unhandled rejection with value: "No report matched the expected report for endpoint: coop-report-endpoint, expected report: {\"body\":{\"disposition\":\"enforce\",\"document-uri\":\"https://web-platform.test:8443/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-popup-same-origin-coep-report-to.https.html\",\"effective-policy\":\"same-origin-plus-coep\",\"navigation-uri\":\"/uuid=(uuid)$/\",\"violation-type\":\"navigation-from-document\"},\"url\":\"https://web-platform.test:8443/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-popup-same-origin-coep-report-to.https.html\",\"type\":\"coop\"}, within available reports: []"
/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-popup-same-origin-coep-report-to.https.html coop reporting test reporting same origin with report-to to CROSS_ORIGIN with same-origin; report-to="coop-popup-report-endpoint", require-corp, , FAIL: 5/10, TIMEOUT: 4/10, MISSING: 1/10 promise_test: Unhandled rejection with value: "No report matched the expected report for endpoint: coop-report-endpoint, expected report: {\"body\":{\"disposition\":\"enforce\",\"document-uri\":\"https://web-platform.test:8443/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-popup-same-origin-coep-report-to.https.html\",\"effective-policy\":\"same-origin-plus-coep\",\"navigation-uri\":\"/uuid=(uuid)$/\",\"violation-type\":\"navigation-from-document\"},\"url\":\"https://web-platform.test:8443/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-popup-same-origin-coep-report-to.https.html\",\"type\":\"coop\"}, within available reports: []";Test timed out
/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-popup-same-origin-coep-report-to.https.html coop reporting test reporting same origin with report-to to SAME_ORIGIN with , , same-origin; report-to="coop-popup-report-only-endpoint", require-corp NOTRUN: 4/10, TIMEOUT: 5/10, MISSING: 1/10 Test timed out
/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-popup-same-origin-coep-report-to.https.html coop reporting test reporting same origin with report-to to CROSS_ORIGIN with , , same-origin; report-to="coop-popup-report-only-endpoint", require-corp NOTRUN: 9/10, MISSING: 1/10
/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-popup-same-origin-coep-report-to.https.html verify remaining reports NOTRUN: 9/10, MISSING: 1/10

Firefox flakiness for this test is pre-existing (as per wpt.fyi)

@Hexcles could you please admin merge?

@Hexcles Hexcles merged commit 969178e into master Jul 27, 2020
@Hexcles Hexcles deleted the chromium-export-cl-2241529 branch July 27, 2020 18:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants