# Kế hoạch: CASAN tự sinh vỏ theo dự án (closed-loop, đóng gói tái dùng) > Mục tiêu: biến CASAN từ "1 vỏ OKR cố định" thành **lõi tái dùng + vỏ tự sinh** cho mọi dự án, qua vòng lặp khép kín: Local AI sinh nháp → harness tự chấm → AI xịn review/vá → đóng gói. Dùng được ở 3 mức: ý tưởng, project có sẵn, vấn đề cần giải. --- ## 1. Tách lớp: lõi cố định vs vỏ tùy dự án | Lớp | Thành phần | Tính chất | |---|---|---| | **Lõi (casan-core)** | `security-check.sh`, `governance-check.sh`, `casan-harness.sh`, `drift-detect.sh`, `rollback-manager.sh`, `model-fallback.sh`, `verify-audit-chain.sh`, `tool-registry-gate.sh`, `pii-mask.py`, `hallucination-scan.py` | Project-agnostic, đóng gói versioned, KHÔNG sửa mỗi dự án | | **Vỏ (project-shell)** | `run-casan-pipeline.mjs`, `casan-step.mjs`, requirement, golden runs, agent stubs, policy yaml | Tự sinh theo dự án | Manifest điều khiển vỏ: `casan.config.yaml` ```yaml feature-id: tech-stack: steps: [srs, bd, spec, plan, review, dd, testkit, tasks, reviewcode] agents: { srs: ..., plan: ..., review: ... } golden: .specify/golden/ thresholds: { H1:80, ..., H7:80 } ``` --- ## 2. Kiến trúc closed-loop ```mermaid graph LR IN[3 cổng vào: idea / repo / problem] --> SCAF[Local AI: sinh vỏ nháp] SCAF --> RUN[casan-core: test+gate+audit] --> SCORE{mọi H>=ngưỡng?} SCORE -->|no| REV[AI xịn: review+vá] --> RUN SCORE -->|yes| PKG[casan-pack export] --> REG[(registry)] REG --> REUSE[Dự án sau tái dùng] ``` - **Local AI** (rẻ): sinh nháp + vá vòng đầu, chạy nhiều lần. - **AI xịn** (đắt): chỉ vào khi local kẹt — sửa golden, siết policy, fix orchestration. - **Harness lõi**: trọng tài khách quan, chấm 7 điểm, không bịa. --- ## 3. Ba mức cổng vào | Mức | Input | Vỏ sinh ra | Golden | |---|---|---|---| | Ý tưởng | mô tả ngắn | SRS+spec+plan phác | sinh từ spec | | Project sẵn | repo | feature-inventory + pipeline | từ test thật | | Vấn đề | bug/yêu cầu | mini-pipeline 1 luồng | từ kỳ vọng | --- ## 4. Lộ trình 5 giai đoạn ### GĐ1 — Tách lõi - Gom script agnostic → `casan-core/` versioned (semver). - Tạo template vỏ rỗng + `casan.config.yaml`. - Tiêu chí: chạy lõi không cần vỏ OKR. ### GĐ2 — Local AI sinh vỏ - Sinh pipeline + agent stub + requirement + golden draft từ 1 trong 3 mức. - Tiêu chí: vỏ mới boot pipeline không lỗi cú pháp. ### GĐ3 — Loop tự chấm - Chạy lõi → JSON điểm 7 harness;