What's New: Tests
| Mã | Kiểm cái gì | Cách kiểm | Trạng thái |
|---|---|---|---|
| COMM-WN-01 | Khách chỉ thấy mục public | Đọc mã audienceFilter trong whatsNew.ts; kiểm tay: curl https://api.conan.school/api/public/whats-new không cookie, mọi mục audience = public | Chưa có gác tự động (không có test tích hợp cho route này) |
| COMM-WN-01 | Bản /en rơi về tiếng Việt khi thiếu dịch | Kiểm tay /en/whats-new | Chưa có |
| COMM-WN-02 | Thành viên thấy member, phản hồi private, no-store | Kiểm tay ở tokyo đã đăng nhập, đọc header phản hồi | Chưa có |
| COMM-WN-03 | Chấm chưa đọc bật, tắt, và không bật khi lỗi mạng | Kiểm tay ở tokyo | Chưa có |
| COMM-WN-04 | TODO bị từ chối | whats_new_to_sql.py --check, chạy trong npm run check:whats-new (job guards của ci-checks.yml) | Có gác |
| COMM-WN-05 | Thiếu audience là đỏ | Như trên | Có gác |
| COMM-WN-06 | JSON khớp migration | scripts/check-whats-new.mjs biên dịch lại từng tuần và đòi mọi câu SQL có mặt trong một migration; không có tuần nào thì đỏ | Có gác |
| COMM-WN-06 | retired sinh DELETE | Đọc mã bộ biên dịch | Chưa có test riêng |
| COMM-WN-07 | url https tuyệt đối | --check | Có gác |
| COMM-WN-08 | Không gạch dài | --check và npm run check:emdash | Có gác |
Khoảng trống
- Ranh giới audience (COMM-WN-01, 02) là ranh giới bảo mật mà không có gác nào. Một sửa đổi làm
audienceFilterluôn trả điều kiện của thành viên sẽ lộ tin nội bộ cho khách, CI vẫn xanh. Ứng viên đầu tiên cho một test tích hợp. - Hành vi chấm chưa đọc chỉ kiểm tay.