Pathfinder: parseJsonRpc joins multiple SSE data: lines with empty string
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 75/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- typescript
- Lĩnh vực
- backend
Hướng nghiên cứu
Bắt đầu tại packages/outpost/ai/src/pathfinder.ts ở parseJsonRpc và xem lại cách các dòng dữ liệu SSE cũng như ranh giới sự kiện hiện đang được xử lý. Bổ sung coverage cho một body có nhiều sự kiện hoặc nhiều dòng dữ liệu, đảm bảo các payload của sự kiện được tách đúng cách và các dòng dữ liệu trong cùng một sự kiện được nối bằng ký tự xuống dòng; hoàn thành khi response JSON-RPC được parse mà không xảy ra phép nối không hợp lệ.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Spun out of the #112 review (non-blocking, edge case).
parseJsonRpc concatenates all data: payloads with ''. Per the SSE spec, data lines within one event join with \n, and separate events are distinct messages. So a reply chunked across multiple data: lines, or one carrying a notification plus the response, would concatenate into invalid JSON and throw. Harmless for the real server's current single-line, single-event tools/call reply (and it's live-tested), but brittle if the server ever streams/chunks.
Fix direction: parse per-event (split on blank lines), take the last data: event's payload, or join a single event's data lines with \n. Add a test with a multi-event / multi-data: body.
File: packages/outpost/ai/src/pathfinder.ts (parseJsonRpc).
- Ngôn ngữ chính
- TypeScript
- Star
- 15
- Fork
- 6
- Merge trung bình
- 1 ngày 9 giờ
- Pull request đã merge (30 ngày)
- 12
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Không có hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của CopilotKit/outpost
-
area: docs area: security roadmap: now
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
CopilotKit/outpost#277 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area: infrastructure roadmap roadmap: later
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 74/100
CopilotKit/outpost#179 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area: ai roadmap roadmap: now
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
CopilotKit/outpost#145 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area: integrations priority: low roadmap roadmap: later
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
CopilotKit/outpost#124 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area: infrastructure bug priority: low roadmap roadmap: later
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
CopilotKit/outpost#120 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của CopilotKit/outpost
Issue tương tự
-
Add: Class TV ModaĐang mởcheck:passed streams:add
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 65/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
GiganticMinecraft/seichi-playguide#183 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area: core complexity: easy impact: medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
ueberdosis/tiptap#8668 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
longbridge/nsh#804 ·
Maintainer thường phản hồi trong vòng 1 ngày