Brave-browser: Rewards: unable to exclude sites from auto-contribute

Created on 18 Oct 2018  路  63Comments  路  Source: brave/brave-browser

Description


chrome://rewards provides a list of auto-contribute sites. Next to each of them there is an 'X' with the tooltip to remove the site from auto-contributions. However, when clicking on the X, nothing happens.

The same is true for the modal dialog that opens when clicking on "See all N sites" under the list.

(I wasn't able to find any issues about the auto-contribute or exclusion in github issues and in the community forums, but if I'm just bad at searching, please close this issue with a link to wherever is relevant)

Steps to Reproduce

  1. Open Rewards Settings (or navigate directly to chrome://rewards/)
  2. Enable Auto-Contribute
  3. Click on 'X' on one of the listed websites

Actual result:


The list remains the same, the site is not removed

Expected result:

The site is removed from auto-contributions list and is excluded from the feature

Reproduces how often:


Every time

Brave version (brave://version info)

  • Brave: 0.56.4 Chromium: 70.0.3538.54聽(Official Build)聽dev聽(64-bit)
  • Revision: 4f8e578b6680574714e9ed3bb9f02922b4dde40d-refs/branch-heads/3538@{#937}
  • OS: Mac OS X 10.13.6
  • JavaScript: V8聽7.0.276.27

Reproducible on current release:

  • [X] Does it reproduce on brave-browser dev/beta builds?
  • [ ] Does it reproduce on browser-laptop?

Additional Information

screen shot 2018-10-18 at 10 35 12

screen shot 2018-10-18 at 10 22 19

Repro video:
rewards-repro

QA Pass-Linux QA Pass-Win64 QA Pass-macOS QTest-Plan-Specified QYes featurrewards prioritP2 release-noteinclude

Most helpful comment

Just updated to Version 0.57.18 Chromium: 71.0.3578.80 (Official Build) (64-bit). Still same behavior:

  • next contribution date still on 11/18/2018
  • unable to exclude some but not all publishers

All 63 comments

@kjozwiak can you please test it

I can't reproduce this issue with current builds on all three channels. Removed several sites from auto contribute list on each version.

Dev build:
Version 0.57.2 Chromium: 70.0.3538.67 (Official Build) dev (64-bit)
Beta build:
Version 0.56.6 Chromium: 70.0.3538.67 (Official Build) beta (64-bit)
Release build:
Version 0.55.20 Chromium: 70.0.3538.67 (Official Build) (64-bit)

@nomaed is this still an issue with the current dev version - Version 0.57.2 Chromium: 70.0.3538.67 (Official Build) dev (64-bit)

@rebron That's the version I'm running, on which I saw this. Pretty sure it happened on earlier versions too. However, I just opened the setting screen and the list of sites is empty for some reason. I'll wait for it to fill up and try again.

I will also try after disabling all extensions, in case this is a conflict with one of them, and will update the issue with my findings.

Upgraded to 0.57.3, also tried with --disable-extensions but this didn't help.
However, I created a new clean profile and there I was able to remove an item.

Is there any good way to compare 2 profiles? Not sure how the data is saved but if it's JSON or XML, maybe I can diff the two?

_Update:_ I just noticed (after restarting in normal mode) that I could remove one site from the list normally, but others are not being removed. I thought maybe that I couldn't remove "github" becuase it was open in another tab, but this is also true about other sites that are not open, so I am not sure what's going on. If there are any suggestions, or if there's some data I can give you to help diagnosing it, please let me know.

_Update 2:_ I'm building brave-browser from sources right now so I can have the JS files in non-minified version, I'll try debugging what's going on.

I added a screen recording of this behavior:
https://user-images.githubusercontent.com/9551921/47708567-03364380-dc37-11e8-80be-60e0a9d715cc.gif

Some items are removed, some aren't.

@nomaed thank you for the recording, this is helpful, we will try to reproduce it and fix it

I've got the same issue on two of my three computers.

Also, clicking Show All Sites and clicking Restore All also restores a random number of sites. Clicking it multiple times changes the counter but it never reaches 0. I can now block some sites that was blocked before but not all.

I'll bet issue #1873 is another symptom of the same core issue.

@brave/legacy_qa where you able to reproduce this one?

@NejcZdovc I'm unable to reproduce using

Brave | 0.56.8 Chromium: 70.0.3538.77聽(Official Build)聽(64-bit)
-- | --
Revision | 0f6ce0b0cd63a12cb4eccea3637b1bc9a29148d9-refs/branch-heads/3538@{#1039}
OS | Mac OS X

cc @srirambv @GeetaSarvadnya @btlechowski to try on other platforms

There are a number of reports of this issue in community - several reports on this thread:
https://community.brave.com/t/cannot-exclude-website-from-brave-rewards/36708

I am running "Version 0.55.22 Chromium: 70.0.3538.77 (Official Build) (64-bit)" on macOS Mojave (10.14.1) and cannot exclude any site or YouTube channel. Is there a manual workaround? Happy to help test any fixes, if needed

@glawrence do you have any sites excluded at all? if so, how many? did you exclude those sites via the table (clicking the x) or from the BAT logo (when the panel appears, by clicking on the toggle)?

I recently upgraded from brave-laptop 0.25.2 and at present I have nothing excluded. I cannot change "Include in Auto-Complete" from the BAT Logo either

Thanks @glawrence - my fault there, I forgot the fix for the toggle from BAT logo isn't included until 0.56.x (https://github.com/brave/brave-browser/issues/1283). I'll continue to try and reproduce.

Okay, thanks, I am happy to try some diagnostics, or even ship you my install/profile if that helps. After I installed brave-browser I copied my wallet across form brave-laptop, not sure if that makes a difference. I did have both running for a bit before removing brave-laptop.

Giving this a try on a clean profile from 0.56.3. No luck reproducing it on the current release build.

Does a clean profile mean you have lost all your bookmarks and BAT wallet? If are some steps somewhere I am happy to give it a go but I'll also need to get to 0.56.3 somehow

I also cannot exclude sites from autocontribute by clicking on the BAT logo in the URL bar and trying to toggle the switch

EDIT: this was 0.57.4 on macOS

@diracdeltas that was fixed in 0.56 https://github.com/brave/brave-browser/issues/1797

@LaurenWags I can see there is a release called "0.56.10 Release Candidate 3", do we know when 0.56 will ship and hence update my 0.55. If I could exclude sites with the BAT icon that would really help me, thanks

@glawrence should be in the next few days

That's what I was hoping for, thanks @NejcZdovc

My browser just updated to Version 0.56.12 Chromium: 70.0.3538.77 (Official Build) (64-bit) on Win 10 Pro
I am also experiencing this issue.

I have just been update to 0.56.12 and sure enough I can use the BAT Icon and turn off "Include in Auto-Contribute" however chrome://rewards/ still shows it and the "exclude site" options still do not work. I am sad to say I am turning off my BAT contribution until this is fixed

@NejcZdovc would uplifting https://github.com/brave/brave-core/pull/797 to hotfix help this?

I have this exact same issue, also on the new .56.12 (was on the previous .55 releases as well). But clicking on the BAT icon and trying to turn off "Include in Auto-Contribute does not work for me. I also have the issue da2x mentioned where trying to restore escluded sites does not work. It says I have 9 excluded sites (BTW it would be imensly helpful to view them and be able to add individual sites back instead of just all of them), when I click "restore all" it seems to only add back 1 site, and then shows that I have 8 sites excluded.

Another probably unrelated issue is that I have the "You have a grant waiting for you" message permanently stuck in my BAT drop down modal.

@jonathansampson ran into this (unable to delete some recipients from Rewards panel) internally as well (per discussion in Slack)

Just updated to Version 0.56.12 Chromium: 70.0.3538.77 (Official Build) (64-bit) and still have the issue

I'm able to use the 'x' to exclude in current release (v0.56.15) but not in dev v0.58.9

Yes, I also noticed 0.56.15 seems to work fine, I have not checked all scenarios but it looks good to me. Thanks team Brave

Removeing sites seems to work for me on .56.15. However "restore all" always leaves 4 sites removed. Would be great to have a way to see what sites are currently removed.

Edit: It appears it was just temporary, back to being unable to exclude sites.

Removeing sites seems to work for me on .56.15. However "restore all" always leaves 4 sites removed.

@scmart sounds like https://github.com/brave/brave-browser/issues/1441 which was fixed and will be landing in 0.58.x.

I am still seeing issues with 0.56.15, not only can I not exclude some sites my next contribution date is 18/11/2018 ! Feels to me like this fundamental part of Brave still has issues

Am unable to exclude publishers in Version 0.56.15 Chromium: 70.0.3538.110 (Official Build) (64-bit) on Mac.

Excluding publishers does not work on Version 0.56.15 Chromium: 70.0.3538.110 (Official Build) (64-bit) either. I migrated / recovered my wallet from the latest Muon version. The wallet is fully funded with my own BAT and has added funds from BAT grants. There has however been no contribution from my wallet for 6 months or so and grants have been expired without anything going the way it should.

The BAT contribution is for me the sole reason to use Brave, but I am getting frustrated that this is the only thing that continuously does not work. I understand the need to create a fast and stable browser, but for the love of god: that already exists. The reward system is your USP and does not effing works.

As previously: if there is anything I can supply you with to help, I will. But apart from some early progress I have not seen any working solution to a stable reward / wallet system.

I sort of agree. Can't the team temporarily make the next contribution dates a weekly thing with much lower BATs to be sent out so it can't help the team effectively understand where the issues are. Then after several periods of successful contributions, extend the dates and BATs again.

Just updated to Version 0.57.18 Chromium: 71.0.3578.80 (Official Build) (64-bit). Still same behavior:

  • next contribution date still on 11/18/2018
  • unable to exclude some but not all publishers

@disfit I have no idea why either of these are happening to you, but I don't believe we have an issue logged for your contribution date being so far in the past. So, I logged an issue and tagged you in it - could you take a look and see if there's any additional information you can provide? https://github.com/brave/brave-browser/issues/2425#issuecomment-445823669

Reproduced with

Brave | 0.58.12 Chromium: 71.0.3578.80聽(Official Build)聽(64-bit)
-- | --
Revision | 2ac50e7249fbd55e6f517a28131605c9fb9fe897-refs/branch-heads/3578@{#860}
OS | Mac OS X

I have a profile I can share with Dev if it's helpful.

Happy and not happy to see you can reproduce it @LaurenWags, if you get my drift :-)

Please let me know if I can contribute any other info, logs, database snippets or anything else that might be useful.

Not the most technical update, but I upgraded to v57 this morning, tried this and was able to exclude a few sites from auto-contribute.

However, I just tried again moments ago and the old behavior is back. Clicking the X causes nothing to happen.

Understood completely @disfit - but at least hopefully the profile I was able to provide can assist with finding a fix. Thanks for your kind offer of assistance - we will definitely reach out if we need more info 鉂わ笍

I ran into this again today. The problem is with a missing excluded property on the state object. If I pause and manually add that property (e.excluded = []), the logic works as expected.

https://github.com/brave/brave-core/blob/2ad0900a7f4e5459921523ac0c7eade6017f0a47/components/brave_rewards/resources/ui/reducers/publishers_reducer.ts#L63

Looking into this a bit more, I think the issue was with me having my _auto-contribute_ disabled, so I could engage exclusively in manual tipping. It looks like the ON_CONTRIBUTE_LIST logic checked for and creates the excluded array if needed. But ON_EXCLUDE_PUBLISHER does not do this check.

@NejcZdovc, thoughts?

Looking into this a bit more, I think the issue was with me having my _auto-contribute_ disabled

My auto-contribute is enabled, and I still have this issue. (Though my browser has never actually donated, donation date is still stuck at 11/21/2018).

@scmart Any errors in the page's developer tools console when attempting to delete an item?

@jonathansampson actually, after I posted that, I clicked on "See all XX sites". On that page, I was able to remove the offending site, and now I'm able to remove it in either place. But this issue has disappeared and then reappeared in the past, so if I run into it again, I'll check the dev console.

Version 0.58.17 Chromium: 71.0.3578.98 (Official Build) (64-bit)
@jonathansampson When I attempt to Exclude this site...

brave_rewards.bundle.js:2197 Uncaught TypeError: Cannot read property 'includes' of undefined
    at Cc (brave_rewards.bundle.js:2197)
    at rewardsData (brave_rewards.bundle.js:2197)
    at brave_rewards.bundle.js:2197
    at p (brave_rewards.bundle.js:2197)
    at Object.excludePublisher (brave_rewards.bundle.js:44)
    at onRemove (brave_rewards.bundle.js:1657)
    at Object.<anonymous> (brave_rewards.bundle.js:36)
    at Object.invokeGuardedCallback (brave_rewards.bundle.js:36)
    at Object.invokeGuardedCallbackAndCatchFirstError (brave_rewards.bundle.js:36)
    at O (brave_rewards.bundle.js:36)

The error link takes me to this code:

e.excluded.includes(n) || (chrome.send("brave_rewards.excludePublisher", [n]),

@ashrafhadden That's the issue I saw as well, where excludes as a property is not present. Some events check for and create this property as needed, but not all. The _exclude_publisher_ event does not check before accessing.

I shared details earlier: https://github.com/brave/brave-browser/issues/1693#issuecomment-449613225.

@scmart That makes sense. You likely passed the state object through an event that creates the missing excluded property. Once this has been done, properties can be removed.

I am getting the same error message as @ashrafhadden above using Version 0.58.18 Chromium: 71.0.3578.98 (Official Build) (64-bit) on Linux Mint.

I do not get the same result as @scmart: opening the 'See all XX sites' popup still does not let me exclude sites/publishers.

But after I chose the 'Restore all' in the 'See all XX sites' pop up I was able to exclude sites to my hearts content.

Weirdly enough though, after the restore all Brave still indicated that a number of sites where still excluded. Could it be that the restore all option only restores sites that have been visited in the current / running contribution period? Otherwise it does not make sense ... well not to me anyway :-)

+1 from community https://community.brave.com/t/0-58-18-ubuntu-cannot-remove-a-site-from-rewards-by-clicking-on-x/41031?u=eljuno

Same issue I'm having!
Version 0.58.18 Chromium: 71.0.3578.98 (Official Build) (64-bit)
Windows 7 64 bit.

@jonathansampson thx for this great find, will create PR and pull it into hotfix as discussed with @BrendanEich as it's a simple change. If this will not fix it we can create new issue with a different steps

Verified passed with

Brave | 0.58.20 Chromium: 71.0.3578.98聽(Official Build)聽(64-bit)
-- | --
Revision | 15234034d19b85dcd9a03b164ae89d04145d8368-refs/branch-heads/3578@{#897}
OS | Mac OS X

  • I had a profile from 0.58.18 which reproduced the issue:
    1693-repro

  • When I updated to 0.58.20, I was able to exclude sites:
    1693-fixed

Verification passed on

Brave | 0.58.20 Chromium: 71.0.3578.98聽(Official Build)聽(64-bit)
-- | --
Revision | 15234034d19b85dcd9a03b164ae89d04145d8368-refs/branch-heads/3578@{#897}
OS | Linux

  • Sites can be excluded via the ac list by clicking on the x button

Verification passed on

Brave | 0.58.20 Chromium: 71.0.3578.98聽(Official Build)聽(64-bit)
-- | --
Revision | 15234034d19b85dcd9a03b164ae89d04145d8368-refs/branch-heads/3578@{#897}
OS | Windows 10

  • Able to exclude the sites by clicking on x button
    exclude sites- 0 58 20

I'm still experiencing this in
Version 0.58.21 Chromium: 71.0.3578.98 (Official Build) (64-bit)
Distributor ID: Ubuntu
Description: Ubuntu 18.04.1 LTS
Release: 18.04
Codename: bionic
Linux 4.18.0-13-generic #14~18.04.1-Ubuntu SMP Thu Dec 6 14:09:52 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Yes, I can't exclude sites on the same build
Version 0.58.21 Chromium: 71.0.3578.98 (Official Build) (64-bit)
Windows 7 64bit

@jonathansampson Still not working on Version 0.58.21 Chromium: 71.0.3578.98 (Ubuntu 16.04)

Having the dev console open, I'm seeing no errors or warnings when attempting to remove sites. Less than half of sites are actually removed when attempting to remove them, and "restore all" does not allow sites to be removed this time (I also permanently have 4 sites still removed after "restore all".

Also, some sites are listed twice in the list. For example, spots 1 and 2 are both reddit. Neither of them can be removed.

Fixed for some users, but still many reports that it has not fixed it for all users. (About 3-5 reports in community since updating to 0.58.21.) @NejcZdovc

@NejcZdovc did mention that this won't fix all the cases that users have been experiencing. Created https://github.com/brave/brave-browser/issues/2943 to follow the cases that haven't been fixed by this issue and https://github.com/brave/brave-core/pull/1239.

As this one fixed one particular case, we're not going to re-open this as it already landed in 0.58.21. Lets add all new information under #2943.

Was this page helpful?
0 / 5 - 0 ratings