Nhân vật bông mỉm cười từ logo Cotton gốc, đã bỏ nền và chữ
Trở lại phòng trưng bày

Cotton

Translation workflow

Biến bản dịch được sinh ra thành kết quả có thể rà soát.

Một quy trình dịch cho lời thoại game.

2026.05.06 — 2026.05.26

Dự án công việc · đường xử lý, phán định và rà soát bản dịch

  • Ứng dụng webĐã hiện thực · phát triển

Một race do rà soát tìm ra, các công việc bị kẹt được trả về theo nguyên nhân

Một trường hợp mà chính sách và commit ghi tên Claude cho phần hiện thực và Codex cho rà soát, và một trường hợp giúp chẩn đoán được các công việc bị kẹt.

Chú giải đầy đủ

Cách đọc · một quy ước cho mọi trường hợp

  • Cột là ai đã hành động; từ trên xuống là thời gian
  • Nét liền: một bàn giao hoặc bước tiếp theo được ghi lại
  • Nét lam đậm ↩: một phát hiện đã trả công việc về
  • Nét đứt: không phải một lần thực thi được ghi lại (quy tắc thành văn, lời khuyên không có thẩm quyền, ranh giới chưa kiểm chứng)
  • Hình chữ nhật: một hành động
  • Góc bo tròn: một trạng thái hoặc phát hiện quan sát được
  • Góc gấp: một artifact hoặc bằng chứng
  • Cột gạch chéo: các phần của sản phẩm đang phát triển (không phải các tác nhân dùng để xây dựng nó)

Trường hợp 1 / 2 · Một thay đổi dừng khi cạn quota được sửa trong cùng PR, kể cả race mà rà soát tìm ra

May 19, 2026

Một thay đổi dừng khi cạn quota được sửa trong cùng PR, kể cả race mà rà soát tìm ra

  1. Con ngườiCon người

    Hành độngNgừng chi tiêu khi cạn quota · không fallback tự động

    • bàn giaoRàng buộc hiện thực→ Hiện thực checkpoint · halt · tiếp tục thủ công (Claude)
  2. Tác nhân lập trìnhClaude

    Hành độngHiện thực checkpoint · halt · tiếp tục thủ công

    • bàn giaoRà soát trong cùng PR→ Phát hiện: race · chuyển trạng thái trùng lặp (Codex)
  3. Rà soát · kiểm chứngCodex

    Quan sát · phát hiệnPhát hiện: race · chuyển trạng thái trùng lặp

  4. ArtifactCùng PR

    ArtifactTrong cùng PR: row lock · khóa điểm duy nhất · chuyển trạng thái nguyên tử

    • bàn giao→ Fixture cục bộ · bản ghi kiểm tra tích hợp DB (Cùng PR)
  5. ArtifactCùng PR

    ArtifactFixture cục bộ · bản ghi kiểm tra tích hợp DB

    • không phải lần thực thi được ghi lạiPhạm vi đã kiểm tra→ Không thu thập kết quả CI hay triển khai production mới (Cùng PR)
  6. ArtifactCùng PR

    Quy tắc · chưa kiểm chứngKhông thu thập kết quả CI hay triển khai production mới

Bối cảnh
Điều kiện do một người đặt ra là ngừng chi tiêu khi hết quota, không có fallback tự động. Claude hiện thực checkpoint, halt và tiếp tục thủ công, và một đợt rà soát Codex chạy qua MCP của dự án phát hiện race và trùng lặp trong các lần chuyển trạng thái.
Kết quả
Các lần chuyển trạng thái khi vào và khi tiếp tục chạy trong một khóa, điểm của bộ phán định mang khóa duy nhất để chống trùng lặp, và ranh giới giao dịch đã được đặt. Điều này không có nghĩa mọi race đã bị loại bỏ.
Giới hạn
Commit ghi 140 kiểm tra và CHANGELOG tích hợp sau đó ghi 160, nên chúng không được gộp thành một con số lượt chạy. Theo chính sách, rà soát Codex là một bước cục bộ tùy chọn, nên điều này không có nghĩa mọi PR trước đây đều qua nó.
Nguồn và các giới hạn còn lại
  • Chính sách ghi lại trình tự: Claude hiện thực, Codex rà soát cục bộ qua MCP của dự án, bản rà soát được đính kèm vào PR, và các bất đồng được điều tra cùng tác nhân rà soát của Claude. Rà soát Codex tự động trong CI đã bị hoãn lại.
  • Các kiểm tra phát triển dùng fixture và mock, và lệnh gọi mô hình thật cần phạm vi riêng. Phát hiện từ rà soát được gộp vào cùng PR và squash-merge feature → main.

