Create store for Moderator settings #1320
Draft
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.
This PR introduces a
UserModSettings
model to store properties related tomoderator preference that we currently store in Redis. This is part of a wider
scale effort to migrate away from Redis any data which would be anything more
than slightly annoying in the event it gets lost.
This will require bot side changes but it is not a breaking change to merge this
when it is ready. Some manual migration will be required to move the current
moderator settings from Redis into this new PostgreSQL table.
I have added a basic copy of the cache data that we use on Redis, adding some
constraints to ensure that we do not end up retaining partially valid data (i.e.
a moderator schedule that has a start time but no duration).
Tasks required for this PR:
processing time when it is not needed
moderators settings
Any input from those wiser with Django than me would be appreciated to
maximimise the optimisation of these endpoints and models.