From 715d54564f266006b840cc48bc5e9c514b5d437f Mon Sep 17 00:00:00 2001 From: "Abiba (pi)" Date: Sat, 27 Jun 2026 05:33:46 +0000 Subject: [PATCH] fix(zulip): pass Platform enum instead of string to BasePlatformAdapter.__init__ Root cause of 'str' object has no attribute 'value' error during connect(): the adapter passed a raw string 'zulip' to the base class's platform parameter, which expects a Platform enum instance. When self.name was accessed (calling self.platform.value.title()), the string had no .value attribute. Fix: import Platform from gateway.config and wrap with Platform('zulip'). --- plugins/platforms/zulip/adapter.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/platforms/zulip/adapter.py b/plugins/platforms/zulip/adapter.py index 9e93e8a..51ebd60 100644 --- a/plugins/platforms/zulip/adapter.py +++ b/plugins/platforms/zulip/adapter.py @@ -43,7 +43,7 @@ except ImportError: HTTPX_AVAILABLE = False httpx = None -from gateway.config import PlatformConfig +from gateway.config import Platform, PlatformConfig from gateway.platforms.base import ( BasePlatformAdapter, MessageEvent, @@ -118,8 +118,8 @@ class ZulipAdapter(BasePlatformAdapter): """ def __init__(self, config: PlatformConfig): - platform_name = "zulip" - super().__init__(config=config, platform=platform_name) + platform = Platform("zulip") + super().__init__(config=config, platform=platform) extra = config.extra or {}