From 6941e373660088779445616fb17777c16d330317 Mon Sep 17 00:00:00 2001 From: gavrielc Date: Thu, 9 Apr 2026 13:38:23 +0300 Subject: [PATCH] fix: auto-prefix platform IDs in register.ts to match Chat SDK format Chat SDK adapters use prefixed platform IDs (e.g. "telegram:6037840640", "discord:guildId:channelId") but users provide raw IDs during setup. Without the prefix, the router can't match the registered messaging group to incoming messages and silently drops them. register.ts now auto-prefixes with the channel type if not already present. Co-Authored-By: Claude Opus 4.6 (1M context) --- docs/v2-checklist.md | 2 +- setup/register.ts | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/docs/v2-checklist.md b/docs/v2-checklist.md index bdadabe..3317d44 100644 --- a/docs/v2-checklist.md +++ b/docs/v2-checklist.md @@ -43,7 +43,7 @@ Status: [x] done, [~] partial, [ ] not started - [x] Chat SDK SQLite state adapter (KV, subscriptions, locks, lists) - [x] Discord via Chat SDK - [~] Slack via Chat SDK (adapter + skill written, not tested) -- [~] Telegram via Chat SDK (adapter + skill written, not tested) +- [x] Telegram via Chat SDK (E2E verified: inbound, routing, typing, delivery) - [~] Microsoft Teams via Chat SDK (adapter + skill written, not tested) - [~] Google Chat via Chat SDK (adapter + skill written, not tested) - [~] Linear via Chat SDK (adapter + skill written, not tested) diff --git a/setup/register.ts b/setup/register.ts index a15e469..dacd8d2 100644 --- a/setup/register.ts +++ b/setup/register.ts @@ -118,6 +118,13 @@ export async function run(args: string[]): Promise { process.exit(4); } + // Chat SDK adapters prefix platform IDs with the channel type (e.g. "telegram:123", + // "discord:guild:channel"). Auto-prefix if the user provided a raw ID so the router + // matches the adapter's format. + if (parsed.platformId && !parsed.platformId.startsWith(`${parsed.channel}:`)) { + parsed.platformId = `${parsed.channel}:${parsed.platformId}`; + } + log.info('Registering channel', parsed); // Init v2 central DB