Telegram forum topics: remaining UX and synchronization gaps #15

Open
opened 2026-03-31 22:50:49 +00:00 by putilovskiy_mikhail · 0 comments

Context: branch feat/telegram-adapter, commit a1b7a14 already improves forum onboarding and blocks the worst topic-breaking flow (/chats and chat-switch callbacks inside forum topics). During this session a few remaining issues were found and should be handled separately.

Findings:

  • Bot commands are still global, so forum topics still show commands like /chats and /forum even though some of them are intentionally disabled there. This is confusing and invites unsupported flows.
  • /new <name> inside an already linked forum topic renames the local chat record in SQLite, but does not rename the Telegram forum topic. Chat title and topic title diverge.
  • new_chat callback from the DM chat list still creates only a local chat. When forum is already connected, it should mirror the /new command behavior and create a forum topic + bind forum_thread_id.

Suggested follow-up:

  • Introduce Telegram command scopes so topic contexts expose only safe commands.
  • Decide the intended semantics of /new inside an existing linked topic: reject, register only when unbound, or also rename the Telegram topic.
  • Unify /new command and new_chat callback creation paths so forum synchronization happens in one place.

Basic reproduction for the second bug:

  1. Connect a forum group.
  2. Open an already bound topic.
  3. Run /new Renamed.
  4. Observe DB chat name changes, but Telegram topic title stays unchanged.
Context: branch `feat/telegram-adapter`, commit `a1b7a14` already improves forum onboarding and blocks the worst topic-breaking flow (`/chats` and chat-switch callbacks inside forum topics). During this session a few remaining issues were found and should be handled separately. Findings: - Bot commands are still global, so forum topics still show commands like `/chats` and `/forum` even though some of them are intentionally disabled there. This is confusing and invites unsupported flows. - `/new <name>` inside an already linked forum topic renames the local chat record in SQLite, but does not rename the Telegram forum topic. Chat title and topic title diverge. - `new_chat` callback from the DM chat list still creates only a local chat. When forum is already connected, it should mirror the `/new` command behavior and create a forum topic + bind `forum_thread_id`. Suggested follow-up: - Introduce Telegram command scopes so topic contexts expose only safe commands. - Decide the intended semantics of `/new` inside an existing linked topic: reject, register only when unbound, or also rename the Telegram topic. - Unify `/new` command and `new_chat` callback creation paths so forum synchronization happens in one place. Basic reproduction for the second bug: 1. Connect a forum group. 2. Open an already bound topic. 3. Run `/new Renamed`. 4. Observe DB chat name changes, but Telegram topic title stays unchanged.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Surfaces_team/surfaces#15
No description provided.