Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion plugins/platforms/discord/adapter.py
Original file line number Diff line number Diff line change
Expand Up @@ -3845,7 +3845,9 @@ async def _typing_loop() -> None:
"POST", "/channels/{channel_id}/typing",
channel_id=chat_id,
)
await self._client.http.request(route)
await asyncio.wait_for(
self._client.http.request(route), timeout=10
)
except asyncio.CancelledError:
return
except Exception as e:
Expand Down
8 changes: 7 additions & 1 deletion tui_gateway/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -8648,7 +8648,13 @@ def _session_owns_notification_event(sid: str, session: dict, evt: dict) -> bool
return True
evt_key = str(evt.get("session_key") or "")
if not evt_key:
return False
# Fall back to parent_session_id for CLI/Desktop sessions where the
# session_key ContextVar may not be bound at dispatch time — the
# parent_session_id (the agent's durable state.db session_id) is
# always captured and links back to this session's lookup key.
evt_key = str(evt.get("parent_session_id") or "")
if not evt_key:
return False
current_keys = {
str(session.get("session_key") or ""),
_session_lookup_key(session, fallback=sid),
Expand Down
Loading