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

Announce each reply once instead of every streamed chunk

Đã đóng
#338 2 bình luận 0 reaction 1 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@kachamsiddarth đang làm issue này rồi.

Từ ngày 26/10/2026.

  • #410 của @kachamsiddarth — đã merge

Đánh giá

Issue này chưa được đánh giá.

Mô tả

accessibility enhancement hacktoberfest widget

The message list is role="log" with aria-live="polite", and a reply's text is rebuilt on every streamed chunk. Some screen readers read those partial updates one by one, which is noisy, and others skip them.

What to do

  • While a reply streams, set the log to aria-live="off".
  • Add a visually hidden aria-live="polite" region (there's a cc-sr-only class already). When a reply finishes, put its final text there once, then set the log back to polite.
  • Error and cut off replies should be announced too, with their error text.
  • Messages the visitor sends don't need an announcement.

Where to look

  • packages/widget/src/dom/messages.ts (the constructor sets role and aria-live; updateMessage sets aria-busy while streaming)
  • packages/widget/src/widget.ts (handleSend: where streaming starts and ends)
  • packages/widget/tests/dom/messages.test.ts

Acceptance criteria

  • The log is aria-live="off" while a reply streams and polite otherwise
  • The hidden region gets the full reply text once, when it finishes
  • Failed replies announce their error message
  • Unit tests for each
  • A short note in the PR on what you checked with a screen reader, if you have one (not required)
  • Changeset for @chatcops/widget (patch)
  • pnpm test:coverage, pnpm lint and pnpm size pass

The chat panel (dist/chatcops.panel.js) has a 14 kB gzip budget and about 800 B of it is left, shared by several open issues. Keep the change small, and check pnpm size before you open the PR.

Ngôn ngữ chính
TypeScript
Star
13
Fork
7
Merge trung bình
3 giờ 39 phút
Pull request đã merge (30 ngày)
275

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 codercops/chatcops

Tất cả issue của codercops/chatcops

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.