Reply editor prefills the AI disclaimer instead of the draft answer
Maintainer thường phản hồi trong vòng 3 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
- 78/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
Hướng nghiên cứu
Bắt đầu trong packages/outpost/queue/src/handlers/ai-response.ts quanh dòng 158-172, sau đó kiểm tra apps/web/src/components/.../reply-editor.tsx để xác nhận suggestedResponse được sử dụng như thế nào. Xác minh rằng editor nhận pipelineResult.response chưa được định dạng, bổ sung coverage cho trường hợp bị suppress và đảm bảo các điều kiện chấp nhận được đáp ứng mà không thay đổi response đã được publish.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
The agent-facing reply editor prefills with the AI disclaimer instead of the draft answer.
Where
packages/outpost/queue/src/handlers/ai-response.ts:172
await prisma.ticket.update({
where: { id: ticket.id },
data: {
suggestedResponse: pipelineResult.formatted.text,
},
});
formatted.text is the published form of the reply: platform formatting, footer, and — for anything below HIGH confidence — a leading disclaimer block:
> ⚠️ This is an AI-generated response. We've escalated this to our engineering team — someone will follow up in this thread shortly.
apps/web/src/components/.../reply-editor.tsx:59 prefills the agent's reply box with that string verbatim. So a human picking up an escalation opens their editor and finds a draft that opens by declaring itself AI-generated and announcing an escalation — text that makes no sense coming from them, and that they have to delete before writing anything.
The raw draft is already persisted one call earlier as Message.content (ai-response.ts:158) and is available as pipelineResult.response. That's the right source for an editor.
Fix
- suggestedResponse: pipelineResult.formatted.text,
+ suggestedResponse: pipelineResult.response,
Worth checking whether any other consumer depends on suggestedResponse carrying the formatted text before flipping it — as of #143's review, reply-editor.tsx is its only reader and it's human-driven, so nothing auto-posts it.
Why it's filed separately
Raised by @jerelvelarde in review of #143 and deliberately not fixed there: the line is pre-existing, isn't in that PR's diff, and #143 only makes it reachable more often.
It gets worse, though, with the always-answers work that's in progress (retrieval fan-out across all four MCP corpora + the no-answer reply). Under that change, a suppressed ungrounded draft has its formatted.text replaced with the no-answer copy:
I couldn't find an answer to this in the CopilotKit or AG-UI documentation or source code, so I don't want to guess. I've escalated this to our team — someone will follow up in this thread.
So the human's editor prefills with the apology, and the actual draft they were meant to work from lives only in Message.content, which the editor never reads. The stated justification for suppressing rather than discarding a draft — "a human can edit and send it" — stops being true.
Should land with, or before, that PR.
Acceptance
-
suggestedResponseholds the unformatted draft (pipelineResult.response), disclaimer-free - Reply editor prefills text an agent can send without deleting a preamble
- A suppressed draft still reaches the editor as the draft, not as the no-answer copy
- Test covering the suppressed case, since that's the path where the two diverge
- Ngôn ngữ chính
- TypeScript
- Star
- 8
- Fork
- 4
- Merge trung bình
- 3 ngày 19 giờ
- Pull request đã merge (30 ngày)
- 10
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 3 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 3 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 3 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 75/100
CopilotKit/outpost#123 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 3 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 3 ngày
Tất cả issue của CopilotKit/outpost
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
microsoft/vscode-livepreview#876 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
needs-triage
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
JustJarethB/invoicer#54 ·
-
ICP 1.2.0 shows a scheduled task's interval in milliseconds under the label "Interval (In seconds)"Đang mởNeeds Triage Type/Bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
wso2/product-integrator#2585 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Add: Telemundo West sdĐang mởcheck:passed streams:add
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
design
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
MTES-MCT/monitor-field#119 ·
Maintainer thường phản hồi trong vòng 1 ngày