== Background
Due to complications arising from using two different storage mechanisms for some Vector 2022 features (user options for logged-in users and cookies via clientPreferences.js for anons) it was discovered that the night mode "exclude" feature does not work consistently for anonymous users. The "exclude" configuration, which should prevent some pages from appearing in dark mode, works for logged-in users, but not for anonymous user who have set a clientPreferences cookie via changing an option in the appearance menu.
Due to this bug, we identified the need for ClientPreferences.js to support the concept of "overrides".
== User story
- When switching between logged-in and logged-out, I expect the same pages to be excluded from night mode.
== Requirements
The ClientPreferences.js script must be made aware of classes with special suffixes, "override" or "exclude", that prevent it from modifying the class name with the clientpreferences cookie value.
=== BDD
- For QA engineer to fill out
=== Test Steps
- For QA engineer to fill out
== Design
- Add mockups and design requirements
== Acceptance criteria
[ ] If I am an anonymous user, and I have selected night mode from the appearance menu in Vector, then I go to a page that should have night mode disabled, e.g. https://en.wikipedia.beta.wmflabs.org/wiki/Banana the night mode options should be disable in the appearance menu.
== Communication criteria - does this need an announcement or discussion?
- N/A