Session-model (owner chốt "đối ứng đúng chính xác như hub"):
- Form hub: _context-s-<N>.md (STOCK-map + FLOW append-only + STOCK-touched)
+ _pause-<i>/_tiep-<i> marker 5-trường + _snapshot-<i> + _end (thay closed.md)
- Port /snapshot + scripts/session_scaffold.py (near-verbatim)
+ scripts/session_ctx.py TRIMMED CÓ KHAI (chỉ machine-block + secrets-sweep;
KHÔNG port jsonl/overhead/cap-getter vì chưa có caller = ghost-wire)
- session-2 migrate sang form hub; session-1 giữ legacy (FROZEN)
Sàn-3 ORPHAN-L:
- DUAL-ACCEPT hub + legacy; glob pause-* KHÔNG khớp _pause-1.md nên không đếm đôi
- VÁ bug có sẵn từ S146: chốt-kết ĐÓNG TRỌN thư-mục (bản cũ c=1 chỉ tha 1 pause,
lệch chính câu session-end §6.3-bis vẫn nói "mọi pause")
- Fault-inject 10/10 hai chiều + anti-Goodhart
/check-email:
- Wire 4 CỬA phiên (session-start/tiep/session-end/pause), 2 CHẾ-ĐỘ:
DÒ ~5ms ở cửa dừng-nối (ràng buộc BINDING hub goi-chot §3) ⟂ KÉO ở bookend
- DÒ quét 2 kênh + định tuyến: outbox/se -> /check-email · outbox/all -> /adap-apply
- STAGE-2: 10 thư fan-out verify 2 tuyến 10/10 -> inbox/ai_infra/; backlog root = 0
HANDOFF re-stamp: #1 ĐÓNG (trio đã chạy S144) · #2 đổi trục · #3 anh chốt (a)
+ 4 mục mới (13)-(16); carry #15/#17 đóng, #16 đóng nửa (khai rõ vế còn hở)
H24 tick S147->S148: counter 21->22 CLEAN
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2.8 KiB
_context-s-{{N}} — SESSION-MODEL narrative durable
sID (LOGIC-session) = {{N}}. 1 phiên-logic (bootstrap → work → sweep) trải nhiều window vật-lý nối bằng
/pause+/tiep. Window = 0-ID governance; sID = đơn-vị LOGIC. Folder pin:.claude/sessions/session-{{N}}/. ts-mốc khởi-tạo = {{TS}} (nguồn:{{TS_SOURCE}}) — mốc git-committer, KHÔNG phải wall-clock tuỳ-tiện.🔴 CẤM rewrite / tự-tóm block FLOW (chống self-summary lossy). FLOW = append-only @
/pause-only; vượt capsession_ctx_kb→ distill SECTION CŨ thành pointer/gist, TUYỆT ĐỐI KHÔNG sửa entry verbatim đã ghi.
(a) STOCK-map — reference-not-copy
Bảng pointer tới nguồn durable. KHÔNG copy nội-dung (chống drift). Điền @bootstrap; row session-specific append dưới các row stable.
| Tên | Path | 1-dòng |
|---|---|---|
| WAL | .claude/WAL.md |
mạch-việc-dở máy-state (H-22) — nối bằng /tiep |
| AI-context | CLAUDE.md |
AI agent context SOLUTION_ERP (scope + quick-rules) |
| Trạng-thái | docs/STATUS.md |
canonical mọi con-số (mig · bảng · test · roster) |
| Bàn-giao | docs/HANDOFF.md |
brief 5 phút + bảng số chờ-anh + carry |
| Sổ đếm H24 | .claude/governance/.session-counter.json |
counter + nhịp lead-self-audit |
| Thư cross-project | broadcasts/_index.md |
INBOUND directed (outbox/se) — fan-out outbox/all KHÔNG vào đây |
| (session-specific) | (path) | (1-dòng — append @bootstrap phiên này) |
(b) FLOW — append-only @pause-only
🔴 CẤM rewrite FLOW. Mỗi
/pauseAPPEND đúng 1 entry theo SCHEMA dưới (đặt DƯỚI dòngFLOW-START). Entry cũ = immutable. FLOW = SOURCE durable của "đang-đến-đâu"; bảng-đầu-việc = VIEW derive từ đây (single-source).
(chưa có PAUSE — entry đầu append @/pause đầu tiên của phiên)
(c) STOCK-touched — máy-derive
Bảng file-đã-đụng trong phiên, máy-derive từ
git diff --name-only <anchor>..HEAD@pause/snapshot. KHÔNG điền tay.
| File | Δ | Ghi-chú |
|---|---|---|
| (máy-derive @pause/snapshot) |