feat: save user theme preference - #1220
Draft
calebmcquaid wants to merge 1 commit into
Draft
calebmcquaid wants to merge 1 commit into
calebmcquaid wants to merge 1 commit into
Conversation
Contributor
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
calebmcquaid
added this pull request to stack #1244
September 17, 2026 03:51
4 tasks
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Context & Requests for Reviewers
This is the backend piece for the dark mode issue (#365). This allows a user to store a personal preference of light/dark mode. This adds a new column in the DB, a GQL enum, and persistence in the
userManagementService.Tests
Unit tests added, lints and builds clean.
(Optional) Rollout Plan
This is a stacked PR and should land with the others in the stack.
Checklist
Only check items that apply to this PR; leave the rest unchecked.
If you changed anything user-facing (i.e. user interface or APIs):
Did you update related docs?
If the change is notable (refer to Keep a Changelog conventions):
Did you update CHANGELOG.md?
If you changed
db/src/scripts/**and usedCREATE TABLE,ADD COLUMN, orALTER COLUMN:Are as many columns marked
NOT NULLas possible? If some columns can sometimes be null depending on other columns, are thereCHECKconstraints capturing those relationships, and are these also reflected using unions in the associated Kysely types?If you added a new signal in
server/services/signalsService/signals/**:Did you classify every error case as a permanent error (
SignalPermanentError, no retry) or a normal error (retryable)? Any case where the signal can't determine a score should be aSignalPermanentError.Summary by cubic
Saves per-user color scheme preferences so the client can persist theme choices instead of resetting on reload.
Users can now set a theme preference (
SYSTEM,LIGHT, orDARK) via the newsetThemePreferencemutation. The value is stored inuser_interface_settingsand exposed asthemePreferenceon user interface settings; null means unset, and the client falls back to light.Migration
theme_preferencecolumn with a CHECK constraint; existing users default to null.Written for commit 9ef3930. Summary will update on new commits.