Vì sao Human Gate không bypass được
Trang này giải thích vì sao cổng duyệt cuối bắt buộc phải là con người bấm nút, và vì sao không token hay scope nào có thể vượt qua nó.
Ý tưởng cốt lõi: một chốt chặn mà script tự động vượt qua được thì không còn là chốt chặn con người.
Xác thực 2 lớp ở POST /api/tasks/:id/approve
- Lớp 1 — phải là người:
agentvàsystemđều 403. Mọi request dùng service token phân giải về actorsystemnên cũng 403 — không có ngoại lệ. - Lớp 2 — phải đủ quyền: role trên Space
>= admin(xem Phân quyền Board).
Scope gate:approve cố ý không tồn tại
Scope registry chỉ có các scope tích hợp (projects:read, agents:read, tasks:create, tasks:read,
tasks:message, groups:create…). Không token nào xin được quyền approve vì quyền đó không tồn tại
trong hệ thống — đây là thiết kế, không phải thiếu sót.
Audit bắt buộc, không ngoại lệ
Mỗi approve ghi một bản ghi reviews (reviewer_actor_id, reviewer_actor_type='human') và một Activity.
Đây là hành động nhạy cảm nhất hệ thống — approve mà không để lại audit là không thể.