Codex
74b086b9c8
backend: add push token API and FCM delivery pipeline
2026-03-09 23:12:19 +03:00
ec3dbddad6
fix(chats): resolve saved chat detail 500 by importing ChatMemberRead
CI / test (push) Failing after 2m15s
2026-03-08 22:32:28 +03:00
6e24c559aa
feat(groups): include member profile fields in chat members API
CI / test (push) Has started running
2026-03-08 21:22:53 +03:00
90320ffd5d
feat(moderation): add chat bans list endpoint with admin access checks
CI / test (push) Has started running
2026-03-08 21:21:43 +03:00
5909503012
feat(p0): complete account security privacy and sync hardening
CI / test (push) Failing after 2m10s
2026-03-08 21:19:12 +03:00
926413534b
fix(chats): prevent duplicate saved messages entries in chat list
CI / test (push) Failing after 1m57s
2026-03-08 21:13:40 +03:00
b6ffff8015
fix(sync): publish chat updates for mute archive and pin mutations
CI / test (push) Has started running
2026-03-08 21:08:07 +03:00
21c8f57169
fix(media): allow mp4/m4a audio uploads for voice recordings
CI / test (push) Failing after 1m31s
2026-03-08 20:48:36 +03:00
418c9e6044
feat(notifications): honor chat mute in web realtime alerts
CI / test (push) Failing after 1m30s
2026-03-08 20:37:54 +03:00
4122882b7e
feat(privacy): support nobody option for group invites
CI / test (push) Has started running
2026-03-08 20:32:29 +03:00
d6cd0e719c
fix(realtime): flush activity state during forced disconnect cleanup
CI / test (push) Has started running
2026-03-08 20:02:46 +03:00
65c20faecd
fix(realtime): clear typing and recording indicators on disconnect
CI / test (push) Successful in 46s
2026-03-08 19:55:32 +03:00
ac82e25d16
feat(realtime): add voice/video recording activity events
CI / test (push) Has started running
2026-03-08 19:53:48 +03:00
101f39771e
fix(channel): member delete acts as leave; add coverage and docs
CI / test (push) Successful in 42s
2026-03-08 19:44:42 +03:00
744ded914d
realtime: emit and handle chat_deleted for full chat removals
CI / test (push) Successful in 38s
2026-03-08 19:41:49 +03:00
a896568c53
realtime(chats): update subscriptions on delete/leave chat actions
CI / test (push) Successful in 41s
2026-03-08 19:40:03 +03:00
fb812c9a39
auth(2fa): add one-time recovery codes with regenerate/status APIs
CI / test (push) Successful in 40s
2026-03-08 19:16:15 +03:00
d069ff1121
auth(2fa): block setup after enable to avoid secret reissue
CI / test (push) Successful in 43s
2026-03-08 19:07:20 +03:00
1c9855b34c
auth: force disconnect realtime on revoke-all sessions
CI / test (push) Successful in 26s
2026-03-08 19:04:23 +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
33e467d2a5
p1: add forward without author option
CI / test (push) Successful in 21s
2026-03-08 14:11:04 +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
bc9d943d11
chats: add chat avatars and profile view-only modal
CI / test (push) Successful in 23s
2026-03-08 13:53:29 +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
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
c214cc8fd8
feat(privacy): enforce avatar/presence visibility and invite restrictions
2026-03-08 13:32:20 +03:00
041f7ac171
feat(messages): limit message edit window to 7 days
CI / test (push) Successful in 25s
2026-03-08 13:20:51 +03:00
13b5f5b855
feat(realtime): sync message edits and deletes instantly
2026-03-08 13:17:09 +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
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
30169a3a27
feat: add waveform voice messages end-to-end
CI / test (push) Successful in 23s
2026-03-08 12:40:49 +03:00
8689283e99
fix: persist message delivery status across server restarts
CI / test (push) Successful in 21s
2026-03-08 12:27:54 +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
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
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
da73b79ee7
feat(contacts): add contacts module with backend APIs and web tab
...
CI / test (push) Failing after 18s
- add user_contacts table and migration
- expose /users/contacts list/add/remove endpoints
- add Contacts tab in chat list with add/remove actions
2026-03-08 11:38:11 +03:00
99e7c70901
feat: realtime sync, settings UX and chat list improvements
...
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
6a96a99775
feat(web): improve message UX, voice gestures, and attachments
CI / test (push) Failing after 21s
2026-03-08 10:20:52 +03:00
f01bbda14e
feat(invites): add group/channel invite links and join by token
2026-03-08 09:58:55 +03:00
7c4a5f990d
feat(messages): support forwarding to multiple chats
2026-03-08 09:55:39 +03:00
8cdcd9531d
feat(chats): add per-user pinned chats and pinned sorting
2026-03-08 09:54:43 +03:00
fdf973eeab
feat(chats): add per-user chat archive support
2026-03-08 09:53:28 +03:00
76f008d635
feat(reactions): add message reactions API and web quick reactions
2026-03-08 09:51:18 +03:00
bc483afd78
feat(search): add unified global search for users/chats/messages
CI / test (push) Failing after 24s
2026-03-08 09:41:20 +03:00
76ab9c72f5
feat(privacy): add private-message permission toggle
2026-03-08 02:56:58 +03:00
df79a70baf
chore(prod): startup migrations, readiness checks and backend healthcheck
...
- add backend entrypoint that can run alembic upgrade head on startup
- add RUN_MIGRATIONS_ON_STARTUP setting and compose wiring
- add /health/live and /health/ready endpoints with db+redis checks
- add backend container healthcheck against readiness endpoint
- document readiness and startup migration behavior
2026-03-08 02:50:57 +03:00