Chuyển đến nội dung chính
Tìm triệu chứng của bạn bên dưới, rồi làm theo bước kiểm tra và cách khắc phục. Hầu hết sự cố đến từ bốn nơi: chính pull request (PR) hoặc merge request (MR), cài đặt của repository trong CloudThinker, webhook, hoặc thông tin xác thực của Git provider.

Bắt đầu: PR đang hiển thị gì?

Và trong CloudThinker:

Không có bình luận trên PR mới

CloudThinker đăng một bình luận tiến độ ngay khi PR được mở, rồi thay bằng bản tóm tắt. Nếu không có gì xuất hiện, thì hoặc CloudThinker chưa hề nhận được thông tin về PR, hoặc đã chủ động im lặng.
1

Kiểm tra PR không phải bản nháp

PR và MR ở dạng nháp không được review. Đánh dấu PR sẵn sàng để review và CloudThinker sẽ xử lý. (AWS CodeCommit không có bản nháp, nên điều này không áp dụng ở đó.)
2

Kiểm tra repository đã được chọn

Mở Review → Settings → Repositories và tìm repository. Công tắc Review phải bật. Nếu repository không có trong danh sách, hãy thêm vào. Nếu repository hiển thị Cloning, lần clone đầu tiên vẫn đang chạy.
3

Kiểm tra webhook (GitLab, Azure DevOps, AWS CodeCommit)

GitHub và Bitbucket tự đăng ký webhook cho bạn. Ba provider còn lại cần webhook do bạn thêm thủ công, và webhook bị thiếu hoặc sai là nguyên nhân phổ biến nhất khiến không có phản hồi.Mở lịch sử gửi của webhook trong provider:Lịch sử cho bạn biết:
  • Không có lần gửi nào: webhook bị thiếu hoặc thiếu trigger. Thêm lại với URL, secret token và trigger từ Cấu hình webhook.
  • Thất bại với 403 “Repository is not enabled for Review”: bật công tắc Review của repository trong Review → Settings → Repositories.
  • Các lỗi 4xx khác: URL hoặc secret token không khớp. Sao chép lại cả hai từ trình hướng dẫn thiết lập và cập nhật webhook.
  • Lỗi 5xx: CloudThinker không thể xử lý sự kiện. Gửi lại từ lịch sử gửi. Nếu vẫn tiếp tục thất bại, hãy liên hệ bộ phận hỗ trợ (xem Vẫn chưa giải quyết được).
  • Gửi thành công nhưng vẫn không có gì: chuyển sang bước tiếp theo.
4

Khởi chạy review thủ công

Bình luận trên PR:
Trên AWS CodeCommit không có lệnh bình luận review, nên hãy push một commit mới lên source branch của PR.Trạng thái thành công: một bình luận tiến độ của CloudThinker xuất hiện trên PR. Nếu không, hãy kiểm tra Lỗi xác thực provider.

Review bị bỏ qua

