After conducting extensive research, I may have overlooked something, so I wanted to reach out to the StackExchange community for assistance.
Background:
In the latest version of Chrome (>65), notifications are stored on a per-site basis. If a user grants or denies notification permissions for a specific site and wants to reverse that decision (e.g., accidentally blocking notifications), they can simply access Chrome's notification settings, locate the site in question, and remove the block. This functionality is well-documented and works as intended.
However, this same mechanism also applies to extensions. When an extension is initially granted its necessary permissions and functions properly, if a user accidentally clicks "block" on a single desktop notification from the extension, a prompt appears with two buttons - "OK" and "Cancel". Subsequently, whenever the extension tries to send a notification, instead of the standard desktop alert, a JavaScript notification pops up in the middle of the screen with the same message.
The issue becomes apparent in scenarios like these, such as with the popular Tampermonkey Chrome extension, where the default permission is revoked by the user clicking "block," leading to the altered notification display.
My question consists of two parts:
Where does Chrome store the boolean value of PermissionLevel for extensions since they do not appear in the regular list of granted/blocked sites? Is this setting exposed in a configuration file, or is there any way for users in Chrome >65 to reverse this decision?
Is there a programmatic method that extension developers can utilize to identify when this scenario occurs and prompt users to reconsider granting permission again? While unofficial sources advise against potential abuse, I am unable to find any official guidelines concerning this matter.