fix: use fresh beaver message id after reconnect

This commit is contained in:
0Xiao0
2026-06-02 10:33:03 +08:00
parent 879c73bfee
commit af261d3b63
2 changed files with 8 additions and 4 deletions

View File

@ -88,13 +88,13 @@ class BeaverTerminalClient:
self.session_id = session_id if isinstance(session_id, str) else None
async def send_text(self, text: str) -> str:
message_id = self._message_ids.next_id()
message_frame = build_message_frame(message_id=message_id, text=text)
for attempt in range(2):
if not self._websocket_is_open():
await self.connect()
message_id = self._message_ids.next_id()
message_frame = build_message_frame(message_id=message_id, text=text)
try:
await self._send_json(message_frame)
return await self._wait_for_reply(message_id)