Khi quyết định không review một PR, CloudThinker cho biết điều đó trong bình luận CloudThinker Code Review Skipped. Dòng thứ hai cho bạn biết lý do.
Marker bỏ qua @cloudthinker:ignore phân biệt hoa thường và hoạt động ở bất kỳ đâu trong mô tả. Dùng marker này cho các PR đơn lẻ. Với cả nhóm, chẳng hạn mọi PR từ dependabot[bot] hoặc mọi PR vào release/*, hãy dùng bộ lọc. Xem bỏ qua review.
PR bị bỏ qua vẫn hiển thị trong Review → Reviews với kết luận Ignored, nên bạn có thể xác nhận điều đã xảy ra mà không cần mở provider.

Review dừng hoặc thất bại

Các phát hiện đã đăng trước khi dừng vẫn có hiệu lực. Bạn chỉ mất bản tóm tắt. Trên AWS CodeCommit, lệnh bình luận review không được hỗ trợ, nên hãy push một commit mới lên source branch của PR, hoặc chạy lại từ Review → Reviews. Xem hỗ trợ theo provider. Bạn cũng có thể khởi động lại từ CloudThinker: mở PR trong Review → Reviews, rồi nhấn Re-run review trong menu ⋯. Khi lượt chạy vẫn đang diễn ra, menu đó hiển thị Stop review ở vị trí này, nên hãy chờ lượt chạy kết thúc hoặc dừng nó trước.

Review lại một PR

Push commit mới lên một PR đang mở sẽ tự khởi chạy review tăng dần: chỉ các thay đổi mới được đọc. Để review lại mà không cần push, hãy bình luận:
@cloudthinker-ai review again, @cloudthinker-ai continue và @cloudthinker-ai continue review cũng có tác dụng tương tự. Tất cả đều tiếp tục từ commit được review gần nhất. Không có lệnh nào để review toàn bộ từ commit đầu tiên. Để review sâu hơn commit mới nhất, bình luận @cloudthinker-ai review ultra (xem Ultra review). Nếu Ultra đang tắt cho bản cài đặt của bạn, bot trả lời Ultra review is turned off for this installation. Trên AWS CodeCommit, lệnh đó không được hỗ trợ: hãy push một commit mới lên source branch của PR để review lại.
Lệnh phải là toàn bộ bình luận. @cloudthinker-ai review this file carefully được hiểu là một câu hỏi, không phải yêu cầu review lại, nên bạn nhận được câu trả lời thay vì một review mới.

Lệnh mention không được phản hồi

Lỗi xác thực provider

Khi Git provider từ chối thông tin xác thực của CloudThinker, header của trang Review hiển thị Reconnect your Git provider, kèm cảnh báo Authentication Error. Review dừng cho đến khi bạn khắc phục. Repository và cài đặt của bạn vẫn được giữ lại. GitHub không có token để cập nhật, vì GitHub dùng CloudThinker GitHub App. Nếu review trên GitHub dừng, app đã bị gỡ cài đặt hoặc mất quyền truy cập repository: cài đặt lại, hoặc thêm repository trong cài đặt của app trên GitHub. Việc cài đặt app trên một GitHub organization do owner của organization đó thực hiện trên GitHub, chứ không phải do vai trò nào trong CloudThinker. Trạng thái thành công: trang Review tải bình thường. Bình luận @cloudthinker-ai review trên mọi PR được mở khi kết nối bị gián đoạn. Trên AWS CodeCommit, hãy push một commit mới lên source branch của PR đó. Scope token cho từng provider có trong Xác thực provider. Các lý do thường gặp khiến token mới thất bại:
  • GitLab: vai trò của token thấp hơn Developer, hoặc thiếu scope api. Guest và Reporter không thể bình luận trên MR.
  • Azure DevOps: personal access token (PAT) đã hết hạn. PAT hết hạn vào ngày đặt khi tạo, nên hãy ghi lại và thay token trước ngày đó.

Sự cố repository

Trong Review → Settings → Repositories, dòng bên dưới tên repository có thể hiển thị: Khi không trường hợp nào áp dụng, dòng đó hiển thị branch mặc định. Công tắc Review trên cùng hàng bật hoặc tắt review, và cột Learnings có thể hiển thị Paused while Review is off (xem Learnings).

Phát hiện sai hoặc gây nhiễu

Các tính năng Review khác

Vẫn chưa giải quyết được

Thu thập tên workspace, repository, liên kết PR, provider, thời điểm bạn mở PR và nội dung của mọi bình luận CloudThinker. Sau đó gửi email đến support@cloudthinker.io. Trang khắc phục sự cố chung đề cập các sự cố ngoài Review.

Bước tiếp theo

Lệnh mention

Mọi lệnh mà bot review hiểu, và nơi mỗi provider hỗ trợ lệnh đó.

Xác thực provider

Scope token và các bước webhook cho từng Git provider.