Skip to content

ship: verify và mở PR

/znf:ship là bước cuối của mọi workflow. Nó chạy lint, build, contract gate, verify hành vi (gồm kiểm thử UI khi diff chạm giao diện) và review độc lập, rồi commit, push và mở PR. Ship không merge.

Khi nào dùng

Dùng /znf:ship khi code đã xong và sắp commit. Ba workflow /znf:cook, /znf:fix, /znf:hotfix gọi ship ở bước cuối. Khi đi đường không dùng workflow, bạn tự gọi.

Không dùng /znf:ship khi chưa verify được gì. Ship không thay thế bước tự chạy thử code.

Cách gọi

text
/znf:ship

Agent tự route vào ship khi code xong, bạn không cần gõ lệnh. Ba workflow còn lại gọi ship vô điều kiện ở bước cuối.

Viết yêu cầu

Ship tự suy ra phạm vi từ file đã đổi. Bạn không cần liệt kê gì thêm.

TrườngNội dung
IntentĐường dẫn plan nếu tới từ /znf:cook. Nguyên nhân đã xác nhận nếu tới từ /znf:fix hoặc /znf:hotfix. Mục tiêu bạn nêu ra nếu đi đường không dùng workflow

Các bước

Các bước của một lần chạy ship

BướcKit làm gìBạn làm gì
1Xác định vùng thay đổi từ file đã đổiKhông cần làm gì
2Lint và build/typecheck vùng đó, lấy output thậtĐọc output
3Nếu chạm DB collection, endpoint, queue hoặc channel chung, chạy contract gateĐọc repo nào bị ảnh hưởng
4Verify hành vi: test nếu có, hoặc /znf:run. Nếu diff chạm giao diện, ship kiểm thử UI — golden-diff zenify visual check (khi repo có .znf/visual/routes.json) rồi znf:ui-verifier đo overflow phần tử đã đổi. Chi tiết ở Kiểm thử UIĐọc kết quả, kể cả số liệu overflow nếu là UI
5Review độc lập. CRITICAL/HIGH vào vòng sửa, MEDIUM/LOW lên boardĐọc finding
Vòng sửaSửa hết finding mở trong một wave, chạy lại check liên quan, tối đa 2 vòngNếu còn mở sau vòng 2, ship dừng, không commit, và báo bạn
6Xác định thứ tự deploy (đa service)Đọc thứ tự
7Ghi board vào file, commit và push branch, mở PRĐọc board bằng cat, không đọc bản tóm tắt. Nhận PR URL

Kết quả

ArtifactNội dung
Board${TMPDIR:-/tmp}/ship-board-<fp10>.md. Mọi dòng ✅/❌ kèm fingerprint. Đọc bằng cat, không tóm tắt
PRMở, chưa merge

Quyết định thuộc về bạn

  • Merge PR. Ship không tự merge, kể cả PR nó vừa mở.
  • Xử lý finding còn mở sau vòng sửa thứ 2. Ship dừng và báo lại, không tự quyết.

Ví dụ

PR của chính site tài liệu này do ship mở, ở bước cuối của lần chạy /znf:cook xây site.

Lỗi thường gặp

TránhNên làm
Bỏ verify vì review sạchBoard phải đủ dòng: lint, build, contract gate, verify hành vi, review. Tất cả bắt buộc
Merge vì CI xanhĐọc board trước. CI xanh không thay thế review độc lập hay verify hành vi trong board

Xem thêm

/reference/skills/ship, Gate fail-open, Chọn workflow