feat(relay): Add COOP (Cross-Origin-Opener-Policy) report support #5548
+855
−2
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Implements support for Cross-Origin-Opener-Policy (COOP) reports in Relay, following the same pattern as Network Error Logging (NEL) reports. COOP reports are sent by browsers when cross-origin isolation policies are violated, helping developers identify and fix security issues.
Changes
relay-event-schema/src/protocol/coop.rs)/api/{project_id}/coop/endpoint for receiving reportsImplementation Details
COOP reports are converted to log events with:
auto.http.browser_report.cooperror(enforce mode) orwarn(report-only mode)Supported violation types:
navigate-to-document/navigate-from-document- Browsing context group switchesaccess-from-coop-page-to-*- Blocked outbound access attemptsaccess-to-coop-page-from-*- Blocked inbound access attemptsArchitecture
Follows the NEL report pattern:
/api/{project_id}/coop/ItemType::CoopTest plan
cargo check)Testing checklist
pytest tests/integration/test_coop.py -vReferences
🤖 Generated with Claude Code