owpengram-server/internal/app
Astra 045f39c3f9 channels: give getParticipants a stable Hash when read-model versions are missing
cachedParticipants returned a participant page with Hash=0 whenever the
channel_base / channel_participants rows in read_model_versions were never
seeded for a channel (e.g. groups created via messages.createChat). With
Hash=0 the RPC layer can never answer channels.channelParticipantsNotModified,
so a client that polls the member list re-fetches it in a tight loop forever.

Fall back to a deterministic content hash derived from the page itself
(channel id, page key, count, and each member's id/role/status/rank) so an
unchanged member list yields an identical non-zero Hash and the client
converges. The read-model-backed path is unchanged.
2026-09-09 12:26:30 +01:00
..
account Merge remote-tracking branch 'upstream/main' into merge-gramsrv-9106877 2026-08-03 23:29:20 +03:00
ai fix: sync latest telesrv fixes 2026-07-04 01:14:47 +08:00
auth Merge remote-tracking branch 'upstream/main' into merge-gramsrv-9106877 2026-08-03 23:29:20 +03:00
authdiagnostics feat: sync durable moderation and appeals 2026-07-24 11:56:59 +08:00
bots /mybots: Edit Bot summary screen, return-to-menu, clickable @mentions 2026-09-08 13:44:01 +01:00
botverification changed verifier bot to marksbot 2026-08-04 03:22:46 +03:00
broadcast added ability to broadcast 2026-08-06 15:22:36 +03:00
channels channels: give getParticipants a stable Hash when read-model versions are missing 2026-09-09 12:26:30 +01:00
chatlists feat: sync chatlist sharing support 2026-07-06 21:06:33 +08:00
clienttelemetry feat: sync durable moderation and appeals 2026-07-24 11:56:59 +08:00
communities feat: sync community aggregates 2026-07-20 16:46:02 +08:00
contacts disabling marksbot when third-party verifications if turned off 2026-08-06 15:45:32 +03:00
dialogs fix(channels): sync preserve locally cleared dialogs 2026-07-29 16:19:04 +08:00
ephemeral feat: sync ephemeral transient messages 2026-07-20 16:43:27 +08:00
files media: never project zero image/video dimensions (crashes Telegram Desktop on reactions) 2026-09-08 16:29:37 +01:00
groupcalls feat: sync chatlist sharing support 2026-07-06 21:06:33 +08:00
help added full gifts support 2026-08-07 10:13:11 +03:00
langpack Merge remote-tracking branch 'upstream/main' into merge-gramsrv-9106877 2026-08-03 23:29:20 +03:00
livestream feat: sync group call livestream support 2026-07-06 14:32:45 +08:00
maintenance s3 support 2026-08-04 23:09:11 +03:00
messages fix: sync support private chat content protection 2026-07-28 16:22:33 +08:00
moderation feat: sync durable moderation and appeals 2026-07-24 11:56:59 +08:00
passkey feat: sync visible product branding 2026-07-20 16:49:17 +08:00
peerview chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
phone Merge remote-tracking branch 'upstream/main' into merge-gramsrv-9106877 2026-08-03 23:29:20 +03:00
polls chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
privacy fix: sync non-PTS privacy updates 2026-07-24 11:57:00 +08:00
readmodel chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
secretchat chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
stories chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
telegramlogin feat: sync host-based public app links 2026-07-22 21:43:56 +08:00
themes fix: sync Android default theme installs 2026-07-30 20:13:22 +08:00
translation feat: sync message translation support 2026-07-12 14:20:26 +08:00
updates removed all "paid" features - no more stars, gifts, or grams 2026-08-07 01:50:10 +03:00
usernames feat: add NFT usernames and bot verification (#22) 2026-07-28 01:18:00 +08:00
userprojection Merge remote-tracking branch 'upstream/main' into merge-gramsrv-0e2fcdf9 2026-07-24 17:15:53 +03:00
users added full gifts support 2026-08-07 10:13:11 +03:00
verification feat: add NFT usernames and bot verification (#22) 2026-07-28 01:18:00 +08:00