Jared Vititoe jared
  • Joined on 2024-11-30
jared commented on issue LotusGuild/cinny#204 2026-09-19 13:38:50 -04:00
Persisted PII without encryption: status message + expiry and unsent composer drafts sit in plaintext localStorage

Reviewed against the current code:

  • Unsent composer drafts (draft-msg-*) — already swept on logout since #41 (clearMsgDrafts in state/plaintextCaches.ts).
  • **Status message +…
jared pushed to lotus at LotusGuild/cinny 2026-09-19 13:36:28 -04:00
c921f11521 feat(calls): 'Missed call from X' line in the timeline (#162)
jared commented on issue LotusGuild/cinny#162 2026-09-19 13:36:27 -04:00
Missed-call entry in the timeline (local-only)

Done in c921f115. The ring event (m.rtc.notification, which the timeline previously hid) renders as a red "Missed call from bob" line with the ring's time, same style as the "joined/ended…

jared closed issue LotusGuild/cinny#162 2026-09-19 13:36:27 -04:00
Missed-call entry in the timeline (local-only)
jared pushed to lotus at LotusGuild/cinny 2026-09-19 13:24:57 -04:00
0e2671891f feat(e2ee): undecryptable placeholder says why and offers the fix (#159)
jared closed issue LotusGuild/cinny#159 2026-09-19 13:24:57 -04:00
Undecryptable message: show the specific reason and the one action that fixes it
jared commented on issue LotusGuild/cinny#159 2026-09-19 13:24:56 -04:00
Undecryptable message: show the specific reason and the one action that fixes it

Verified first: the placeholder was the bare "Unable to decrypt message" for every code. Done in 0e267189:

utils/decryptionReason.ts maps every DecryptionFailureCode to one sentence + at…

jared commented on issue LotusGuild/cinny#214 2026-09-19 13:17:30 -04:00
Privacy: every page load contacts fonts.googleapis.com / fonts.gstatic.com for the VT323 font — self-host it

Done across the three repos:

  • cinny 6f250353: VT323 (OFL) vendored as latin + latin-ext woff2 subsets in public/fonts/ with @font-face in the existing custom-fonts.css; the three…
jared pushed to main at LotusGuild/cinny-desktop 2026-09-19 13:17:19 -04:00
83c89b894a csp: drop fonts.googleapis.com / fonts.gstatic.com — Lotus Chat self-hosts VT323 now
jared pushed to main at LotusGuild/matrix 2026-09-19 13:17:02 -04:00
c553c28957 cinny nginx: drop fonts.googleapis.com / fonts.gstatic.com from the CSP
jared pushed to lotus at LotusGuild/cinny 2026-09-19 13:16:35 -04:00
6f25035341 privacy: self-host the VT323 font instead of Google Fonts (#214)
jared commented on issue LotusGuild/cinny#219 2026-09-19 13:15:04 -04:00
Unify the two image viewers: timeline ImageViewer should open the gallery lightbox at that item

Done in f111b3c9: clicking an image in the room or thread timeline opens the gallery lightbox positioned at that event — dark backdrop, sender + date, 1/N counter, ←/→ across the room's…

jared closed issue LotusGuild/cinny#219 2026-09-19 13:15:04 -04:00
Unify the two image viewers: timeline ImageViewer should open the gallery lightbox at that item
jared pushed to lotus at LotusGuild/cinny 2026-09-19 13:14:52 -04:00
f111b3c9af feat(media): timeline images open the gallery lightbox at that event (#219)
jared commented on issue LotusGuild/cinny#218 2026-09-19 13:07:30 -04:00
Threads: opening the thread panel next to the member drawer squeezes both composers to a few characters at ≤1400 px

Fixed in 8b1c9fa6 — it was two problems:

  1. Three columns don't fit under ~1500 px. The member drawer now yields to an open content panel (thread / gallery / widgets / threads list) on…
jared closed issue LotusGuild/cinny#218 2026-09-19 13:07:30 -04:00
Threads: opening the thread panel next to the member drawer squeezes both composers to a few characters at ≤1400 px
jared pushed to lotus at LotusGuild/cinny 2026-09-19 13:07:30 -04:00
8b1c9fa610 fix(threads): thread panel no longer squeezes the composers (#218)
jared pushed to lotus at LotusGuild/cinny 2026-09-19 13:01:25 -04:00
8658ec05c3 perf: lazy-load seasonal overlays as their own chunks (#167)
jared commented on issue LotusGuild/cinny#167 2026-09-19 13:01:24 -04:00
Lazy-load seasonal theme CSS/keyframes only when a seasonal overlay is active

Verified and done for the overlays in 8658ec05: all 11 seasonal overlays (particles + their vanilla-extract keyframes) were in the main JS and the main CSS year-round. Each is now a `React.lazy…

jared closed issue LotusGuild/cinny#167 2026-09-19 13:01:24 -04:00
Lazy-load seasonal theme CSS/keyframes only when a seasonal overlay is active