Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Slack thread replies invisible when polling (self-hosted/local dev only)

Đang mở Phù hợp với người mới
#17 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

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
85/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 lib/slack/poller.ts, nơi triển khai logic polling Slack. Trước tiên, xem lại cách conversations.history hiện được gọi và cách hàm getTicketByThreadId hiện có xử lý các tin nhắn đến từ đường dẫn webhook của Events API. Sửa poller để theo dõi các thread đang hoạt động từ những tin nhắn có reply_count > 0, polling conversations.replies cho từng thread đang hoạt động và chuyển các câu trả lời mới trong thread qua logic getTicketByThreadId hiện có để thêm chúng vào ticket phù hợp. Chạy bộ kiểm thử poller Slack của dự án để xác nhận rằng các câu trả lời trong thread hiện được lấy chính xác trong quá trình polling.

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

Mô tả

bug

What's broken

When AnswerLoops polls Slack (self-hosted deployments without a public URL, orgs on the slack_force_polling override, or anyone running the app locally against a real Slack workspace), a reply posted inside an existing ticket's thread never shows up on the ticket.

Root cause

The poller only calls Slack's conversations.history endpoint. That endpoint only returns top-level channel messages and thread replies explicitly broadcast to the channel (the "Also send to #channel" checkbox when replying in a thread) — by Slack API design, it never returns a plain in-thread reply.

This does not affect the managed cloud service. Production listens via Slack's Events API webhook, which sends a message event for every reply regardless of broadcast status — thread replies already work correctly there. This is specifically a gap in the polling fallback path.

Fix direction

Track thread parents (messages with reply_count > 0 returned by conversations.history) and additionally poll conversations.replies for each active thread, feeding new replies through the same append-to-existing-ticket logic (getTicketByThreadId) the webhook path already uses.

Where

lib/slack/poller.ts

Ngôn ngữ chính
TypeScript
Star
16
Fork
2
Merge trung bình
7 giờ 22 phút
Pull request đã merge (30 ngày)
150

Chuẩn bị môi trường

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 answerLoops/answerLoops

Tất cả issue của answerLoops/answerLoops

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.