661f8acf63
web(group-ui): show sender avatars on incoming clusters
CI / test (push) Successful in 28s
2026-03-08 18:54:55 +03:00
0db741cb8e
voice: harden recorder capture with mime fallback and chunked start
CI / test (push) Successful in 26s
2026-03-08 18:52:02 +03:00
4d9b64973d
voice: add global playback speed control for audio and voice
CI / test (push) Successful in 25s
2026-03-08 18:51:12 +03:00
f186f12bde
ui: show sender names in group bubbles with stable colors
CI / test (push) Successful in 26s
2026-03-08 18:49:20 +03:00
db700bcbcd
moderation: add chat bans for groups/channels with web actions
CI / test (push) Successful in 26s
2026-03-08 14:29:21 +03:00
76cc5e0f12
privacy/security: add PM privacy levels and improve session visibility
CI / test (push) Successful in 24s
2026-03-08 14:26:19 +03:00
528778238b
web: add 500x500 avatar cropper for profile and chat uploads
CI / test (push) Successful in 28s
2026-03-08 14:17:19 +03:00
07e970e81f
p2: add quote and code-block text formatting
CI / test (push) Successful in 20s
2026-03-08 14:12:12 +03:00
33e467d2a5
p1: add forward without author option
CI / test (push) Successful in 21s
2026-03-08 14:11:04 +03:00
5ae5821c20
web: fix chat context menu click handling
CI / test (push) Successful in 22s
2026-03-08 14:09:24 +03:00
539ba70294
p1: prioritize mention browser notifications
CI / test (push) Successful in 21s
2026-03-08 14:06:02 +03:00
f670305073
p0: hide invalid delete action for channel members
CI / test (push) Successful in 27s
2026-03-08 14:05:10 +03:00
9b3b404993
p0: harden realtime reconciliation and revoke-all token invalidation
CI / test (push) Successful in 23s
2026-03-08 14:04:11 +03:00
a9106b7fa3
web: add giphy provider for gif search
CI / test (push) Successful in 21s
2026-03-08 13:57:03 +03:00
b6175352d0
web: disable hardcoded tenor gifs and add configured fallback
CI / test (push) Successful in 21s
2026-03-08 13:55:24 +03:00
bc9d943d11
chats: add chat avatars and profile view-only modal
CI / test (push) Successful in 23s
2026-03-08 13:53:29 +03:00
f7413bc626
web: add avatar file upload in profile editors
CI / test (push) Successful in 28s
2026-03-08 13:45:47 +03:00
688cf0dd39
feat(web): add Tenor-backed GIF search in composer
CI / test (push) Successful in 22s
2026-03-08 13:41:35 +03:00
5d69d53301
feat(threads): support nested replies in thread API and panel
CI / test (push) Successful in 31s
2026-03-08 13:40:42 +03:00
88ff11c130
feat(web): add favorites for sticker and GIF pickers
CI / test (push) Successful in 21s
2026-03-08 13:38:55 +03:00
c6e8b779b0
feat(threads): add basic message thread API and web thread panel
CI / test (push) Successful in 21s
2026-03-08 13:37:53 +03:00
cf1a77ae76
feat(web): add notifications history block in settings
CI / test (push) Successful in 23s
2026-03-08 13:33:50 +03:00
10b11b065f
feat(web): add built-in sticker and GIF picker
CI / test (push) Successful in 21s
2026-03-08 13:32:26 +03:00
eb0852e64d
fix(web): keep editable text stable while typing
CI / test (push) Successful in 21s
2026-03-08 13:25:28 +03:00
704781e359
feat(web): add message edit flow in context menu and composer
CI / test (push) Successful in 24s
2026-03-08 13:22:57 +03:00
18596e6dab
fix(web): enforce channel read-only and admin delete rules
2026-03-08 13:18:52 +03:00
13b5f5b855
feat(realtime): sync message edits and deletes instantly
2026-03-08 13:17:09 +03:00
eda84d4d82
feat(web): redesign full-screen media viewer UX
CI / test (push) Successful in 27s
2026-03-08 13:14:18 +03:00
10d4e0386a
fix(web): refresh attachments when message list updates
CI / test (push) Successful in 20s
2026-03-08 13:11:11 +03:00
072677b9ad
feat(web): improve album layout and captions for multi-attachments
CI / test (push) Successful in 31s
2026-03-08 13:07:53 +03:00
d2dd9aa01b
feat(chat): add in-message attachments gallery and multi-file send
CI / test (push) Successful in 19s
2026-03-08 13:06:00 +03:00
65d8a9379b
feat(web): implement robust inline message formatting parser
CI / test (push) Successful in 25s
2026-03-08 13:00:11 +03:00
58208787e7
feat(web): refresh audio card UI and enforce outside-click menu close
CI / test (push) Successful in 24s
2026-03-08 12:55:55 +03:00
82322c4d42
fix(realtime,ui): sync message deletes and channel delete/leave behavior
CI / test (push) Successful in 23s
2026-03-08 12:52:31 +03:00
613edbecfe
fix(web): keep delivery status monotonic after reconnect
CI / test (push) Successful in 20s
2026-03-08 12:48:41 +03:00
dcc0f2abbc
fix(web): reconcile unread mention counters in realtime
CI / test (push) Successful in 20s
2026-03-08 12:46:52 +03:00
2af4588688
feat: improve voice recording UX and realtime state reconciliation
CI / test (push) Successful in 20s
2026-03-08 12:44:15 +03:00
d7160af908
ui: move audio volume control to top player bar
CI / test (push) Successful in 29s
2026-03-08 12:42:07 +03:00
30169a3a27
feat: add waveform voice messages end-to-end
CI / test (push) Successful in 23s
2026-03-08 12:40:49 +03:00
3b82b5e558
fix: restore light theme text and menu icon contrast
CI / test (push) Successful in 24s
2026-03-08 12:30:04 +03:00
831047447b
fix: improve light theme contrast and remove dark artifacts
CI / test (push) Successful in 25s
2026-03-08 12:25:49 +03:00
0594b890c3
feat: mentions badge in chat list and muted-mention delivery
CI / test (push) Successful in 21s
2026-03-08 12:23:39 +03:00
fc7a9cc3a6
test+web: fix test suite and remove redundant privacy checkbox
CI / test (push) Successful in 25s
2026-03-08 12:16:21 +03:00
79baadb522
feat(auth,privacy,web): step-by-step login, privacy settings persistence, TOTP QR, and API docs
CI / test (push) Failing after 22s
2026-03-08 12:09:53 +03:00
1546ae7381
web: move contacts to dedicated burger-menu screen
CI / test (push) Failing after 24s
2026-03-08 11:57:01 +03:00
f6fecf57c7
fix(web): move Contacts access to burger menu only
...
CI / test (push) Failing after 25s
- remove Contacts from top chat tabs
- keep contacts screen reachable via burger menu
2026-03-08 11:52:11 +03:00
cbd1b008bb
feat(contacts): switch contacts UX to email-first flow
...
CI / test (push) Failing after 18s
- expose email in user search/contact responses
- add add-contact-by-email API endpoint
- show email in contacts/search and add contact form by email in Contacts tab
2026-03-08 11:51:02 +03:00
897defc39d
fix(audio,sessions): unify audio playback state and improve session discovery
...
CI / test (push) Failing after 18s
- move voice/audio players to single global audio engine with shared volume
- stop/reset previous track when switching to another media
- keep playback alive across chat switches via global audio element
- list refresh sessions by redis scan fallback when user session set is missing
2026-03-08 11:48:13 +03:00
27d3340a37
feat(auth): add TOTP 2FA setup and login verification
...
CI / test (push) Failing after 21s
- add user twofa fields and migration
- add 2FA setup/enable/disable endpoints
- enforce OTP on login when 2FA enabled
- add web login OTP field and settings UI
2026-03-08 11:43:51 +03:00
e685a38be6
feat(auth): add active sessions management
...
CI / test (push) Failing after 33s
- store refresh session metadata in redis (ip/user-agent/created_at)
- add auth APIs: list sessions, revoke one, revoke all
- add web privacy UI for active sessions
2026-03-08 11:41:03 +03:00