update skill and docs
This commit is contained in:
@@ -22,14 +22,16 @@ Bạn là **người thực thi một bước của quy trình Solution Architec
|
||||
## Chế độ không tương tác
|
||||
- Không hỏi người dùng. Điều Bước 0 định hỏi mà prompt chưa trả lời ⇒ `humanInputNeeded` {topic, question, suggestedDefault}; ảnh hưởng nội dung ⇒ thêm `OQ-nnn` (trong artifact + sổ `00-index/OQ_<PROJECT>.md`) kèm **hệ quả nếu trả lời ngược**.
|
||||
- **Preflight gate:** gate trước chưa `✅ Baselined` (VD sa-2 cần `OPT` qua AG1; sa-1 cần BA qua G1 có `GOAL`/`RQ`) và prompt **không** có "Ngoại lệ gate" ⇒ **không ghi file**, trả `blocked=true` + `gateWarning`. Có ngoại lệ ⇒ làm tiếp với `Confidence` 🔴 toàn bộ và ghi ngoại lệ vào Open Questions + `DEC-nn`.
|
||||
- Phạm vi: chỉ làm hoạt động được giao (`activity`/`--focus`). Với sa-2: **1 (QAS) → 2 (ASR) → 3 (SAD) phải có trước** 4–8; được giao focus sau mà bước trước chưa có ⇒ đọc/kiểm tra, thiếu ⇒ `blocked` nêu rõ.
|
||||
- Phạm vi: chỉ làm hoạt động được giao (`activity`/`--focus`). Với sa-2: **1 (QAS) → 2 (ASR) → 3 (SAD) phải có trước** 4–8; `dom` cần `SAD`+`DAT`, `ctr` cần `ICD`, `pdm` cần `DAT`+`DOM`; được giao focus sau mà bước trước chưa có ⇒ đọc/kiểm tra, thiếu ⇒ `blocked` nêu rõ. Với sa-3: `handoff` chạy trước `agd`.
|
||||
- Có "Ghi chú từ người duyệt" ⇒ sửa đúng phần liên quan, version `+0.1`/`+1.0`, Change Log ghi rõ; quyết định kiến trúc đổi ⇒ ADR mới `Supersedes`, không sửa ADR cũ.
|
||||
|
||||
## Header, ID, version, ADR
|
||||
- Header đúng `artifact-map.md` bộ SA (Version · Date · Author "…(skill sa-x)" · Status · Approved by theo vai trò gate · Source · Scope · **Confidence 🟢/🟡/🔴**) + Change Log. Ngày từ prompt (`date`). Mới ⇒ `🟡 Draft`. **Không tự ghi 🔵/✅.**
|
||||
- ID dùng tiếp số đã có (Grep trước): `DRV/CON/ASR/QAS/CMP/IF/THR/ADR/ARISK/POC/OQ/DEC/ASM`.
|
||||
- ADR: một ADR một quyết định (D1), bắt buộc phương án đã loại (D3); điểm radar ≥ 8 ⇒ giữ `Proposed` + tạo `ARISK`, **không** chuyển `Accepted` khi chưa có POC/bài đo. Chỉ con người chuyển `Accepted` (qua "sign").
|
||||
- Mũi tên sơ đồ phải có giao thức và sync/async (D4); mọi sơ đồ kèm bảng.
|
||||
- **Sơ đồ theo chuẩn Archify** (`.claude/skills/ba-lifecycle/references/diagram-rules.md`, D4/W13): mỗi sơ đồ có kiểu Archify ⇒ ghi spec `diagrams/<ARTIFACT>_<slug>.<type>.json` (`schema_version` 1, workflow 2; `meta.quality_profile: "showcase"`; không `subtitle`/`visual_preset`/`legend`/`locale`; ≤ 12 node chính; một đường `emphasis`; ID = mã truy vết bỏ gạch, `label` mang mã đầy đủ) — chép hình dạng trường từ spec mẫu `templates/diagrams/` của skill, không chép sự thật; ngay trên khối mermaid ghi `<!-- archify: <type> · diagrams/<file>.json -->` (ERD/class ⇒ `<!-- archify: mermaid-only -->`); mermaid cùng tập ID node/cạnh với spec, không `style`/`classDef`; mũi tên ghi giao thức + sync/async; bảng đi kèm ngay dưới. Bạn không có Bash ⇒ **không** ghi "đã validate"; trả `humanInputNeeded` "chạy archify validate/deliver + diagram-check cho <danh sách spec>".
|
||||
- **Activity lớp bàn giao dev (sa-2):** `dom` — `templates/domain-model.md`, class diagram `mermaid-only` mỗi bounded context, invariant truy `BR-nnn`, entity ⊆ `DAT` §1. `ctr` — `templates/contract-index.md` **và** file thật `02-architecture/contracts/openapi/<module>.yaml` (từ `templates/contracts/openapi.template.yaml`, OpenAPI 3.1), `asyncapi/<domain>-events.yaml`; mọi `IF-nnn` sync có `x-if`, mọi endpoint `API` của BA có `operationId`, mọi `E-…` của SRS §4.1 trong `x-error-codes`; sau đó sửa `ICD` cột "Contract ở đâu" trỏ file thật; **không** viết contract thay đối tác ngoài (để `partners/` trống + `ARISK`). `pdm` — `templates/physical-data-model.md` **và** `02-architecture/schema/<kho>/V001__init_<schema>.sql` + `.down.sql` (+ `seed/`); mọi thực thể `DAT` §1 → `TBL-nnn`, mọi cột đủ kiểu/độ dài · null · default · nguồn `FLD`/`BR`, cột PII gắn cờ, index truy về `DAT` §7.1; lệch với bảng field SRS ⇒ `baSyncIssues`. `CTR` §4 và `PDM` §4 ghi "chưa lint/chưa chạy — người điều phối chạy" nếu prompt không kèm kết quả.
|
||||
- **Activity `handoff` (sa-3):** `templates/dev-handoff.md`; mở từng artifact, chép `Version`/`Status` thật vào §2; file chưa có ⇒ ☐ + "thiếu", **không** "dự kiến"; US còn `OQ` về hành vi ⇒ loại khỏi gói và ghi ở §3; §5 ghi "chưa chạy handoff-check" nếu prompt không kèm kết quả.
|
||||
|
||||
## Khi prompt yêu cầu "sign"
|
||||
Chỉ sửa header/Change Log/INDEX/ADL, không đổi nội dung:
|
||||
|
||||
Reference in New Issue
Block a user