Commit Graph

  • e59c60094f fix(voice): improve duration detection for new waveform playback benya 2026-03-08 20:46:57 +03:00
  • 8092cb53c5 fix(media): exclude stickers and gifs from media gallery set benya 2026-03-08 20:45:16 +03:00
  • 11d108f0a6 fix(media): keep sticker and gif clicks out of photo viewer benya 2026-03-08 20:44:33 +03:00
  • f0582bf4ab fix(composer): guard websocket and recorder race on chat switch benya 2026-03-08 20:42:19 +03:00
  • 20f31cd15e fix(notifications): sync mute state in chat store immediately benya 2026-03-08 20:40:44 +03:00
  • 418c9e6044 feat(notifications): honor chat mute in web realtime alerts benya 2026-03-08 20:37:54 +03:00
  • 6c039ae94f fix(contacts-ui): show specific add-by-email errors benya 2026-03-08 20:36:38 +03:00
  • 42596fba16 feat(status): improve last-seen labels in web private chats benya 2026-03-08 20:35:57 +03:00
  • 25b6f470d5 fix(settings): show sessions load errors explicitly benya 2026-03-08 20:34:36 +03:00
  • 586d3acc16 feat(settings): harden privacy and sessions actions UX benya 2026-03-08 20:33:16 +03:00
  • 4122882b7e feat(privacy): support nobody option for group invites benya 2026-03-08 20:32:29 +03:00
  • 362098b954 test(chats): ensure saved chat delete clears history only benya 2026-03-08 20:27:33 +03:00
  • f57e254bcc test(messages): cover 7-day edit window enforcement benya 2026-03-08 20:26:21 +03:00
  • f6c686a343 fix(web): keep chat context menu actions clickable benya 2026-03-08 20:25:22 +03:00
  • f746e31616 test(contacts): cover blocked relation for add-by-email benya 2026-03-08 20:23:50 +03:00
  • a900713a48 test(contacts): cover add-by-email success and not-found benya 2026-03-08 20:22:06 +03:00
  • 1337a7c10e test(privacy): cover everyone group-invite policy benya 2026-03-08 20:21:41 +03:00
  • 4cd374e33e test(privacy): cover everyone private-message policy benya 2026-03-08 20:21:13 +03:00
  • aaae5b313e test(privacy): enforce nobody group-invite policy benya 2026-03-08 20:20:47 +03:00
  • 6fbb98cf2f test(invites): return 404 for invalid join token benya 2026-03-08 20:19:53 +03:00
  • bbb97292d2 docs(api): add invite-link permission rules benya 2026-03-08 20:19:30 +03:00
  • 58e85d0a64 test(invites): cover join-by-token and invite-link permissions benya 2026-03-08 20:19:16 +03:00
  • 90c2bdcd96 docs(api): document owner-only chat role update rules benya 2026-03-08 20:18:18 +03:00
  • ee43d13ba4 test(roles): enforce owner-only member role management benya 2026-03-08 20:17:30 +03:00
  • 58c80460fa docs(api): clarify message delete semantics and channel constraints benya 2026-03-08 20:15:46 +03:00
  • 80bda6e537 test(channels): enforce delete-for-all permissions on messages benya 2026-03-08 20:15:25 +03:00
  • 60e5225c80 fix(ui): prevent chat-info attachment menu clicks from closing panel benya 2026-03-08 20:14:24 +03:00
  • 7453e1ec06 feat(realtime): emit recording_video activity in circle-video flow benya 2026-03-08 20:13:43 +03:00
  • 1d2610a796 docs(checklist): note session revoke test coverage benya 2026-03-08 20:10:42 +03:00
  • ace8c79051 test(auth): cover single-session revoke behavior benya 2026-03-08 20:10:30 +03:00
  • 190b7b9d71 docs(checklist): mark typing module partial until video recorder emit is wired benya 2026-03-08 20:09:48 +03:00
  • 9f03aafd18 test(privacy): enforce nobody private message policy benya 2026-03-08 20:09:14 +03:00
  • 9ffcf7b3ef perf(realtime): debounce typing start/stop events benya 2026-03-08 20:06:04 +03:00
  • c5b90bc91c fix(typing): stop indicator on blur and chat switch benya 2026-03-08 20:05:23 +03:00
  • 1a3a54cfb9 test(moderation): enforce group profile edit permissions by role benya 2026-03-08 20:04:55 +03:00
  • 57b687a036 test(channels): validate admin global delete permissions benya 2026-03-08 20:03:15 +03:00
  • d6cd0e719c fix(realtime): flush activity state during forced disconnect cleanup benya 2026-03-08 20:02:46 +03:00
  • 724bd24b4f docs(api): add full realtime websocket protocol section benya 2026-03-08 20:02:07 +03:00
  • 9bc695ca58 test(privacy): verify contacts-only avatar and presence visibility benya 2026-03-08 20:01:36 +03:00
  • f369083b6a fix(realtime-ui): auto-expire stale typing/recording indicators benya 2026-03-08 20:00:59 +03:00
  • 6930e73b9f test(channels): enforce member read-only posting permissions benya 2026-03-08 19:58:10 +03:00
  • f03fcb2bb7 test(privacy): cover hidden avatar and last-seen in private chat list benya 2026-03-08 19:57:42 +03:00
  • 84ac0c0e60 fix(websocket): force logout on revoked session close codes benya 2026-03-08 19:57:11 +03:00
  • 65c20faecd fix(realtime): clear typing and recording indicators on disconnect benya 2026-03-08 19:55:32 +03:00
  • 1d250f0420 test(realtime): cover recording activity event schema benya 2026-03-08 19:54:19 +03:00
  • ac82e25d16 feat(realtime): add voice/video recording activity events benya 2026-03-08 19:53:48 +03:00
  • 1ef0cdf29d test(channel): forbid member delete with for_all benya 2026-03-08 19:45:37 +03:00
  • 101f39771e fix(channel): member delete acts as leave; add coverage and docs benya 2026-03-08 19:44:42 +03:00
  • 744ded914d realtime: emit and handle chat_deleted for full chat removals benya 2026-03-08 19:41:49 +03:00
  • a896568c53 realtime(chats): update subscriptions on delete/leave chat actions benya 2026-03-08 19:40:03 +03:00
  • 8965dc93fd web(avatar-crop): smooth zoom via transform scale with stable cover sizing benya 2026-03-08 19:36:44 +03:00
  • 702679c99d web(avatar-crop): fix narrow-image centering and add circular tg-like mask benya 2026-03-08 19:33:24 +03:00
  • 958a85be91 web(settings): center no-avatar placeholder text inside circle benya 2026-03-08 19:30:41 +03:00
  • a1436ca27f web(composer): center glyphs inside round action buttons benya 2026-03-08 19:28:38 +03:00
  • 67752b9f47 web(mobile): compact composer under 390px and fix stale title draft in chat info benya 2026-03-08 19:20:04 +03:00
  • cb59f1063e web(mobile): tighten composer controls and solid settings drawer background benya 2026-03-08 19:17:58 +03:00
  • fb812c9a39 auth(2fa): add one-time recovery codes with regenerate/status APIs benya 2026-03-08 19:16:15 +03:00
  • f91a6493ff web(mobile): fix composer layout overflow on narrow screens benya 2026-03-08 19:08:55 +03:00
  • d069ff1121 auth(2fa): block setup after enable to avoid secret reissue benya 2026-03-08 19:07:20 +03:00
  • af1ce20640 tests(privacy): cover group-invite and avatar visibility policies benya 2026-03-08 19:05:43 +03:00
  • 1c9855b34c auth: force disconnect realtime on revoke-all sessions benya 2026-03-08 19:04:23 +03:00
  • 7e38123d4a docs(checklist): mark forwarding module as done benya 2026-03-08 18:57:09 +03:00
  • 8830192642 web(realtime): refresh chat info panel on chat updates benya 2026-03-08 18:56:54 +03:00
  • 661f8acf63 web(group-ui): show sender avatars on incoming clusters benya 2026-03-08 18:54:55 +03:00
  • 0db741cb8e voice: harden recorder capture with mime fallback and chunked start benya 2026-03-08 18:52:02 +03:00
  • 4d9b64973d voice: add global playback speed control for audio and voice benya 2026-03-08 18:51:12 +03:00
  • f186f12bde ui: show sender names in group bubbles with stable colors benya 2026-03-08 18:49:20 +03:00
  • db700bcbcd moderation: add chat bans for groups/channels with web actions benya 2026-03-08 14:29:21 +03:00
  • 76cc5e0f12 privacy/security: add PM privacy levels and improve session visibility benya 2026-03-08 14:26:19 +03:00
  • 528778238b web: add 500x500 avatar cropper for profile and chat uploads benya 2026-03-08 14:17:19 +03:00
  • 07e970e81f p2: add quote and code-block text formatting benya 2026-03-08 14:12:12 +03:00
  • 33e467d2a5 p1: add forward without author option benya 2026-03-08 14:11:04 +03:00
  • 5ae5821c20 web: fix chat context menu click handling benya 2026-03-08 14:09:24 +03:00
  • 539ba70294 p1: prioritize mention browser notifications benya 2026-03-08 14:06:02 +03:00
  • f670305073 p0: hide invalid delete action for channel members benya 2026-03-08 14:05:10 +03:00
  • 9b3b404993 p0: harden realtime reconciliation and revoke-all token invalidation benya 2026-03-08 14:04:11 +03:00
  • a9106b7fa3 web: add giphy provider for gif search benya 2026-03-08 13:57:03 +03:00
  • b6175352d0 web: disable hardcoded tenor gifs and add configured fallback benya 2026-03-08 13:55:24 +03:00
  • bc9d943d11 chats: add chat avatars and profile view-only modal benya 2026-03-08 13:53:29 +03:00
  • f7413bc626 web: add avatar file upload in profile editors benya 2026-03-08 13:45:47 +03:00
  • 688cf0dd39 feat(web): add Tenor-backed GIF search in composer benya 2026-03-08 13:41:35 +03:00
  • 5d69d53301 feat(threads): support nested replies in thread API and panel benya 2026-03-08 13:40:42 +03:00
  • 88ff11c130 feat(web): add favorites for sticker and GIF pickers benya 2026-03-08 13:38:55 +03:00
  • c6e8b779b0 feat(threads): add basic message thread API and web thread panel benya 2026-03-08 13:37:53 +03:00
  • cf1a77ae76 feat(web): add notifications history block in settings benya 2026-03-08 13:33:50 +03:00
  • 10b11b065f feat(web): add built-in sticker and GIF picker benya 2026-03-08 13:32:26 +03:00
  • c214cc8fd8 feat(privacy): enforce avatar/presence visibility and invite restrictions benya 2026-03-08 13:32:20 +03:00
  • eb0852e64d fix(web): keep editable text stable while typing benya 2026-03-08 13:25:28 +03:00
  • 704781e359 feat(web): add message edit flow in context menu and composer benya 2026-03-08 13:22:57 +03:00
  • 041f7ac171 feat(messages): limit message edit window to 7 days benya 2026-03-08 13:20:51 +03:00
  • a32ef745c1 docs: add current core checklist implementation status benya 2026-03-08 13:19:25 +03:00
  • 18596e6dab fix(web): enforce channel read-only and admin delete rules benya 2026-03-08 13:18:52 +03:00
  • 13b5f5b855 feat(realtime): sync message edits and deletes instantly benya 2026-03-08 13:17:09 +03:00
  • eda84d4d82 feat(web): redesign full-screen media viewer UX benya 2026-03-08 13:14:18 +03:00
  • 10d4e0386a fix(web): refresh attachments when message list updates benya 2026-03-08 13:11:11 +03:00
  • 072677b9ad feat(web): improve album layout and captions for multi-attachments benya 2026-03-08 13:07:53 +03:00
  • d2dd9aa01b feat(chat): add in-message attachments gallery and multi-file send benya 2026-03-08 13:06:00 +03:00
  • 65d8a9379b feat(web): implement robust inline message formatting parser benya 2026-03-08 13:00:11 +03:00
  • 58208787e7 feat(web): refresh audio card UI and enforce outside-click menu close benya 2026-03-08 12:55:55 +03:00
  • 82322c4d42 fix(realtime,ui): sync message deletes and channel delete/leave behavior benya 2026-03-08 12:52:31 +03:00