# CASAN Harness Assessment — SDD Pipeline Evaluation Framework > Tài liệu này mô tả cách đánh giá mức độ trưởng thành Harness của một SDD pipeline theo khung CASAN. > Áp dụng được cho bất kỳ project nào dùng Speckit / casan.* agent pattern. > Cập nhật lần cuối: 2026-06-26 --- ## 1. Bảy thành phần Harness cần đánh giá | ID | Harness | Mô tả cốt lõi | |----|---------|---------------| | H1 | Context Harness | Đưa đúng thông tin, đúng lúc vào agent — RAG, agent memory, context window optimization | | H2 | Tool Harness | Gọi đúng tool, đúng quyền — tool registry, idempotency, audit log, rate limit | | H3 | Evaluation Harness | Kiểm định đầu ra — golden dataset, LLM-as-judge, regression tests, feedback loop | | H4 | Security Harness | Phòng chống prompt injection, data leakage, credential abuse | | H5 | Governance Harness | Luồng phê duyệt, audit log bất biến, risk registry, policy engine | | H6 | AgentOps Harness | Giám sát hiệu năng — cost/task, hallucination rate, drift detection | | H7 | Orchestration Harness | DAG/state machine, agent-to-agent protocol, retry, parallel execution | --- ## 2. Scorecard đánh giá từng Harness Chấm điểm theo thang 0–100. Gợi ý mức: | Score | Mô tả | |-------|-------| | 0–30 | **GAP** — Harness này gần như không có, rủi ro cao | | 31–60 | **Partial** — Có một số cơ chế nhưng thiếu bài bản | | 61–80 | **Good** — Hoạt động tốt, còn một vài điểm cần cứng hóa | | 81–100 | **Strong** — Đủ tiêu chuẩn vận hành thật | ### Bảng chấm điểm | ID | Harness | Score | Nhận xét | GAP cần bổ sung | |----|---------|-------|----------|-----------------| | H1 | Context Harness | __ /100 | | | | H2 | Tool Harness | __ /100 | | | | H3 | Evaluation Harness | __ /100 | | | | H4 | Security Harness | __ /100 | | | | H5 | Governance Harness | __ /100 | | | | H6 | AgentOps Harness | __ /100 | | | | H7 | Orchestration Harness | __ /100 | | | --- ## 3. Checklist đánh giá chi tiết từng Harness ### H1 — Context Harness - [ ] Có file context tập trung (pipeline-context.yaml hoặc tương đương)? - [ ] Context được cập nhật sau mỗi step, không cần agent tự scan lại? - [ ] Agent nhận đường dẫn artifact từ context thay vì hardcode/đoán? - [ ] Tech stack và domain knowledge chỉ đọc một lần, cache lại? - [ ] Có cơ chế làm sạch context khi outdated/stale? **Câu hỏi chốt:** *Sub-agent có thể biết đường dẫn SRS, BD, spec từ context mà không cần Boss truyền lại không?* --- ### H2 — Tool Harness - [ ] Các tool call có schema mô tả rõ (input/output/error types)? - [ ] Có tool registry — agent gọi qua registry, không hardcode URL/credential? - [ ] Có idempotency key cho các tool thay đổi hệ thống (write, deploy)? - [ ] Có rate limit và retry policy? - [ ] Có audit log ghi lại mỗi tool call? **Câu hỏi chốt:** *Nếu một tool call chạy 2 lần, hệ thống có safe không?* --- ### H3 — Evaluation Harness - [ ] Có golden dataset (bộ test case chuẩn) trước khi implement? - [ ] Review dùng LLM-as-judge với tiêu chí rõ ràng (không chỉ "nhìn qua")? - [ ] Có gate cứng — pipeline dừng nếu verdict REJECTED? - [ ] Gate có auto-retry với fix agent, không dừng toàn bộ pipeline? - [ ] Có regression test chạy trước khi deploy lên môi trường thật? - [ ] Feedback từ môi trường thật (test fail, bug) quay lại update spec/plan? **Câu hỏi chốt:** *Một thay đổi nhỏ trong spec có trigger lại test tự động không?* --- ### H4 — Security Harness - [ ] Có scan prompt injection trong user input trước khi đưa vào agent? - [ ] Credential (API key, DB password) không được hardcode trong prompt/spec? - [ ] Có kiểm tra data leakage — PII/nhạy cảm không đi vào log? - [ ] Có sandbox/timeout cho tool execution để tránh agent chạy lệnh nguy hiểm? - [ ] Có cơ chế jailbreak detection? **Câu hỏi chốt:** *Nếu user inject `ignore previous instructions` vào input, pipeline có bị ảnh hưởng không?* --- ### H5 — Governance Harness - [ ] Có luồng phê duyệt con người trước khi agent thực thi action có rủi ro cao? - [ ] Audit log bất biến — không ai (kể cả admin) xóa được? - [ ] Có risk registry — danh sách các action bị cấm hoặc cần review? - [ ] Có policy engine — agent tự check quyền trước khi gọi tool? - [ ] Có báo cáo compliance định kỳ? **Câu hỏi chốt:** *Nếu audit, có thể trả lời "ai đã làm gì, lúc mấy giờ, được ai duyệt" không?* --- ### H6 — AgentOps Harness - [ ] Đo cost per agent run (token, thời gian, tiền)? - [ ] Track tỷ lệ hallucination / error per step? - [ ] Có alerting khi một step fail quá N lần? - [ ] Có drift detection — phát hiện khi model output thay đổi hành vi theo thời gian? - [ ] Dashboard theo dõi throughput và latency của toàn pipeline? **Câu hỏi chốt:** *Nếu một step đột nhiên tốn gấp 3 lần token bình thường, có ai biết không?* --- ### H7 — Orchestration Harness - [ ] Pipeline có DAG rõ ràng — biết step nào phụ thuộc step nào? - [ ] Có parallel execution cho các step độc lập (không chờ tuần tự không cần thiết)? - [ ] Có BACK-TO-PLAN / retry cycle khi gate fail? - [ ] Có giới hạn số lần retry để tránh infinite loop? - [ ] Có fallback — nếu model A fail, thử model B? - [ ] Có transaction boundary — rollback được nếu step giữa pipeline fail? **Câu hỏi chốt:** *Nếu step 10 fail sau khi step 8-9 đã chạy xong, pipeline có recover được không?* --- ## 4. Xác định CASAN Level từ kết quả Harness ### Công thức quy đổi ``` Average Score = (H1 + H2 + H3 + H4 + H5 + H6 + H7) / 7 Critical GAP = bất kỳ Harness nào có score < 30 ``` | Điều kiện | CASAN Level | |-----------|-------------| | Average < 40 hoặc ≥ 3 GAP | Level 2 — Augmented (dùng Harness của nhà cung cấp) | | Average 40–65, ≤ 2 GAP | Level 3 — Standard (Harness chuẩn hóa) | | Average 65–80, ≤ 1 GAP | Level 3 → 4 (đang chuyển đổi) | | Average > 80, không có GAP | Level 4 — Automated (đủ 7 Harness vận hành thật) | | Average > 80 + tất cả > 70 + Multi-Agent phức tạp | Level 5 — Native | ### Nguyên tắc quan trọng > **Harness thấp nhất quyết định ceiling.** Dù H1/H3/H7 rất mạnh, nếu H4 (Security) = 0%, pipeline không thể đạt Level 4 trong môi trường production thật. --- ## 5. Kết quả đánh giá — MDE_AINative_OKR (2026-06-26) | ID | Harness | Score | Nhận xét | |----|---------|-------|----------| | H1 | Context Harness | **90** | `pipeline-context.yaml` — pointer store cho artifact paths + tech stack. Boss cập nhật sau mỗi step, sub-agent đọc để discover input. Không cần re-scan. | | H2 | Tool Harness | **75** | Build/lint/docker/npm chains có cấu trúc. Thiếu: idempotency key, tool registry chính thức, audit log per-call. | | H3 | Evaluation Harness | **85** | LLM-as-judge multi-gate (Steps 5, 7, 11), golden dataset từ `casan.testkit` (Step 8b), auto-retry tối đa 5 lần, BACK-TO-PLAN 3 cycles. | | H4 | Security Harness | **20** | ⚠️ GAP: Không có prompt injection scan, không kiểm tra credential hardcode trong spec, không có sandbox. | | H5 | Governance Harness | **25** | ⚠️ GAP: Không có approval workflow, audit log chỉ là text file (không bất biến), không có risk registry. | | H6 | AgentOps Harness | **30** | ⚠️ GAP: Chỉ có port check và startup log ở Step 13. Không track cost/agent, không có hallucination rate, không drift detection. | | H7 | Orchestration Harness | **80** | Boss DAG rõ ràng, parallel dispatch Steps 8+9, BACK-TO-PLAN loop, gate retry protocol. Thiếu: fallback model, transaction rollback. | **Average Score: 58/100 → CASAN Level 3 → 4** ### Roadmap đóng gap để đạt Level 4 | Priority | Action | Harness | |----------|--------|---------| | 🔴 High | Thêm prompt injection scan vào Boss trước khi delegate | H4 | | 🔴 High | Không để credential trong spec/prompt — dùng env var | H4 | | 🟠 Medium | Thêm per-agent cost tracking vào Boss log | H6 | | 🟠 Medium | Thêm approval checkpoint trước Step 13 (deploy) | H5 | | 🟡 Low | Thêm idempotency key cho tool calls có side effect | H2 | | 🟡 Low | Thêm fallback model nếu primary model fail | H7 | --- ## 6. Cách dùng tài liệu này cho project mới 1. Copy bảng scorecard ở mục 2 vào file assessment của project 2. Chạy qua checklist mục 3 cho từng Harness, check ✅ những gì đã có 3. Score = (số ✅ / tổng số câu hỏi) × 100, điều chỉnh theo nhận xét thực tế 4. Dùng bảng mục 4 để xác định CASAN Level hiện tại 5. Lập roadmap từ các GAP theo priority > **Gợi ý:** Chạy assessment này ở đầu mỗi project mới và sau mỗi milestone lớn để track tiến độ trưởng thành.