120 lines
7.4 KiB
Markdown
120 lines
7.4 KiB
Markdown
# CASAN — Mục lục Plan
|
||
|
||
> Cập nhật: 2026-07-08. File này là **mục lục thuần** cho bộ plan CASAN. Trạng thái
|
||
> chi tiết **không** lặp ở đây để tránh lệch: "còn gì phải làm" xem
|
||
> `CASAN_BACKLOG_STATUS.md` (có legend nhãn chuẩn); "control nào đã implement+test"
|
||
> xem `CASAN_HARDENING_STATUS.md`. Ba file phân vai rõ, một sự thật ghi một nơi.
|
||
|
||
## Hiện trạng một dòng
|
||
|
||
- **Scoring:** CASAN Level 4; điểm công tâm quanh **~81/100**; harness thấp nhất 80
|
||
(H5/H6) — trần do **managed infra thật** chưa có (xem Plan-07 TIER 2).
|
||
- **Core harness:** **218 core checks PASS / 0 FAIL**; **Plan-16 security remediation 24 SEC suite = 118 PASS / 0 FAIL**; local-prod Docker lab 2/0
|
||
(`infra-lab verify` 7/0). Đây là bất biến — mọi thay đổi phải giữ được.
|
||
|
||
## Danh mục plan
|
||
|
||
> Cột trạng thái chỉ là nhãn tóm tắt (legend: `CASAN_BACKLOG_STATUS.md`). Chi tiết
|
||
> "bước tiếp theo" nằm ở Backlog.
|
||
|
||
| # | File | Mảng | Nhãn |
|
||
|---|---|---|:--:|
|
||
| 01 | `CASAN_PLAN_01_RESTRUCTURE.md` | Tái cấu trúc thư mục Phase 0→6 + tách package harness | ✅ (2026-07-08, merged main) |
|
||
| 02 | `CASAN_PLAN_02_LLM_SOURCEGEN.md` | Nối LLM thật vào sinh source thay template | 🟡 (đợt A) |
|
||
| 03 | `CASAN_PLAN_03_CLOUD_PATCH.md` | Patch cloud OpenAI/Anthropic, bỏ stub | 🟡 / 🔌 live |
|
||
| 04 | `CASAN_PLAN_04_SELFIMPROVE.md` | Khép vòng `casan improve` | 📋 |
|
||
| 05 | `CASAN_PLAN_05_CICD.md` | CI/CD + release package | 🟡 |
|
||
| 06 | `CASAN_PLAN_06_ONBOARD.md` | Onboard dự án thật thứ 2 (chứng minh reuse) | 📋 |
|
||
| 07 | `CASAN_PLAN_07_PRODUCTION_HARDENING.md` | H4/H5/H6 + Track C + TIER 2 managed infra | 🟡 core / 🔌 T2 |
|
||
| 08 | `CASAN_PLAN_08_CONTEXT_COMPRESSION.md` | H1.5 context/token compression | 📋 |
|
||
| 09 | `CASAN_PLAN_09_EVIDENCE_PACK.md` | Evidence Pack & certification | 🟡 |
|
||
| 10 | `CASAN_PLAN_10_TRACEABILITY_EVAL.md` | REQ→code→test + H3 eval | 🟡 |
|
||
| 12 | `CASAN_PLAN_12_DOMAIN_PACK.md` | Domain Pack SDK | 📋 |
|
||
| 13 | `CASAN_PLAN_13_CONTROL_PLANE.md` | Control Plane: dashboard giám sát + quản lý + settings | 🟡 core + Track 1 console |
|
||
| 14 | `CASAN_PLAN_14_RBAC.md` | RBAC & quản trị đa dự án (multi-tenant) | 📋 |
|
||
| 15 | `CASAN_PLAN_15_RESPONSIBLE_AI_DATA_GOV.md` | Responsible AI & Data Governance (FPT §14.3–14.4) | 📋 |
|
||
| 16 | `CASAN_PLAN_16_SECURITY_AUDIT_REMEDIATION.md` | Security audit core harness + kế hoạch vá (tamper-evidence/injection/fail-open) | � P0/P1/P2 done |
|
||
| 17 | `CASAN_PLAN_17_LOOP_ENGINEERING.md` | Loop Engineering / Agentic Loop Governance (budget governor, convergence, verify-contract, loop trace/replay, meta-loop) | 📋 |
|
||
| 18 | `CASAN_PLAN_18_CHAT_CONSOLE.md` | Governed Chat Console (target arch; **MVP-0 Ask CASAN + MVP-1 Operator done; MVP-2 Track 4 foundation done** → chat-as-loop/streaming/replay → multi-tenant) | 🟡 MVP-0/1 + Track 4 done |
|
||
| Future | `CASAN_PLAN_FUTURE_PHASES.md` | Approval workflow, state machine, benchmark, memory, remediation, KPI | 💤 vision |
|
||
|
||
> **Không có plan số 11:** số 11 được bỏ trống có chủ ý — nhánh eval/traceability đã
|
||
> gộp vào Plan-10, không tách plan 11 riêng. Dãy nhảy 10 → 12 là bình thường.
|
||
|
||
## Ưu tiên thực thi (core harness là mấu chốt)
|
||
|
||
> Nguyên tắc định hướng: **giá trị lõi của CASAN là core harness (gate H1→H7), không
|
||
> phải source-gen.** Vì vậy ưu tiên đặt việc củng cố/mở rộng core harness lên trước;
|
||
> source-gen (Plan-02) là thứ yếu, làm sau khi core vững.
|
||
|
||
| Ưu tiên | Việc | Vì sao |
|
||
|:--:|---|---|
|
||
| **P1** | Giữ **218/0** + đưa **traceability line/symbol-level vào CI** (Plan-10 + Plan-05) | Bảo vệ & siết chính core harness — mấu chốt |
|
||
| **P2** | **TIER 2 managed infra** (Plan-07): IdP/JWKS, WORM-S3, KMS/HSM, dashboard TLS/OIDC, alert managed, billing thật | Đòn bẩy duy nhất lên "Strong 81+" |
|
||
| **P3** | ✅ **Plan-01 restructure DONE** (2026-07-08, merged main; gate 64/0/3) | Đã tách package harness (`packages/casan-harness`) + domain (`apps/okr/domain`) → **06/12 đã mở khoá** |
|
||
| **P4** | **Plan-06 onboard dự án 2** | Chứng minh reuse core harness (thuyết phục nhất) |
|
||
| **P5** | **Plan-05 CI/CD** runner green + release package | Tự động hoá bảo vệ core harness |
|
||
| P6 | Plan-02 source-gen đợt B–D | **Thứ yếu** — chỉ mở rộng sau khi core vững; mọi output vẫn qua H1→H7 |
|
||
| P7 | Plan-03 live cloud smoke | Cần key thật (điều kiện gỡ blocker: xem Plan-03) |
|
||
| P8 | Plan-04 / 08 / 12 | Làm sau các plan nền |
|
||
|
||
> **Track enterprise (bar tổ chức “rất cao”):** Plan-13 Control Plane (dashboard
|
||
> giám sát + quản lý + settings) là trục chính, phụ thuộc Plan-14 (RBAC) +
|
||
> Plan-04 (approval) + Plan-07 C4 (IdP). Plan-15 (Responsible AI & Data Governance)
|
||
> bắt buộc cho FPT §14.3–14.4. Nhóm này song song track core harness, không thay
|
||
> thế nó.
|
||
|
||
## Thứ tự phụ thuộc
|
||
|
||
```mermaid
|
||
flowchart LR
|
||
CORE["Core harness 218/0<br/>(bất biến)"] --> P10X["10 Traceability++<br/>line/symbol + CI"]
|
||
CORE --> P07T2["07 TIER 2 managed infra<br/>IdP/KMS/WORM/alerts/billing"]
|
||
P10X --> P05["05 CI/CD<br/>release gates"]
|
||
P07T2 --> STRONG["Strong 81+"]
|
||
P01["01 Restructure<br/>(nhánh riêng)"] --> P06["06 Onboard dự án 2"]
|
||
P01 --> P12["12 Domain Pack SDK"]
|
||
P06 --> P12
|
||
P05 --> P06
|
||
P03["03 Cloud patch<br/>(keys/API)"] --> P02["02 Source-gen<br/>đợt A→D (thứ yếu)"]
|
||
P02 --> P04["04 Self-improve"]
|
||
P08["08 Compression<br/>sau core"] --> P02
|
||
P07T2 --> P13["13 Control Plane<br/>monitor + manage + settings"]
|
||
P14["14 RBAC"] --> P13
|
||
P04 --> P13
|
||
P13 --> P15["15 Responsible AI<br/>& Data Governance"]
|
||
P13 --> P17["17 Loop Engineering<br/>Agentic Loop Governance"]
|
||
P10X --> P17
|
||
P04 --> P17
|
||
P17 --> P18["18 Chat Console<br/>chat = governed loop-run"]
|
||
P13 --> P18
|
||
P14 --> P18
|
||
style CORE fill:#d0e8ff,stroke:#2c3e91,stroke-width:2px
|
||
style STRONG fill:#d0ffd0,stroke:#1e8449,stroke-width:2px
|
||
```
|
||
|
||
## Lệnh kiểm chứng nhanh
|
||
|
||
```bash
|
||
cd "$(git rev-parse --show-toplevel)" # repo root (app promoted here)
|
||
for s in run-casan4-harness adversarial-harness phase1-track-a phase2-track-c \
|
||
phase3-evidence-pack phase-h5-approval phase-h5-infra phase-h6-agentops \
|
||
phase-c7-incident phase-h4-multilingual phase-c6-sandbox phase-h4-split-inject \
|
||
phase10-traceability; do
|
||
bash packages/casan-harness/tests/$s-tests.sh >/dev/null 2>&1 && echo "$s OK" || echo "$s FAIL"
|
||
done
|
||
|
||
bash packages/casan-harness/tests/phase-prod-infra-lab-tests.sh
|
||
bash packages/casan-harness/scripts/bash/infra-lab.sh verify
|
||
```
|
||
|
||
## Ghi chú cho AI tiếp theo
|
||
|
||
- `CASAN_BACKLOG_STATUS.md` = nguồn chuẩn "còn gì phải làm" (có legend nhãn + ánh xạ).
|
||
- `CASAN_HARDENING_STATUS.md` = nguồn chuẩn "control nào đã implement+test".
|
||
- `CASAN_TEAM_ALLOCATION_3DEV.md` = phân công việc còn lại cho team 3 người (task nhỏ + dependency + waves).
|
||
- `CASAN_PLAN_03_CLOUD_PATCH.md` = nguồn cho cloud provider patch + điều kiện gỡ blocker key.
|
||
- Không stage các file audit log runtime nếu chỉ thay đổi do chạy verify.
|
||
- Lỗi backend `npm test` (Prisma MySQL vs `setup-sqlite.mjs`) đã có chủ ở Backlog TIER 1
|
||
(T1.4) — là test-infra của app OKR, không phải core harness/source-gen.
|