May 26, 2026

Các công việc bị kẹt được làm cho chẩn đoán được và trả về theo nguyên nhân

  1. Đang phát triểnWorker dịch · hàng đợi

    Quan sát · phát hiệnCông việc còn ở draft · đã hết lượt thử

    • bàn giaoGiá trị quan sát→ Đối chiếu failedReason · mã thoát · trạng thái draft (Nhà phát triển)
  2. Con ngườiNhà phát triển

    Hành độngĐối chiếu failedReason · mã thoát · trạng thái draft

    • bàn giao→ Nguyên nhân: NODE_OPTIONS kế thừa xung đột trong tiến trình con (Nhà phát triển)
  3. Con ngườiNhà phát triển

    Quan sát · phát hiệnNguyên nhân: NODE_OPTIONS kế thừa xung đột trong tiến trình con

  4. Phiên làm việcThay đổi mã

    Hành độngBỏ NODE_OPTIONS · giới hạn đồng thời theo tiến trình

    • bàn giao→ Trạng thái hàng đợi: waiting · active · failed · stale (Thay đổi mã)
  5. Phiên làm việcThay đổi mã

    Hành độngTrạng thái hàng đợi: waiting · active · failed · stale

    • bàn giao→ Quét kẹt: vắng khỏi hàng đợi so với đã hết lượt thử, rẽ nhánh theo việc có kết quả hay không (Thay đổi mã)
  6. Phiên làm việcThay đổi mã

    Hành độngQuét kẹt: vắng khỏi hàng đợi so với đã hết lượt thử, rẽ nhánh theo việc có kết quả hay không

    • bàn giaoMột chu kỳ→ Quét ở dev: 200 ứng viên → 106 được chuyển · 2 đưa lại hàng đợi · 0 lỗi (Sản phẩm đầu ra)
  7. ArtifactSản phẩm đầu ra

    ArtifactQuét ở dev: 200 ứng viên → 106 được chuyển · 2 đưa lại hàng đợi · 0 lỗi

    • không phải lần thực thi được ghi lạiGiới hạn của việc diễn giải→ 106 công việc không phải bản dịch thành công (Sản phẩm đầu ra)
  8. ArtifactSản phẩm đầu ra

    Quy tắc · chưa kiểm chứng106 công việc không phải bản dịch thành công

Bối cảnh
Đối chiếu failedReason của BullMQ, mã thoát của tiến trình con và các công việc còn ở draft cho thấy NODE_OPTIONS được kế thừa xung đột trong tiến trình con. Sau đó, cùng tình huống được làm hiển thị dưới dạng trạng thái hàng đợi.
Kết quả
Các công việc bị kẹt được chia thành loại vắng khỏi hàng đợi và loại đã dùng hết lượt thử; loại sau được chuyển, kèm lý do, sang needs_review hoặc needs_credential tùy theo có kết quả hay không. Rà soát của con người vẫn được giữ nguyên.
Giới hạn
Giới hạn đồng thời là theo từng tiến trình. Log chạy gốc không có trong tài liệu đã rà soát; số liệu độ trễ bị lược bỏ vì mô hình và effort được yêu cầu không được ghi lại. Chỉ riêng mã build và release không phải bằng chứng triển khai công khai.
Nguồn và các giới hạn còn lại
  • CHANGELOG ghi một đề xuất về các nhánh adapter song song, nhưng nó không được biến thành bản ghi thực thi song song thực tế.
  • Phần còn lại của 200 không được chia nhỏ trong bản ghi này.