Freeze current submission/demo baseline: - casan-next-plans/: full task-level plan set (Plan 00 index + 02/04/06/07/08/09/12, QA, slide deck) - optimize-docs/video-steps/: per-vector scene breakdown (commands/screen-text/script) + start-tmux - run-all.sh / scorecard.sh / map-live.sh: REAL=1 live-battery wiring - regenerated evidence + audit/telemetry logs from live REAL=1 run - submission README + video recording guide updates - dry-run pipeline logs for 001-okr-web-app Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
55 lines
4.2 KiB
Markdown
55 lines
4.2 KiB
Markdown
# CASAN — Bộ dựng Video Evidence (H4 · H5 · H6)
|
||
|
||
> ## ⚡ Cách nhanh nhất: chạy 1 script từ đầu đến cuối
|
||
>
|
||
> `run-all.sh` gộp TẤT CẢ vector — tới bước nào **tự in title card + mô tả + lệnh + exit code** ngay trong terminal (chính là "text hiển thị"), rồi dừng chờ Enter.
|
||
>
|
||
> ```bash
|
||
> cd <thư mục gốc dự án có .specify/> # vd: AINative_OKR_CASAN5
|
||
> bash /…/optimize-docs/video-steps/run-all.sh # MẶC ĐỊNH: tự chạy, dừng 5s/bước rồi tiếp
|
||
> STEP_DELAY=8 bash /…/run-all.sh # đổi thời gian dừng mỗi bước
|
||
> AUTO=0 bash /…/run-all.sh # chuyển sang bấm Enter thủ công
|
||
> ```
|
||
> - Tự phát hiện Ollama: tunnel sống → chạy A3/A8/D4; không → in "SKIP" có ghi chú.
|
||
> - Đã **chạy thật & xác nhận** offline + Ollama (2026-07-02): mọi exit code khớp mô tả.
|
||
> - **Bước cuối CHẤM ĐIỂM THẬT** bằng [`scorecard.sh`](scorecard.sh): mỗi mục checklist H4/H5/H6 gắn 1 gate **fail-able** chạy live → `(✅/5)×100`, ra bảng H1–H7 + Average + CASAN Level. Kết quả chạy hiện thời: **H4 20→100 · H5 25→100 · H6 30→100 · Avg 58→90 · Level 4 — Automated**. *(Con số đáng tin là SỐ TEST ĐỐI KHÁNG PASS — điểm 0–100 chỉ là quy đổi; chạy `scorecard.sh` để ra số hiện thời, đừng chép cứng.)*
|
||
> - **Bố trí màn hình / cửa sổ terminal** (tmux 2 pane + bản đồ sống nhấp nháy) → xem [`LAYOUT.md`](LAYOUT.md). Khởi động nhanh: [`start-tmux.sh`](start-tmux.sh).
|
||
|
||
---
|
||
|
||
> Bộ tài liệu quay màn hình, tách theo **từng bước** (dùng khi muốn quay lẻ từng cảnh). Video **chỉ có hình + text mô tả** (không lồng tiếng) — nên mỗi bước có sẵn 3 thành phần:
|
||
>
|
||
> | File | Dùng để làm gì |
|
||
> |---|---|
|
||
> | `commands.sh` | Lệnh copy-paste chạy trên terminal khi **quay màn hình** |
|
||
> | `screen-text.md` | **Text hiển thị trên màn hình** (title card / caption ngắn — chèn overlay) |
|
||
> | `script.md` | **Lời mô tả/thuyết minh** dạng text (chèn lower-third / khung mô tả) |
|
||
|
||
## Thứ tự dựng (trọng tâm chấm điểm)
|
||
|
||
| Cụm | Thư mục | Bước | Thời lượng gợi ý |
|
||
|---|---|---|---|
|
||
| Chuẩn bị | `00-preflight/` | môi trường + tunnel Ollama | ngoài video |
|
||
| ⭐ **H4 Security** | `H4-Security/` | A1 → A9 (9 vector — thêm A9 secret ở đầu ra) | ~5:45 |
|
||
| ⭐ **H5 Governance** | `H5-Governance/` | B1 → B8 (8 vector — thêm B6 SoD, B7 least-priv, B8 rate-limit) | ~5:00 |
|
||
| ⭐ **H6 AgentOps** | `H6-AgentOps/` | D1 → D6 (6 vector — thêm D6 hallucination rate) | ~3:00 |
|
||
| 🔥 **Cross-layer** | `CHAIN-cross-layer/` | showpiece MAESTRO | ~1:15 |
|
||
| 🏭💰 **Pipeline + Money-shot** | (REAL=1) | STEP1 qua wrapper thật + cost-spike trên token đo THẬT | ~1:30 |
|
||
|
||
## Quy ước quay (áp dụng mọi bước)
|
||
|
||
1. **Luôn để exit code on-screen** — mọi lệnh kết thúc bằng `echo "exit=$?"`.
|
||
2. Mỗi bước bắt đầu bằng **title card** (lấy từ `screen-text.md`), rồi chạy lệnh, rồi hiện **caption kết quả**.
|
||
3. `script.md` là văn bản mô tả — dán làm phụ đề/khung mô tả trong lúc lệnh chạy.
|
||
4. **cwd = thư mục gốc dự án** (`AINative_OKR_CASAN5/`, nơi có `.specify/`). Trong môi trường quay Docker thì là `cd casan5/AINative_OKR_CASAN5`.
|
||
5. Vector cần **Ollama live**: chỉ **A3, A8, D4** → bật SSH tunnel trước (xem `00-preflight/`). Còn lại chạy offline vẫn xanh.
|
||
6. Cảnh **KHÔNG được cắt** (highlight): **A5** (indirect), **B1** (tamper), **B6** (tự-duyệt bị chặn), **D1 + money-shot** (cost-spike token thật), **CHAIN**.
|
||
7. Nên chạy kèm `asciinema rec` để giám khảo replay terminal thật.
|
||
|
||
## Nguyên tắc nội dung
|
||
|
||
> "Mọi con số là kết quả chạy thật, có exit code on-screen; con số nào chưa tự đo thì nói rõ nguồn — không suy diễn."
|
||
|
||
- Điểm = thứ **chứng minh được bằng tấn công**, không phải thứ khai báo.
|
||
- Harness **thấp nhất** quyết định trần → nâng đúng 3 harness từng là GAP: **H4=20, H5=25, H6=30**.
|