From d01ef3e4ed2266e3787c512eaec5f6c4832b612b Mon Sep 17 00:00:00 2001 From: Andrey Nering Date: Tue, 26 Aug 2025 17:19:20 -0300 Subject: [PATCH] fix: fix goroutine panic due to waiting for channel for too long We need to give up if the context was canceled. Fixes #100 --- internal/llm/agent/agent.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/internal/llm/agent/agent.go b/internal/llm/agent/agent.go index bffb0592966b566b9129fd77637969ea96dda244..0015e498f986c67dd4477a6fb35e8846c8442b9e 100644 --- a/internal/llm/agent/agent.go +++ b/internal/llm/agent/agent.go @@ -374,7 +374,10 @@ func (a *agent) Run(ctx context.Context, sessionID string, content string, attac a.activeRequests.Del(sessionID) cancel() a.Publish(pubsub.CreatedEvent, result) - events <- result + select { + case events <- result: + case <-genCtx.Done(): + } close(events) }() return events, nil