From e762ddf8232a9ca2419f4c3c4b0417026b8d4d59 Mon Sep 17 00:00:00 2001 From: Kujtim Hoxha Date: Mon, 29 Sep 2025 17:21:27 +0200 Subject: [PATCH] fix(agent): remove timout for now (#1158) --- internal/llm/agent/agent.go | 12 ------------ internal/llm/agent/errors.go | 1 - 2 files changed, 13 deletions(-) diff --git a/internal/llm/agent/agent.go b/internal/llm/agent/agent.go index 2a3f45a2c56c74c80d32abead5038f9697dbf319..9bae6e5b8092b987b1c8146460cef946e595beb5 100644 --- a/internal/llm/agent/agent.go +++ b/internal/llm/agent/agent.go @@ -26,8 +26,6 @@ import ( "github.com/charmbracelet/crush/internal/shell" ) -const streamChunkTimeout = 2 * time.Minute - type AgentEventType string const ( @@ -554,10 +552,6 @@ func (a *agent) streamAndHandleEvents(ctx context.Context, sessionID string, msg // Add the session and message ID into the context if needed by tools. ctx = context.WithValue(ctx, tools.MessageIDContextKey, assistantMsg.ID) - // Process each event in the stream. - timer := time.NewTimer(streamChunkTimeout) - defer timer.Stop() - loop: for { select { @@ -565,9 +559,6 @@ loop: if !ok { break loop } - // Reset the timeout timer since we received a chunk - timer.Reset(streamChunkTimeout) - if processErr := a.processEvent(ctx, sessionID, &assistantMsg, event); processErr != nil { if errors.Is(processErr, context.Canceled) { a.finishMessage(context.Background(), &assistantMsg, message.FinishReasonCanceled, "Request cancelled", "") @@ -576,9 +567,6 @@ loop: } return assistantMsg, nil, processErr } - case <-timer.C: - a.finishMessage(ctx, &assistantMsg, message.FinishReasonError, "Stream timeout", "No chunk received within timeout") - return assistantMsg, nil, ErrStreamTimeout case <-ctx.Done(): a.finishMessage(context.Background(), &assistantMsg, message.FinishReasonCanceled, "Request cancelled", "") return assistantMsg, nil, ctx.Err() diff --git a/internal/llm/agent/errors.go b/internal/llm/agent/errors.go index 943918390c6708b5ae6ea5e40e50ebce209cc263..0e2f983d64b42b93ad3a51f32ce0335b0374a613 100644 --- a/internal/llm/agent/errors.go +++ b/internal/llm/agent/errors.go @@ -7,7 +7,6 @@ import ( var ( ErrRequestCancelled = errors.New("request canceled by user") - ErrStreamTimeout = errors.New("stream chunk timeout") ErrSessionBusy = errors.New("session is currently processing another request") )