Test the live updates stream (/api/events)
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
- 86/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- node.js, typescript
Hướng nghiên cứu
Đọc apps/api/src/routes.ts để tìm broadcast() và route /api/events, sau đó kiểm tra lớp Client và các mẫu kiểm thử API hiện có trong tests/api.test.mjs. Bổ sung kiểm thử cho truy cập chưa xác thực, cập nhật incident và lưu playbook. Đọc từng luồng bằng reader rồi hủy để npm test kết thúc. Công việc hoàn tất khi các loại sự kiện mong đợi và incident id được xác nhận, đồng thời npm test chạy thành công.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
The task
When someone changes a playbook or an incident, everyone sees it live: the browser keeps GET /api/events open, a Server-Sent Events stream, and the server pushes an event on every change. Nothing tests this stream. Add a test, so that a change to the server cannot silently stop live updates.
Where to look
apps/api/src/routes.ts:broadcast()near the top writesevent: changewith{ type, id }as data; the/api/eventsroute needs a signed-in user (roleviewer)tests/api.test.mjs: theClientclass keeps the session cookie.fetchcan read a stream: readres.bodywith a reader and split the text on blank lines (\n\n), each block is one event
Cancel the reader at the end of the test, or the test run will not exit.
Done when
- Opening
/api/eventswithout a session gets401 - With a session, after an analyst changes an incident (for example its name,
POST /api/incidents/:id/meta), anevent: changearrives withtypeincidentand the incident'sid - After an editor saves a playbook draft, an event arrives with
typeplaybook -
npm testpasses, and exits on its own
Mentor
@0b3l1X-SolidGeeks
- Ngôn ngữ chính
- TypeScript
- Star
- 0
- Fork
- 1
- Merge trung bình
- 1 giờ 11 phút
- Pull request đã merge (30 ngày)
- 13
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Đọ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 tương tự
-
bug needs-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
apex-dev-tools/apex-log-parser#199 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area/frontend/library-panels automated-triage type/bug type/ux
Độ khó 1/5 Dưới một 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
PostHog/posthog.com#21607 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 73/100
ajv-validator/ajv#2689 ·
-
[Bug]: IME confirmation Enter can submit the SSH port-forward dialogCó thể đã có người làm @seijikohara đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
Maintainer thường phản hồi trong vòng 1 ngày