mark grouped notifs by oldest id - sort-of fix 1139
What does this MR do?
THIS IS A MERGE TO STABLE because this is a bug in the current release
mark grouped notifs by oldest id - sort-of fix #1139
Misskey's code does the same, but our groups behave differently enough that this may be not the best choice
for example, let's say we have:
- notifications 1-5 for reaction to note A
- notifications 6-8 for reaction to note B
- notifications 9-12 for reaction to note A
- notification 13-19 for non-groupable events
- notification 20 for reaction to note A
and that events happened one every minute (so the last notification is from 20 minutes ago)
client requests the most recent 10 notifications; we fetch notifications 1-10, and reply:
- grouped id 6 for reactions 6-8 to note B
- grouped id 10 for reactions 1-5, 9-10 to note A
then the client requests 10 more notifications, untilId=10; we fetch notifications 11-20, and reply:
- non-grouped notifications 13-19
- grouped id 20 for reactions 11,12,20 to note A
because we sort by id, and also the createdAt marks the newest event in each group, the client will then show:
- 6 reactions to note B, 6 minutes ago
- 4 reactions to note A, 1 minute ago
- notifications 13-19, 13 minutes to 19 minutes ago
- 3 reactions to note A, 11 minutes ago
I don't know how to make this work better
Contribution Guidelines
By submitting this merge request, you agree to follow our Contribution Guidelines
-
I agree to follow this project's Contribution Guidelines -
I have made sure to test this merge request
Closes #1139