owpengram-server/internal/store
Astra 206bde18e0 channels: give kicked/banned/promoted/transferred users a real qts so their client applies it
updateChannelParticipant carries the account's qts per the MTProto spec, but
the server always sent Qts: 0, so real clients silently discarded it as a
stale duplicate -- the banned/kicked user's channel never vanished locally
and no correct "removed by admin" message showed, even though the update was
delivered successfully at the transport layer.

Add a durable per-device qts queue (channel_participant_event_queue) sharing
its qts number space with the existing secret-chat queue (one qts sequence
per device, per spec), and use it to stamp a correct, monotonically
increasing qts on the update for every device of the affected user -- for
channel bans/kicks, admin promotion/demotion, and ownership transfer. A
device offline when it happened can now recover the event via
updates.getDifference instead of missing it permanently.
2026-09-15 15:43:52 +01:00
..
memory channels: give kicked/banned/promoted/transferred users a real qts so their client applies it 2026-09-15 15:43:52 +01:00
postgres channels: give kicked/banned/promoted/transferred users a real qts so their client applies it 2026-09-15 15:43:52 +01:00
redisstore merged with fixes 2026-09-09 02:49:30 +03:00
storetest perf: sync protocol and core hardening updates 2026-07-11 19:48:26 +08:00
account.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
account_lifecycle.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
active_channel_ids_cache.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
ai.go feat: sync AI compose and ChatBot features 2026-07-03 19:43:20 +08:00
album_group.go perf: sync protocol and core hardening updates 2026-07-11 19:48:26 +08:00
allocator.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
auth_delivery_report.go feat: sync durable moderation and appeals 2026-07-24 11:56:59 +08:00
authkey.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
authkey_session_layer.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
authkey_test.go feat: sync multilayer td integration 2026-07-15 13:32:06 +08:00
authorization.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
bootstrap_update_job.go perf: sync protocol and core hardening updates 2026-07-11 19:48:26 +08:00
bot.go chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
bot_callback.go feat: sync bot keyboards and callbacks 2026-07-19 20:38:48 +08:00
bot_verification.go feat: add NFT usernames and bot verification (#22) 2026-07-28 01:18:00 +08:00
botapi_update.go feat: sync bot keyboards and callbacks 2026-07-19 20:38:48 +08:00
broadcast.go fixes 2026-09-01 12:50:18 +03:00
channel.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
chatlist.go feat: sync chatlist sharing support 2026-07-06 21:06:33 +08:00
client_telemetry.go feat: sync durable moderation and appeals 2026-07-24 11:56:59 +08:00
code.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
collectible_username.go fix(usernames): sync index active collectible aliases 2026-07-28 16:22:34 +08:00
community.go feat: sync community aggregates 2026-07-20 16:46:02 +08:00
contact.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
contact_reverse_batch.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
contact_reverse_batch_test.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
delivery_effect.go merged with fixes 2026-09-09 02:49:30 +03:00
dialog.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
dialog_list_snapshot_cache.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
dispatch_outbox.go perf: sync protocol and core hardening updates 2026-07-11 19:48:26 +08:00
doc.go fix: sync scoped connection and outbox exclusion updates 2026-07-12 12:01:53 +08:00
ephemeral.go feat: sync ephemeral transient messages 2026-07-20 16:43:27 +08:00
gif_catalog.go fix for gifs auto-catigorisation 2026-08-24 23:26:57 +03:00
groupcall.go feat: sync group call livestream support 2026-07-06 14:32:45 +08:00
help.go Initial open source release 2026-06-04 01:37:39 +08:00
inline_registry.go chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
langpack.go feat: sync langpack and auth updates 2026-07-18 00:07:41 +08:00
login_code_delivery.go added messages templates 2026-09-01 14:40:06 +03:00
login_code_delivery_test.go added messages templates 2026-09-01 14:40:06 +03:00
media.go files for previous commit 2026-09-03 08:33:27 +03:00
message.go feat(messages): sync saved message tags 2026-07-25 19:23:19 +08:00
message_pin.go merged with fixes 2026-09-09 02:49:30 +03:00
moderation.go feat: sync durable moderation and appeals 2026-07-24 11:56:59 +08:00
passkey.go chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
phone_change.go feat: sync public links and phone change updates 2026-07-10 22:01:44 +08:00
poll.go chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
privacy.go fix: sync non-PTS privacy updates 2026-07-24 11:57:00 +08:00
private_no_forwards.go fix: sync support private chat content protection 2026-07-28 16:22:33 +08:00
private_send_idempotency.go merged with fixes 2026-09-09 02:49:30 +03:00
private_send_idempotency_test.go merged with fixes 2026-09-09 02:49:30 +03:00
ratelimit.go chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
read_model.go chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
read_model_batch.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
read_model_batch_test.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
read_model_cache.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
read_model_cache_test.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
reserved_username.go usernames: operator reserved-username blocklist 2026-09-14 12:04:43 +01:00
scheduled_message.go chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
secretchat.go channels: give kicked/banned/promoted/transferred users a real qts so their client applies it 2026-09-15 15:43:52 +01:00
send_replay.go perf: sync protocol and core hardening updates 2026-07-11 19:48:26 +08:00
story.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
telegram_login.go feat: sync Telegram Login OIDC provider 2026-07-21 15:46:24 +08:00
temp_auth_key.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
themes.go chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
update_event.go chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
updatestate.go feat: sync multilayer td integration 2026-07-15 13:32:06 +08:00
user.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
verification.go feat: add NFT usernames and bot verification (#22) 2026-07-28 01:18:00 +08:00
welcome_message.go merged from gramsrv upstream 2026-09-01 12:06:31 +03:00