jared
8192da5a12
CI / Build & Quality Checks (push) Successful in 10m41s
CI / Trigger Desktop Build (push) Successful in 29s
fix(notifications): clear thread receipts on mark-read; cap avatar-decoration refetch
...
Two federated-room bugs surfaced by the desktop build:
1. markAsRead only sent one unthreaded receipt at the main-timeline tail. With
threadSupport enabled, thread replies leave the main timeline, so a reply
newer than that tail was never covered — its per-thread notification count
(which the room dot sums) lingered, so the unread dot never cleared even
after reading. It also early-returned when the main timeline was already
read. Now also send a threaded receipt at each unread thread's latest reply.
2. useAvatarDecoration never cached non-404 failures, so every avatar mount
re-requested io.lotus.avatar_decoration for federated users whose homeserver
403s/502s the field — a refetch storm that spammed the console and hammered
our homeserver's federation. Now cache definitive rejections (400/403/404)
and give up after ~2 transient (429/5xx) attempts per session.
Gates: tsc/eslint/prettier clean, build OK, 665 tests.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-02 16:31:10 -04:00
..
2026-05-21 23:30:50 -04:00
2026-02-22 15:14:04 +11:00
2026-05-21 23:30:50 -04:00
2026-05-22 11:16:11 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-06-28 21:15:31 -04:00
2023-06-12 16:45:23 +05:30
2026-06-02 10:34:46 -04:00
2026-05-21 23:30:50 -04:00
2024-01-21 18:20:56 +05:30
2025-07-15 22:40:16 +10:00
2024-01-21 18:20:56 +05:30
2024-01-21 18:20:56 +05:30
2026-07-02 16:31:10 -04:00
2026-06-04 10:26:08 -04:00
2026-05-23 11:26:45 -04:00
2026-06-24 08:22:01 -04:00
2026-06-12 22:20:22 -04:00
2026-06-30 22:34:17 -04:00
2026-06-30 01:33:52 -04:00
2024-06-01 00:19:46 +10:00
2026-05-21 23:30:50 -04:00
2026-05-15 13:37:03 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2025-02-10 16:49:47 +11:00
2026-05-21 23:30:50 -04:00
2026-05-22 13:24:07 -04:00
2026-06-13 18:52:23 -04:00
2026-05-21 23:30:50 -04:00
2026-06-09 22:56:06 -04:00
2025-08-13 00:12:30 +10:00
2023-10-21 12:44:21 +05:30
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-06-10 21:31:58 -04:00
2026-07-01 10:40:31 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-22 19:52:23 -04:00
2026-05-22 13:24:07 -04:00
2026-05-21 23:30:50 -04:00
2025-02-28 18:47:23 +11:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-22 17:17:26 -04:00
2024-06-01 00:19:46 +10:00
2026-05-21 23:30:50 -04:00
2023-06-12 16:45:23 +05:30
2025-08-27 22:25:49 +10:00
2026-03-09 21:39:58 +11:00
2024-06-01 00:19:46 +10:00
2026-06-03 23:15:29 -04:00
2023-06-12 16:45:23 +05:30
2026-05-21 23:30:50 -04:00
2024-09-14 18:54:06 +05:30
2024-06-01 00:19:46 +10:00
2025-01-26 22:53:16 +11:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-22 17:17:26 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-06-18 13:34:40 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2024-06-01 00:19:46 +10:00
2026-06-18 17:56:34 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-30 17:13:54 -04:00
2026-06-17 20:26:43 -04:00
2026-06-30 15:51:23 -04:00
2026-06-30 15:51:23 -04:00
2026-05-21 23:30:50 -04:00
2024-01-21 18:20:56 +05:30
2026-06-12 19:53:19 -04:00
2025-02-10 21:02:33 +11:00
2026-05-22 19:52:23 -04:00
2026-05-21 23:30:50 -04:00
2026-06-24 08:22:00 -04:00
2024-07-08 21:27:10 +10:00
2026-05-21 23:30:50 -04:00
2026-07-02 00:19:16 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-06-28 09:17:19 -04:00
2025-05-24 20:07:56 +05:30
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2025-03-23 22:09:29 +11:00
2025-03-19 23:14:54 +11:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2025-08-13 00:12:30 +10:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-22 19:52:23 -04:00
2023-06-22 09:14:50 +10:00
2026-06-01 21:38:35 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2024-12-16 16:25:15 +05:30
2026-05-22 11:16:11 -04:00
2026-07-01 22:53:32 -04:00
2026-05-22 11:16:11 -04:00
2025-03-19 23:14:54 +11:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2025-02-10 16:49:47 +11:00
2026-07-01 21:19:02 -04:00
2026-05-21 23:30:50 -04:00
2026-07-01 23:21:50 -04:00
2024-06-01 00:19:46 +10:00
2026-05-21 23:30:50 -04:00
2024-01-21 18:20:56 +05:30
2024-07-30 22:18:59 +10:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-07-01 09:07:03 -04:00
2026-07-01 09:07:03 -04:00
2026-07-02 13:31:09 -04:00
2026-07-01 10:01:10 -04:00
2026-07-01 09:07:03 -04:00
2026-07-01 09:07:03 -04:00
2026-06-13 23:53:39 -04:00
2026-07-01 09:07:03 -04:00
2026-07-01 10:40:31 -04:00
2026-07-01 10:01:10 -04:00
2026-06-10 20:31:35 -04:00
2026-07-01 09:07:03 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-06-28 16:47:50 -04:00
2026-07-01 22:39:10 -04:00
2026-07-01 23:43:20 -04:00
2026-05-22 13:24:07 -04:00
2026-05-21 23:30:50 -04:00
2026-05-20 21:26:18 -04:00
2026-05-21 23:30:50 -04:00
2026-06-15 20:50:00 -04:00
2026-06-19 11:21:29 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-23 12:19:06 -04:00
2026-05-21 23:30:50 -04:00
2026-05-22 13:24:07 -04:00
2023-10-06 08:14:06 +05:30