-
Notifications
You must be signed in to change notification settings - Fork 106
Add initial Request Blocklist feature configuration #3990
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
Conversation
Add a simple test page for the Request Blocklist feature, that acts as a quick way for folks to test and see visually if the feature is enabled and working. Notes: - For detailed testing of the feature's edge-cases, see the reference tests[1]. - For automated integration tests, prefer the Request Blocking test page[2], which can be used with an empty blocklist and suitable configuration to check that requests are being blocked as expected. - See corresponding configuration changes[3]. 1 - https://github.com/duckduckgo/privacy-reference-tests/tree/main/request-blocklist 2 - https://privacy-test-pages.site/privacy-protections/request-blocking/ 3 - duckduckgo/privacy-configuration#3990
|
👋 Don't forget to add an individual reviewer (in addition to those auto-added), as this will create a task for them in Asana.
👉 Please mark this as DRAFT unless there's an intention to merge this immediately. |
Generated file outputs:Time updated: Tue, 04 Nov 2025 14:45:12 GMT legacytrackers-unprotected-temporary.txt4 files changed
--- v3/windows-config.json (and 3 other files)
+++ v3/windows-config.json
@@ -96134,8 +96134,38 @@
"remoteMessaging": {
"state": "enabled",
"exceptions": []
},
+ "requestBlocklist": {
+ "state": "disabled",
+ "settings": {
+ "blockedRequests": {
+ "privacy-test-pages.site": {
+ "rules": [
+ {
+ "rule": "privacy-test-pages.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ },
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "third-party.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ }
+ }
+ },
+ "exceptions": []
+ },
"requestFilterer": {
"state": "enabled",
"exceptions": [
{
@@ -100548,8 +100578,19 @@
"reason": "https://github.com/duckduckgo/privacy-configuration/issues/1107"
}
]
},
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "allowlisted.third-party.site",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test pages"
+ }
+ ]
+ },
"tidiochat.com": {
"rules": [
{
"rule": "tidiochat.com",
10 files changed
--- v3/extension-safarimv3-config.json (and 9 other files)
+++ v3/extension-safarimv3-config.json
@@ -8186,8 +8186,38 @@
"remoteMessaging": {
"state": "disabled",
"exceptions": []
},
+ "requestBlocklist": {
+ "state": "enabled",
+ "settings": {
+ "blockedRequests": {
+ "privacy-test-pages.site": {
+ "rules": [
+ {
+ "rule": "privacy-test-pages.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ },
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "third-party.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ }
+ }
+ },
+ "exceptions": []
+ },
"requestFilterer": {
"state": "disabled",
"exceptions": [
{
@@ -12489,8 +12519,19 @@
"reason": "https://github.com/duckduckgo/privacy-configuration/issues/1107"
}
]
},
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "allowlisted.third-party.site",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test pages"
+ }
+ ]
+ },
"tidiochat.com": {
"rules": [
{
"rule": "tidiochat.com",
4 files changed
--- v4/windows-config.json (and 3 other files)
+++ v4/windows-config.json
@@ -95580,8 +95580,38 @@
"remoteMessaging": {
"state": "enabled",
"exceptions": []
},
+ "requestBlocklist": {
+ "state": "disabled",
+ "settings": {
+ "blockedRequests": {
+ "privacy-test-pages.site": {
+ "rules": [
+ {
+ "rule": "privacy-test-pages.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ },
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "third-party.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ }
+ }
+ },
+ "exceptions": []
+ },
"requestFilterer": {
"state": "enabled",
"exceptions": [
{
@@ -99598,8 +99628,18 @@
]
}
]
},
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "allowlisted.third-party.site",
+ "domains": [
+ "privacy-test-pages.site"
+ ]
+ }
+ ]
+ },
"tidiochat.com": {
"rules": [
{
"rule": "tidiochat.com",
10 files changed
--- v4/extension-safarimv3-config.json (and 9 other files)
+++ v4/extension-safarimv3-config.json
@@ -7516,8 +7516,38 @@
"remoteMessaging": {
"state": "disabled",
"exceptions": []
},
+ "requestBlocklist": {
+ "state": "enabled",
+ "settings": {
+ "blockedRequests": {
+ "privacy-test-pages.site": {
+ "rules": [
+ {
+ "rule": "privacy-test-pages.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ },
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "third-party.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ }
+ }
+ },
+ "exceptions": []
+ },
"requestFilterer": {
"state": "disabled",
"exceptions": [
{
@@ -11406,8 +11436,18 @@
]
}
]
},
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "allowlisted.third-party.site",
+ "domains": [
+ "privacy-test-pages.site"
+ ]
+ }
+ ]
+ },
"tidiochat.com": {
"rules": [
{
"rule": "tidiochat.com",
latest4 files changed
--- v5/windows-config.json (and 3 other files)
+++ v5/windows-config.json
@@ -95580,8 +95580,38 @@
"remoteMessaging": {
"state": "enabled",
"exceptions": []
},
+ "requestBlocklist": {
+ "state": "disabled",
+ "settings": {
+ "blockedRequests": {
+ "privacy-test-pages.site": {
+ "rules": [
+ {
+ "rule": "privacy-test-pages.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ },
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "third-party.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ }
+ }
+ },
+ "exceptions": []
+ },
"requestFilterer": {
"state": "enabled",
"exceptions": [
{
@@ -99598,8 +99628,18 @@
]
}
]
},
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "allowlisted.third-party.site",
+ "domains": [
+ "privacy-test-pages.site"
+ ]
+ }
+ ]
+ },
"tidiochat.com": {
"rules": [
{
"rule": "tidiochat.com",
10 files changed
--- v5/extension-safarimv3-config.json (and 9 other files)
+++ v5/extension-safarimv3-config.json
@@ -7516,8 +7516,38 @@
"remoteMessaging": {
"state": "disabled",
"exceptions": []
},
+ "requestBlocklist": {
+ "state": "enabled",
+ "settings": {
+ "blockedRequests": {
+ "privacy-test-pages.site": {
+ "rules": [
+ {
+ "rule": "privacy-test-pages.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ },
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "third-party.site/privacy-protections/request-blocklist/*?block=true",
+ "domains": [
+ "privacy-test-pages.site"
+ ],
+ "reason": "Testing rule for the privacy test page, see https://privacy-test-pages.site/privacy-protections/request-blocklist/"
+ }
+ ]
+ }
+ }
+ },
+ "exceptions": []
+ },
"requestFilterer": {
"state": "disabled",
"exceptions": [
{
@@ -11406,8 +11436,18 @@
]
}
]
},
+ "third-party.site": {
+ "rules": [
+ {
+ "rule": "allowlisted.third-party.site",
+ "domains": [
+ "privacy-test-pages.site"
+ ]
+ }
+ ]
+ },
"tidiochat.com": {
"rules": [
{
"rule": "tidiochat.com",
|
JSON approval analysis:Time updated: Tue, 04 Nov 2025 14:45:19 GMT legacy❌ Manual Review Required
latest❌ Manual Review Required
🎯 OVERALL APPROVAL STATUS❌ MANUAL REVIEW REQUIRED |
Add a simple test page for the Request Blocklist feature, that acts as a quick way for folks to test and see visually if the feature is enabled and working. Notes: - For detailed testing of the feature's edge-cases, see the reference tests[1]. - For automated integration tests, prefer the Request Blocking test page[2], which can be used with an empty blocklist and suitable configuration to check that requests are being blocked as expected. - See corresponding configuration changes[3]. 1 - https://github.com/duckduckgo/privacy-reference-tests/tree/main/request-blocklist 2 - https://privacy-test-pages.site/privacy-protections/request-blocking/ 3 - duckduckgo/privacy-configuration#3990
Add a simple test page for the Request Blocklist feature, that acts as a quick way for folks to test and see visually if the feature is enabled and working. Notes: - For detailed testing of the feature's edge-cases, see the reference tests[1]. - For automated integration tests, prefer the Request Blocking test page[2], which can be used with an empty blocklist and suitable configuration to check that requests are being blocked as expected. - See corresponding configuration changes[3]. 1 - https://github.com/duckduckgo/privacy-reference-tests/tree/main/request-blocklist 2 - https://privacy-test-pages.site/privacy-protections/request-blocking/ 3 - duckduckgo/privacy-configuration#3990
Add a simple test page for the Request Blocklist feature, that acts as a quick way for folks to test and see visually if the feature is enabled and working. Notes: - For detailed testing of the feature's edge-cases, see the reference tests[1]. - For automated integration tests, prefer the Request Blocking test page[2], which can be used with an empty blocklist and suitable configuration to check that requests are being blocked as expected. - See corresponding configuration changes[3]. 1 - https://github.com/duckduckgo/privacy-reference-tests/tree/main/request-blocklist 2 - https://privacy-test-pages.site/privacy-protections/request-blocking/ 3 - duckduckgo/privacy-configuration#3990
Add a simple test page for the Request Blocklist feature, that acts as a quick way for folks to test and see visually if the feature is enabled and working. Notes: - For detailed testing of the feature's edge-cases, see the reference tests[1]. - For automated integration tests, prefer the Request Blocking test page[2], which can be used with an empty blocklist and suitable configuration to check that requests are being blocked as expected. - See corresponding configuration changes[3]. 1 - https://github.com/duckduckgo/privacy-reference-tests/tree/main/request-blocklist 2 - https://privacy-test-pages.site/privacy-protections/request-blocking/ 3 - duckduckgo/privacy-configuration#3990
Add a simple test page for the Request Blocklist feature, that acts as a quick way for folks to test and see visually if the feature is enabled and working. Notes: - For detailed testing of the feature's edge-cases, see the reference tests[1]. - For automated integration tests, prefer the Request Blocking test page[2], which can be used with an empty blocklist and suitable configuration to check that requests are being blocked as expected. - See corresponding configuration changes[3]. 1 - https://github.com/duckduckgo/privacy-reference-tests/tree/main/request-blocklist 2 - https://privacy-test-pages.site/privacy-protections/request-blocking/ 3 - duckduckgo/privacy-configuration#3990
833191e to
cd6e222
Compare
cd6e222 to
1b3aa6f
Compare
1b3aa6f to
3a31aea
Compare
3a31aea to
e9238ea
Compare
e9238ea to
77d1017
Compare
Add an initial configuration for the new Request Blocklist feature. Include a couple of testing rules, for the privacy test page[1]. Also include a corresponding Tracker Allowlist rule for the test page as well. The feature is only implemented for the extension so far, so let's enable it there but leave it disabled for other platforms. 1 - https://privacy-test-pages.site/privacy-protections/request-blocklist/
77d1017 to
44192cf
Compare
dharb
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
Add an initial configuration for the new Request Blocklist feature. Include a
couple of testing rules, for the privacy test page[1]. Also include a
corresponding Tracker Allowlist rule for the test page as well.
The feature is only implemented for the extension so far, so let's enable it
there but leave it disabled for other platforms.
1 - https://privacy-test-pages.site/privacy-protections/request-blocklist/
Feature change process:
Note
Adds a new Request Blocklist feature with initial test rules, updates schema, enables it for the extension, and adds a matching tracker allowlist entry for test pages.
features/request-blocklist.json(state:disabled) with initial testing rules forprivacy-test-pages.siteandthird-party.site.overrides/extension-override.json(features.requestBlocklist.state: enabled).schema/features/request-blocklist.tsand wire intoschema/config.ts(RequestBlocklistFeatureimport and optionalfeatures.requestBlocklist).third-party.sitescoped toprivacy-test-pages.siteinfeatures/tracker-allowlist.json.Written by Cursor Bugbot for commit 44192cf. This will update automatically on new commits. Configure here.