fix: create SSE event queue on-demand so transcript/chat events are never silently dropped
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
a3c92ae8d5
commit
a27307263f
1 changed files with 5 additions and 4 deletions
|
|
@ -55,10 +55,11 @@ _sessionEvents: Dict[str, asyncio.Queue] = {}
|
||||||
|
|
||||||
|
|
||||||
async def _emitSessionEvent(sessionId: str, eventType: str, data: Any):
|
async def _emitSessionEvent(sessionId: str, eventType: str, data: Any):
|
||||||
"""Emit an event to the session's SSE stream."""
|
"""Emit an event to the session's SSE stream.
|
||||||
eventQueue = _sessionEvents.get(sessionId)
|
Creates the queue on-demand so events are never silently dropped."""
|
||||||
if eventQueue:
|
if sessionId not in _sessionEvents:
|
||||||
await eventQueue.put({"type": eventType, "data": data, "timestamp": getIsoTimestamp()})
|
_sessionEvents[sessionId] = asyncio.Queue()
|
||||||
|
await _sessionEvents[sessionId].put({"type": eventType, "data": data, "timestamp": getIsoTimestamp()})
|
||||||
|
|
||||||
|
|
||||||
class TeamsbotService:
|
class TeamsbotService:
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue