bug: agent stops responding after multiple concurrent tabs

Đang mở
#63 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
35/100
Loại issue
Lỗi
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Ít trao đổi
Công nghệ
python, typescript
Lĩnh vực
api, backend, frontend

Hướng nghiên cứu

Start with the deployed reproduction using three browser tabs, then inspect main.py, especially BoundedMemorySaver(max_threads=200) and the streaming request path. Check whether concurrent sessions, connection limits, rate limits, or unsurfaced backend errors explain the hang; done means independent tabs receive responses, and resource failures show an error instead of waiting silently.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Bug

The agent stops responding when multiple browser tabs are open against the deployed app. On the third tab, the agent hangs after the user sends a message — no response, no streaming indicator, no error.

Steps to reproduce

  1. Open the deployed app in tab 1, send a message (e.g. "visualize a musical chart") — works fine
  2. Open tab 2, send a message — works fine
  3. Open tab 3, send a message (e.g. "I want to understand the difference between BFS and DFS...") — agent never responds

The UI shows the user messages and suggestion chips ("Try these Prompts") but no assistant response arrives. No loading indicator, no error state.

Screenshot

![Production screenshot showing 3 messages sent with no agent response](screenshot attached in issue)

The chat shows:

  • "visualize a musical chart"
  • "Create a 3D animation of a sphere turning into an icosahedron..."
  • "I want to understand the difference between BFS and DFS. Create an interactive comparison on a node graph."

None received a response. Suggestion chips are visible but the agent is unresponsive.

Possible causes

  1. Thread/session exhaustion — The agent uses BoundedMemorySaver(max_threads=200) in main.py. Multiple tabs may be creating separate threads that exhaust the pool or hit a concurrency limit.
  2. WebSocket/SSE connection limit — The browser or server may be hitting a connection limit for streaming responses.
  3. LangGraph checkpoint contention — Multiple concurrent sessions writing to the in-memory checkpointer could cause deadlocks.
  4. OpenAI API rate limiting — Multiple concurrent requests to GPT-5.4 could hit rate limits with no visible error surfaced to the user.
  5. Missing error handling — The frontend may not surface backend errors, making it look like the agent is "thinking" forever.

Expected behavior

Each tab should operate as an independent session. If a resource limit is reached, the user should see an error message rather than silent failure.

Environment

  • Deployed on Render
  • Agent: LangGraph + CopilotKit middleware
  • Model: GPT-5.4 via langchain_openai
  • Checkpointer: BoundedMemorySaver(max_threads=200)
Ngôn ngữ chính
TypeScript
Star
1.6k
Fork
202
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của CopilotKit/OpenGenerativeUI

Tất cả issue của CopilotKit/OpenGenerativeUI

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.