根因:sdk.Channel.Connect 为 2 参 (ctx, config any),adapter.PlatformAdapter.Connect 为 1 参 (ctx),Go 无重载 → 4 个渠道(qq-obv11/weixin-ilink/telegram/webhook)只实现 1 参 Connect,类型断言 cap.Value.(sdk.Channel) 恒失败 → /api/v1/admin/channels 恒返回 []。 收敛方向:sdk.Channel.Connect 改 1 参 (ctx),与 PlatformAdapter 生命周期子集一致; 4 个真实适配器自动满足新接口,adminListChannels 枚举成功。最小改动(不改渠道实现、 不引依赖)。同步修正 sdk_test/registry_test/extra_test 的 mock。
后端 go:embed 自服务前端时,页面 origin 与网关 Host 一致(production 模式), 但不在 dev 阶段 ALLOWED_ORIGINS(5173/3000)白名单内,originChecker 记 403 导致 WS /ws/chat 握手失败。 改为:同源(origin host == request host)及 loopback 别名(localhost<->127.0.0.1) 自动放行;跨源(不同主机名)仍走白名单。安全不降级:跨源非白名单依旧拒绝。 新增 TestOriginCheckerSameHost 覆盖同源/loopback等效/跨源拒绝/同主机异端口。