Bài 2 — Tạo Space đầu tiên
Trang này hướng dẫn tạo Space đầu tiên và mời team theo từng role, để dự án có nơi chạy task với ranh giới làm và duyệt rõ ràng.
Đối tượng: owner / người bắt đầu dự án mới. Điều kiện: đã là
ownersau Bài 1. Bối cảnh ví dụ: tạo Space "Payment Service" gắn với repo/repos/payment-service. Thời gian: ~20 phút.

Tạo Space — điền form
Bấm New Project (hoặc trang Projects) và điền:
| Trường | Ghi gì |
|---|---|
name | Tên Space (ví dụ "Payment Service") |
repoPath | Đường dẫn tuyệt đối tới repo git, hoặc repoUrl để server tự clone vào cloneRoot |
defaultAgentType | Agent mặc định cho task trong Space |
defaultBaseBranch | Thường main |
defaultUseWorktree | Bật (khuyến nghị mạnh) |
requireHumanGate | Bật để cưỡng chế Human Gate |
mergeStrategy | merge-local (mặc định, cùng host) / create-pr (quy trình PR) / manual (tự merge tay) |
Provisioning nguyên tử 2-phase (diễn ra sau Submit)
- Người tạo tự động thành
ownertrên Space mới. - Nếu Arkon lỗi giữa đường: xoá bù (compensate) — server xoá Department dở dang + links + Space vừa tạo, rồi trả lỗi — không để lại rác.
- Nếu Arkon không cấu hình/down: Space vẫn tạo thành công (201 suy biến mềm), tab Wiki trống,
server chỉ ghi
console.warn(chưa có Activity ở cấp Space — suy biến mềm).
Mời team (3 phút)
- Xác định role — cấp tối thiểu đủ dùng:
| Người | Role | Vì sao |
|---|---|---|
| PO, Stakeholder | viewer | Xem tiến độ, không tạo/sửa |
| Developer | member | Tạo task, chạy agent, apply plan — nhưng không approve |
| Tech Lead, Reviewer | admin | Được approve & merge (Human Gate) |
- Cấp quyền:
curl -X POST http://<host>/api/spaces/<spaceId>/members \
-H 'Content-Type: application/json' \
-d '{"email":"dev1@corp.com","role":"member"}'
- Người được cấp refresh trang → thấy Space.
member không approve được — đây là điểm tách bạch có chủ ý. Nếu team không cần tách, cấp admin;
nhưng khi đó bạn mất kiểm soát ai được merge. Không xoá được owner cuối cùng (409) — chống tự khoá.
Kịch bản mời team không tái hiện được ở DEV-LITE (AGENTBOARD_DEV_IDENTITY=1 bypass mọi request
thành owner). Muốn thử RBAC thật: DEV FULL-STACK (./scripts/dev.sh up rồi
./scripts/dev.sh member <spaceId> <email> viewer).
Xác minh
- Board mới hiện 2 tab Board và Wiki.
- Bên Arkon
:3119→ Departments thấy "Payment Service" với trang Home. - Đăng nhập bằng tài khoản
viewer→ nút Approve bị chặn, API trả 403. - Đăng nhập bằng
member→ tạo task được, approve 403.
Bài tiếp theo: Bài 3 — Chạy task đầu tiên. Chi tiết owner nâng cao: Tạo Space & quản thành viên.
Gặp lỗi? Xử lý sự cố — Space tạo xong không thấy Wiki, mời member không vào được.