From 3690a7f5685e0849415b0b9141166260578b15ef Mon Sep 17 00:00:00 2001 From: "Abiba (pi)" Date: Sat, 27 Jun 2026 14:20:14 +0000 Subject: [PATCH] fix(zulip): use PATCH /api/v1/messages/{id} for message editing Zulip API edits messages via PATCH /api/v1/messages/{message_id} (POST returns 405 on this endpoint). Also: - edit_message() now returns SendResult (not bool) for Gateway compatibility - Clean up duplicate gateway instances before restart --- plugins/platforms/zulip/adapter.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/plugins/platforms/zulip/adapter.py b/plugins/platforms/zulip/adapter.py index 3878a7d..cad843e 100644 --- a/plugins/platforms/zulip/adapter.py +++ b/plugins/platforms/zulip/adapter.py @@ -910,10 +910,11 @@ class ZulipAdapter(BasePlatformAdapter): # Send actual content result = await self._send_api_call(payload) if result and result.get("id"): + msg_id = str(result["id"]) self._health_stats["send_count"] += 1 return SendResult( success=True, - message_id=str(result["id"]), + message_id=msg_id, ) self._health_stats["send_errors"] += 1 @@ -942,8 +943,9 @@ class ZulipAdapter(BasePlatformAdapter): "content": truncated, } try: + # Zulip API: PATCH /api/v1/messages/{message_id} with content in body resp, status = await self._api_call( - "POST", f"/api/v1/messages/{int(message_id)}", + "PATCH", f"/api/v1/messages/{int(message_id)}", data=payload, ) if resp: