Human Review State Manager (/sdd-review)
Output language: All output mirrors the language of the invoking prompt. Vietnamese prompt → Vietnamese output; English prompt → English output. Canonical tokens (HUMAN REVIEW: RECORDED, HUMAN REVIEW: BLOCKED, PENDING, APPROVED, REVISE, REJECTED, PENDING HUMAN REVIEW, APPLIED, NOT APPLICABLE), file paths, and CLI commands are language-invariant.
Dùng skill này sau khi Human reviewer có thẩm quyền đã đọc recommendation và evidence. Tech Lead có thể review architecture, governance hoặc RFC khi repository giao thẩm quyền. Skill cập nhật đúng Human Final Review block; Agent không được tự chọn quyết định thay cho Human.
Tham số
Chọn target — dùng đúng một cách
--target=<repo-relative-path>: đường dẫn tương đối tới feature artifact, .sdd/reviews/ report, .sdd/rfcs/ RFC hoặc .sdd/architecture-profile.md có review block.
- Hoặc dùng
--feature=<feature-slug> --artifact=<context|spec|plan|tasks>.
Không dùng đồng thời hai cách. Không nhận absolute path, path ngoài repository, secret/private-key path, node_modules/, dist/, .git/ hoặc CONSTITUTION.md.
Ghi quyết định của Human
--status=<APPROVED|REVISE|REJECTED>: bắt buộc.
--decision, --reviewer, --follow-up: bắt buộc.
--reviewed-at=<ISO-8601 timestamp có timezone>: tùy chọn; thiếu thì lấy thời gian hệ thống.
APPROVED, REVISE, REJECTED đều cần decision, reviewer, timestamp và follow-up. Không dùng placeholder hoặc chuỗi rỗng.
Quy trình thực hiện
- Resolve target; dừng nếu không tồn tại, có nhiều review block hoặc thiếu
## Human Final Review.
- Đọc
.claude/skills/_shared/ai-review-protocol.md; yêu cầu recommendation PENDING HUMAN REVIEW đủ Scope, Recommendation, Evidence, Risks and assumptions, Alternatives considered, Required human decision.
- Kiểm tra status và dữ liệu Human.
- Nếu target là dispatch report, kiểm tra batch/task, frozen contract, scope/boundary, command/checkpoint và runtime evidence không bị claim quá mức.
- Nếu target là post-code report
.sdd/reviews/post-code-<feature>-<delivery-or-timestamp>.md, bắt buộc có changed boundary, REQ-XXX coverage, exact approved command/result, lint/audit/trace/sync state, residual risk và required Human decision.
- Nếu review cũ
APPROVED, chỉ review lại khi scope đã đổi và Agent đã tạo recommendation mới; intent, requirement, file boundary, exact command, checkpoint category hoặc shared-contract decision đổi đều invalidate approval.
- Chỉ cập nhật năm field trong
## Human Final Review; không sửa recommendation, requirements, source, architecture, tasks hay RFC.
- Với
SPEC.md + APPROVED, kiểm tra SemVer, REQ-XXX, EARS/acceptance/out-of-scope, recommendation và review fields trước khi đổi header thành Status: APPROVED & LOCKED.
- Với Architecture Profile, review chỉ xác nhận selected binding/evidence/exact command đã trình bày; không resolve phần thiếu.
Post-code review và completion
Post-code review áp dụng khi delivery thay đổi source behavior, tests, API/public/shared contract, runtime/dependency/security configuration, persistence schema hoặc business state. Thiếu report hợp lệ, REVISE hoặc REJECTED block delivery; docs-only không cần post-code review chỉ vì thay Markdown.
Kết quả hợp lệ:
HUMAN REVIEW: RECORDED
Target: <path>
Previous status: <old status>
New status: <APPROVED|REVISE|REJECTED>
Reviewer: <identity>
Reviewed at: <timestamp>
Spec lock: APPLIED | NOT APPLICABLE | BLOCKED
Next step: <follow-up>
Nếu validation fail, không sửa file và báo HUMAN REVIEW: BLOCKED kèm điều kiện cần khắc phục.
Điều kiện không được tự động vượt qua
- Không có recommendation hợp lệ
PENDING HUMAN REVIEW.
- Thiếu field Human bắt buộc hoặc target ngoài phạm vi.
- Review cũ
APPROVED nhưng không có scope change/recommendation mới.
- Spec không đạt DoD khi cần lock.
- Post-code report thiếu delivery evidence bắt buộc.
- Architecture Profile thiếu binding/evidence/exact command.
- RFC chưa qua
/sdd-rfc --approve.
/sdd-review chỉ ghi nhận quyết định do người gọi cung cấp. Nó không xác minh quyền reviewer trong tổ chức.
1---2name: sdd-review3description: Ghi nhận Human Final Review bền vững cho SDD/ADD artifact và chuyển trạng thái sau khi review4---56# Human Review State Manager (`/sdd-review`)78**Output language:** All output mirrors the language of the invoking prompt. Vietnamese prompt → Vietnamese output; English prompt → English output. Canonical tokens (`HUMAN REVIEW: RECORDED`, `HUMAN REVIEW: BLOCKED`, `PENDING`, `APPROVED`, `REVISE`, `REJECTED`, `PENDING HUMAN REVIEW`, `APPLIED`, `NOT APPLICABLE`), file paths, and CLI commands are language-invariant.910Dùng skill này sau khi Human reviewer có thẩm quyền đã đọc recommendation và evidence. `Tech Lead` có thể review architecture, governance hoặc RFC khi repository giao thẩm quyền. Skill cập nhật đúng `Human Final Review` block; Agent không được tự chọn quyết định thay cho Human.1112## Tham số1314### Chọn target — dùng đúng một cách1516- `--target=<repo-relative-path>`: đường dẫn tương đối tới feature artifact, `.sdd/reviews/` report, `.sdd/rfcs/` RFC hoặc `.sdd/architecture-profile.md` có review block.17- Hoặc dùng `--feature=<feature-slug> --artifact=<context|spec|plan|tasks>`.1819Không dùng đồng thời hai cách. Không nhận absolute path, path ngoài repository, secret/private-key path, `node_modules/`, `dist/`, `.git/` hoặc `CONSTITUTION.md`.2021### Ghi quyết định của Human2223- `--status=<APPROVED|REVISE|REJECTED>`: bắt buộc.24- `--decision`, `--reviewer`, `--follow-up`: bắt buộc.25- `--reviewed-at=<ISO-8601 timestamp có timezone>`: tùy chọn; thiếu thì lấy thời gian hệ thống.2627`APPROVED`, `REVISE`, `REJECTED` đều cần decision, reviewer, timestamp và follow-up. Không dùng placeholder hoặc chuỗi rỗng.2829## Quy trình thực hiện30311. Resolve target; dừng nếu không tồn tại, có nhiều review block hoặc thiếu `## Human Final Review`.322. Đọc `.claude/skills/_shared/ai-review-protocol.md`; yêu cầu recommendation `PENDING HUMAN REVIEW` đủ Scope, Recommendation, Evidence, Risks and assumptions, Alternatives considered, Required human decision.333. Kiểm tra status và dữ liệu Human.344. Nếu target là dispatch report, kiểm tra batch/task, frozen contract, scope/boundary, command/checkpoint và runtime evidence không bị claim quá mức.355. Nếu target là post-code report `.sdd/reviews/post-code-<feature>-<delivery-or-timestamp>.md`, bắt buộc có changed boundary, `REQ-XXX` coverage, exact approved command/result, lint/audit/trace/sync state, residual risk và required Human decision.366. Nếu review cũ `APPROVED`, chỉ review lại khi scope đã đổi và Agent đã tạo recommendation mới; intent, requirement, file boundary, exact command, checkpoint category hoặc shared-contract decision đổi đều invalidate approval.377. Chỉ cập nhật năm field trong `## Human Final Review`; không sửa recommendation, requirements, source, architecture, tasks hay RFC.388. Với `SPEC.md` + `APPROVED`, kiểm tra SemVer, `REQ-XXX`, EARS/acceptance/out-of-scope, recommendation và review fields trước khi đổi header thành `Status: APPROVED & LOCKED`.399. Với Architecture Profile, review chỉ xác nhận selected binding/evidence/exact command đã trình bày; không resolve phần thiếu.4041## Post-code review và completion4243Post-code review áp dụng khi delivery thay đổi source behavior, tests, API/public/shared contract, runtime/dependency/security configuration, persistence schema hoặc business state. Thiếu report hợp lệ, `REVISE` hoặc `REJECTED` block delivery; docs-only không cần post-code review chỉ vì thay Markdown.4445Kết quả hợp lệ:4647```text48HUMAN REVIEW: RECORDED49Target: <path>50Previous status: <old status>51New status: <APPROVED|REVISE|REJECTED>52Reviewer: <identity>53Reviewed at: <timestamp>54Spec lock: APPLIED | NOT APPLICABLE | BLOCKED55Next step: <follow-up>56```5758Nếu validation fail, không sửa file và báo `HUMAN REVIEW: BLOCKED` kèm điều kiện cần khắc phục.5960## Điều kiện không được tự động vượt qua6162- Không có recommendation hợp lệ `PENDING HUMAN REVIEW`.63- Thiếu field Human bắt buộc hoặc target ngoài phạm vi.64- Review cũ `APPROVED` nhưng không có scope change/recommendation mới.65- Spec không đạt DoD khi cần lock.66- Post-code report thiếu delivery evidence bắt buộc.67- Architecture Profile thiếu binding/evidence/exact command.68- RFC chưa qua `/sdd-rfc --approve`.6970`/sdd-review` chỉ ghi nhận quyết định do người gọi cung cấp. Nó không xác minh quyền reviewer trong tổ chức.