'Why doesn't this declarative net request rule work?

I'm trying to block a website with a chrome extension that uses the new declarative net request API for Manifest V3, but it isn't working at all. I have added the permission in the manifest and made sure to add the priority, id, action and conditions, but it still doesn't do anything at all. Since I am blocking only one domain, I tried changing the domain list in the conditions from "domains" to "domain" but this just blocks every domain. Here is the applicable part of my manifest. I'm not sure why, but when I open the website in a private/incognito tab, occasionally, it will work.

"declarative_net_request" : {
    "rule_resources" : [{
      "id": "rules1",
      "enabled": true,
      "path": "rules.json"
    }]
  },
  "permissions": [
    "declarativeNetRequest"
  ],

Here is my rules.json file.

[{
    "id": 1,
    "priority": 1,
    "action": {
      "type": "block"
    },
    "condition": {
      "domains": ["google.com"],
      "resourceTypes": ["main_frame"]
    }
}]


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source