Commit Graph

7 Commits

Author SHA1 Message Date
13b5f5b855 feat(realtime): sync message edits and deletes instantly 2026-03-08 13:17:09 +03:00
99e7c70901 feat: realtime sync, settings UX and chat list improvements
Some checks failed
CI / test (push) Failing after 21s
- add chat_updated realtime event and dynamic chat subscriptions

- auto-join invite links in web app

- implement Telegram-like settings panel (general/notifications/privacy)

- add browser notification preferences and keyboard send mode

- improve chat list with last message preview/time and online badge

- rework chat members UI with context actions and role crowns
2026-03-08 10:59:44 +03:00
a9e4222062 feat(realtime): add ping/pong heartbeat and watchdog reconnect
Some checks failed
CI / test (push) Failing after 20s
- support ping incoming event and pong outgoing response
- add web heartbeat interval to keep ws alive
- add stale-connection watchdog to force reconnect on missing pong
2026-03-08 02:13:34 +03:00
46dc601c84 feat(realtime): live online/offline events and unified search
Some checks failed
CI / test (push) Failing after 18s
- add websocket events user_online/user_offline
- broadcast presence changes on first connect and final disconnect only
- apply live presence updates in web chat store and realtime hook
- move public discover into unified left search (users + groups/channels)
- remove separate Discover Chats dialog/menu entry
2026-03-08 02:12:11 +03:00
e1d0375392 feat: add reply/forward/pin message flow across backend and web
Some checks failed
CI / test (push) Failing after 24s
- add reply_to/forwarded_from message fields and chat pinned_message field

- add forward and pin APIs plus reply support in message create

- wire web actions: Reply, Fwd, Pin and reply composer state

- fix spam policy bug: allow repeated identical messages, keep rate limiting
2026-03-08 00:28:43 +03:00
f6ad480973 feat: add message reliability foundation
All checks were successful
CI / test (push) Successful in 23s
- implement idempotent message creation via client_message_id

- add persistent delivered/read receipts

- expose /messages/status and wire websocket receipt events

- update web client to send client ids and auto-ack delivered/read
2026-03-07 23:57:35 +03:00
a879ba7b50 first commit 2026-03-07 21:31:38 +03:00