Tốc độ tích hợp
Chỉ đạo chủ dự án 11.10.2026 (SRC-1338): merge, xung đột, build, test đang làm chậm tiến độ; rà toàn bộ rồi làm theo thứ tự lợi ích trên công sức.
Số đo nền (30 ngày tới 11.10.2026)
| Đo | Giá trị |
|---|---|
| Commit | 960, khoảng 32/ngày |
Commit chỉ để gỡ va chạm (fix(ci), merge, đánh số lại, revert) | khoảng 1/20 |
Job E2E learn (một shard, 2 worker) | 30-41 phút, 788 ca |
Các job còn lại của ci | dưới 3 phút mỗi job |
Job e2e là đường găng của MỌI PR và mọi lượt deploy trên main: các cổng khác xong trong ba phút rồi đứng chờ nó.
Thứ tự làm
- Chia shard e2e (SRC-1338). Chín shard song song: bộ learn trừ
mobileAuditchia sáu,mobileAudit(~12 phút, một ca mỗi URL) chia ba, vì--shardcắt khúc liền nhau và để chung thì cả file rơi vào một shard (đo được: shard ấy 18 phút, các shard khác 5). Mỗi shard giữ 2 worker mặc định. Ba bộ nhỏ (tutors, marlins, cổng điện thoại web) mỗi bộ một shard. Tổng phút tính tiền gần như không đổi; thời gian chờ giảm khoảng năm lần. Đã thử 4 worker mỗi shard: năm ca chết vì timeout do tranh CPU, trong khi cùng bộ xanh 889/889 với 2 worker. Muốn nhanh hơn thì thêm shard. Đảo lại "một job, không thêm job" của SRC-1127 có chủ đích: khi ấy bộ e2e dài 15 phút. - Sổ chung không còn điểm nóng ghi (SRC-1339). Sổ intake đã chia mảnh từ SRC-1322; chỗ còn nóng là dòng con trỏ "Nguồn tiếp theo" trong
docs/intake.md(244 commit/14 ngày). Bỏ con trỏ, mảnh sổ vàtraceability.mdgộp bằngmerge=uniontrong.gitattributes. Không chuyển sang "mỗi SRC một file": sau khi bỏ con trỏ thì union đã đủ, đổi 1.300 dòng thành 1.300 file là thêm việc mà không bớt xung đột nào. - Migration bỏ luật dãy liền mạch (SRC-1340), chỉ cấm trùng. Không đổi tên theo thời gian: luật liền mạch mới là thứ làm
mainđỏ khi hai nhánh gộp ngược thứ tự số; bỏ nó thì số giành trên remote (SRC-929) đã đủ, và không phải đổi tên 344 file đã áp lên production. - Hàng đợi gộp tự dựng (SRC-1341, automerge). Merge queue của GitHub cần gói trả phí;
automerge.ymlnay cập nhật nhánh PR và chờ CI mới khimainđã đổi ở cùng vùng code. - Tách file code nóng (SRC-1342). Đo 14 ngày:
apps/web/src/App.tsx+site/routes.ts(99 commit),apps/learn/src/App.tsx(42),workers/api/src/index.ts(36). Đã táchapps/learn/src/App.tsx(2.138 dòng) thànhlearnRoutes.ts,LearnCockpit.tsx,LearnRoot.tsx,ProfilePage.tsx; chỉ di chuyển code. Chọn file này trước vì không PR nào đang mở sửa nó, nên việc tách không làm vỡ nhánh của ai.apps/webvàworkers/apiđể sau: đang có PR mở sửa chúng, và thứ tựapp.routecủa Hono có nghĩa nên không tự đăng ký route được nếu không kiểm từng chỗ. - Gộp cổng kiểm: không làm. Đo 11.10.2026,
check:docs9 giây,check:code12 giây, đã chung một runner từ SRC-948. Mỗi cổng còn lại canh một tai nạn vẫn có thể xảy ra.