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

Put "block all cookies" under a default-off feature flag #42061

Closed
ShivanKaul opened this issue Nov 4, 2024 · 6 comments · Fixed by brave/brave-core#26479
Closed

Put "block all cookies" under a default-off feature flag #42061

ShivanKaul opened this issue Nov 4, 2024 · 6 comments · Fixed by brave/brave-core#26479
Assignees
Labels
OS/Android Fixes related to Android browser functionality OS/Desktop OS/iOS Fixes related to iOS browser functionality priority/P3 The next thing for us to work on. It'll ride the trains. QA Pass - Android ARM QA Pass - iPhone QA Pass-Win64 QA/Yes release-notes/include

Comments

@ShivanKaul
Copy link
Collaborator

ShivanKaul commented Nov 4, 2024

We have a "block all cookies" feature. Unfortunately, this option essentially breaks the Web for users; we have several anecdotal cases of users inadvertently ending up with this toggle enabled. We should put this feature under a default-off but enableable feature flag (via brave://flags on all platforms).

  1. New feature flag: block-all-cookies-toggle. Label: Show "block all cookies" option for global cookie setting. Sub-label: Show option to block all cookies in global cookie policy setting.
  2. (on iOS) If the feature flag is on, we show the Block all Cookies toggle. It's still default off.
  3. (on Desktop and Android) If the feature flag is on, we show the "Block all cookies" option in the "Block Cookies" setting.
  4. If a user has already toggled this feature ON, we should leave as-is and have the feature flag be default ON for them.
  5. This only affects the global toggle; we should allow users to toggle per-site cookie blocking.
@ShivanKaul ShivanKaul added OS/Android Fixes related to Android browser functionality OS/Desktop OS/iOS Fixes related to iOS browser functionality priority/P3 The next thing for us to work on. It'll ride the trains. labels Nov 4, 2024
@ShivanKaul
Copy link
Collaborator Author

@rmcfadden3 can you help with the label and sub-label text for this new feature flag? It'll live in brave://flags

@rmcfadden3
Copy link

rmcfadden3 commented Nov 8, 2024

@ShivanKaul what about something like this:

Label: Show "Block all cookies" option in Shields global defaults.
Description: Shows the "Block all cookies" toggle in Shields global defaults. This global setting prevents all websites from storing cookies on your device, but is also very likely to lead to site breakage.

@ShivanKaul
Copy link
Collaborator Author

I tweaked your text a bit, but LGTM.

vadimstruts added a commit to brave/brave-core that referenced this issue Nov 13, 2024
Put "block all cookies" under a default-off feature flag
(brave/brave-browser#42061)
---------

Signed-off-by: Vadym Struts <vstruts@brave.com>
@brave-builds brave-builds added this to the 1.75.x - Nightly milestone Nov 13, 2024
@hffvld
Copy link
Contributor

hffvld commented Dec 10, 2024

Verified on Pixel 7 using version(s):

Device/OS: Pixel 7 / panther_beta-user 15 BP11.241025.006 release-keys
Brave build: 1.75.76 
Chromium: 132.0.6834.33 (Official Build) canary (64-bit) 

STEPS:

  1. Follow the STR/TP from Put "block all cookies" under a default-off feature flag brave-core#26479 (comment)
  2. Verify

ACTUAL RESULTS:

  • Verified that Block all cookies is not shown in global settings when the #block-all-cookies-toggle flag is OFF.
  • Verified that Block all cookies is shown in global settings when the #block-all-cookies-toggle flag is ON.
  • Verified that enabling the #block-all-cookies-toggle flag, then selecting Block all cookies in the global settings, and then disabling the #block-all-cookies-toggle flag doesn't disable/hide Block all cookies until a user unselect it manually.
  • Verified that enabling Block all cookies in the global settings also updates the Shields settings.

#block-all-cookies-toggle is OFF

1 2
1 2

#block-all-cookies-toggle is ON

1 2
1 2

#block-all-cookies-toggle is ON & Block all cookies is ON > Disable #block-all-cookies-toggle

1 2 3 4
1 2 3 4

@MadhaviSeelam
Copy link

MadhaviSeelam commented Dec 17, 2024

Verification PASSED using

Brave | 1.75.108 Chromium: 132.0.6834.46 (Official Build) nightly (64-bit)
-- | --
Revision | 2cff10e238af20f7b699d0a59b689cbe87c9c187
OS | Windows 11 Version 24H2 (Build 26100.2314)

and

Brave | 1.75.112 Chromium: 132.0.6834.46 (Official Build) nightly (64-bit)
-- | --
Revision | f1de7e60955b06e067a605adca9d6a87d6142baf
OS | Windows 11 Version 24H2 (Build 26100.2314)

Test Case 1: New install - If the feature flag is on, we show the "Block all cookies" option in the "Block Cookies" setting.

Case 1: `Block-all-cookies-toggle` flag - Disabled - Default behavior - PASSED
  1. Installed 1.75.105
  2. launched Brave
  3. opened brave://flags
  4. confirmed new feature flag #block-all-cookies-toggle is shown
  5. confirmed #block-all-cookies-toggle is Disabled by default
  6. opened brave://settings/shields
  7. confirmed Block all cookies option is not available in the Block cookies setting
  8. visited a site https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  9. clicked Shields icon and opened the Advanced controls panel
  10. verified Block third-party cookies option is shown as default
  11. verified Block all cookies option is available
step 3 step 4 step 7 step 10-11
Image Image Image Image
Case 2: Enabled `Block-all-cookies-toggle` flag with `Block third-party cookies` as default- PASSED

**Block third-party-cookies` setting is enabled in global setting

  1. continue from Case 1:
    • #block-all-cookies-toggle is Disabled
    • Block-all-cookies option is not available in brave://settings/shields
  2. enabled #block-all-cookies-toggle in brave://flags
  3. returned to brave://settings/shields
  4. confirmed Block all cookies option is listed in the Block cookies option
  5. visited https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  6. clicked Shields icon
  7. verified Block third-party cookies option is shown as default
  8. verified Block-all-cookies option is available
  9. returned to brave://settings/shields and switched to Block all cookies
  10. loaded again https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  11. clicked Shields icon
  12. confirmed Block all cookies option is shown in the Shields panel
  13. confirmed the page shows No for Are Third-Party Cookies enabled? option
step 1a step 1b step 2 step 3 step 7-8 step 9 step 12
Image Image Image Image Image Image Image
Case 3: Disabled `Block-all-cookies-toggle` flag - PASSED
  1. continue from Case 2:
    • #block-all-cookies-toggle is Enabled
    • Block-all-cookies option is available in brave://settings/shields
  2. disabled #block-all-cookies-toggle in brave://flags
  3. opened brave://settings/shields
  4. confirmed Block all cookies option is still shown
  5. switched to Allow all cookies
  6. confirmed Block all cookies option is no longer shown
  7. confirmed Block third party cookies option is shown
  8. visited https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  9. opened Shields panel and confirmed Allow all cookies option is shown
step 1a step 1b step 2 step 4 step 6 step 7 step 9
Image Image Image Image Image Image Image
Case 4: `Block-cookies-toggle` flag - Default behavior with `Allow all cookies` selected - PASSED

Pre-requisite: **Allow all cookies` setting is enabled in global settings

  1. New profile
  2. launched Brave
  3. opened brave://settings/shields
  4. selected Allow all cookies
  5. enabled #block-all-cookies-toggle in brave://flags
  6. visited https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  7. verified Allow all cookies setting is shown in the Shields panel
  8. returned to brave://settings/shields
  9. confirmed Block all cookies option is available in the Block cookies setting
  10. selected Block all cookies
  11. reloaded https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  12. confirmed Block all cookies option is shown
  13. disabled #block-all-cookies-toggle in brave://flags
  14. selected Allow all cookies in the brave://settings/shields
  15. confirmed Block all cookies option is shown
  16. reloaded https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  17. confirmed Allow all cookies option is shown
     
    step 4 | step 5 | step 7 | step 9 | step 10 | step 12 | step 13 | step 14 | step 15 | step 17
    ------ | ------ | ------- | ------- | ------ | ------ | ------ | ------ | ------ | -------
    Image|Image|Image|Image|Image|Image|Image|Image|Image|Image
Case 5: This only affects the global toggle; we should allow users to toggle per-site cookie blocking - PASSED
  1. New profile
  2. launched Brave
  3. enabled #block-all-cookies-toggle in brave://flags
  4. opened brave://settings/shields
  5. selected Block all cookies
  6. visited https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  7. verified Block all cookies setting is shown in the Shields panel
  8. visited CNN.com
  9. verified Block all cookies setting is shown in the Shields panel
  10. switched to Allow all cookies in the shields panel
  11. closed cnn.com tab and reopened
  12. reloaded cnn.com
  13. confirmed Allow all cookies option is shown
  14. selected Block all cookies in the Shields panel
  15. closed the tab and reloaded cnn.com
  16. confirmed Block all cookies option is shown
step 3 step 5 step 7 step 9 step 13 step 16
Image Image Image Image Image Image

Test Case 2 - Upgrade

Case 1: Verify `block-all-cookies-toggle` flag is in default `Disabled` state upon upgrade - PASSED

Pre-req: Keep Block third-party cookies in brave://settings/shields

  1. Installed 1.73.101
  2. launched Brave
  3. opened brave://settings/shields
  4. verified Block all cookies option is available along with Block third-party cookies and All cookies options in the Block cookies setting
  5. retained Block third-party-cookies option
  6. visited https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  7. clicked Shields icon
  8. verified Block third-party cookies option is shown as default
  9. verified Block-all-cookies option is available
  10. returned to brave://settings/shields and keep default option Block third-party-cookies
  11. closed Brave and renamed the profile to Brave-Browser-Nightly
  12. installed 1.75.108
  13. launched Brave
  14. opened brave://flags
  15. confirmed the feature flag #block-all-cookies-toggle is available and shown in default Disabled state
  16. loaded again https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  17. clicked Shields icon
  18. confirmed Block third-party cookies option is shown in the Shields panel
  19. enabled #block-all-cookies-toggle in brave://flags
  20. selected Block all cookies in brave://settings/shields
  21. loaded again https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  22. confirmed Block all cookies setting shown in the Shields panel
  23. selected Default for #block-all-cookies-toggle in brave://flags
  24. switched to Block third-party cookies in brave://settings/shields
  25. confirmed Block all cookies option is not longer available
step 1 step 4 step 5 step 8-9 step 12 step 15 step 18 step 19 step 20 step 22 step 23 step 24 step 25
Image Image Image Image Image Image Image Image Image Image Image Image Image
Case 2: Verify `block-all-cookies-toggle` flag is in `Enabled` state upon upgrade - PASSED

Pre-req: Keep Block all cookies in brave://settings/shields

  1. New profile
  2. launched Brave
  3. opened brave://settings/shields
  4. verified Block all cookies option is available along with Block third-party cookies and All cookies options in the Block cookies setting
  5. retained Block all cookies option
  6. visited https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  7. clicked Shields icon
  8. confirmed Block-all-cookies option is shown
  9. closed Brave and renamed the profile to Brave-Browser-Nightly
  10. installed 1.75.112
  11. launched Brave
  12. opened brave://flags
  13. confirmed the feature flag #block-all-cookies-toggle is available and shown in default Disabled state
  14. confirmed Block all cookies setting in brave://settings/shields
  15. reloaded https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  16. clicked Shields icon
  17. confirmed Block all cookies option is shown in the Shields panel
  18. enabled #block-all-cookies-toggle in brave://flags
  19. confirmed Block all cookies selection still shown in brave://settings/shields
  20. switched to Allow all cookies in brave://settings/shields`
  21. reloaded https://www.whatismybrowser.com/detect/are-third-party-cookies-enabled/
  22. confirmed Allow all cookies option is shown in the Shields panel
  23. disabled #block-all-cookies-toggle in brave://flags
  24. confirmed Block all cookies option is no longer shown in brave://settings/shields
step 1 step 5 step 8 step 13 step 14 step 17 step 18 step 19 step 20 step 22 step 23 step 24
Image Image Image Image Image Image Image Image Image Image Image Image

@MadhaviSeelam MadhaviSeelam added QA/In-Progress Indicates that QA is currently in progress for that particular issue QA Pass-Win64 and removed QA/In-Progress Indicates that QA is currently in progress for that particular issue labels Dec 17, 2024
@Uni-verse
Copy link
Contributor

Verified on iPhone 12 running iOS 18.2 using version 1.75 (142)

New Install

Upgrade Case: Enabled

  • Ensured Block all Cookies toggle is still shown in global settings if enabled upon upgrading. Disabling the toggle and re-opening the settings menu will hide it if the flag is set to disabled.
  • Ensured that Block all Cookies settings is not shown when upgrading with default settings.
example example example

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
OS/Android Fixes related to Android browser functionality OS/Desktop OS/iOS Fixes related to iOS browser functionality priority/P3 The next thing for us to work on. It'll ride the trains. QA Pass - Android ARM QA Pass - iPhone QA Pass-Win64 QA/Yes release-notes/include
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants