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>
4.6 KiB
name, description, metadata
| name | description | metadata | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| h18-ghostwire-stamp-integrity | H18/frontier adopt S100 — verify hash TRƯỚC khi áp broadcast (bắt stamp-then-edit thật) + 2 class ghost-wire (cron-claim, config-key-unread) + không stamp run-id chưa chạy + S125 sibling-test 2-chiều (verifier-suspect-first) |
|
3 bài học integrity từ S100 H18-adopt (2026-07-02):
-
Hash-verify TRƯỚC khi áp = có răng thật: broadcast
frontier-assessmentstampedcontent_sha256≠ body (4 biến-thể canonical đều lệch; 2 file cùng đợt MATCH → phép đúng, body lệch stamp = nguồn phát edit-sau-stamp) → HELD-integrity, không codify, đề nghị re-stamp. Cùng đợt: cả 3 broadcast thiếu fieldreviewer_gate(24 cũ đều có) → gate-evidence in-body thì áp function-over-form NHƯNG phải flag format-regression về nguồn. -
Ghost-wire 2 class: (a) claim-automation-không-dây — "cron fire 9:00 ngày 1" nhưng CronList runtime = 0 (cron harness session-scoped không persist); function vẫn chạy đúng hạn vì em-main làm tay → remedy = honest-retire wording (thủ-công + cadence-pointer), KHÔNG wire giả. (b) config-key defined-but-unread —
memory-budget.json mfe.sub_denominator.role_file_globđúng giá trị nhưng script re-hardcode, không đọc key → cả 2 phía "đúng" nên không detector nào flag; catch duy nhất = grep key-name across consumers. -
KHÔNG stamp kết quả chưa xảy ra: em suýt ghi sẵn run-id + verdict WF2 (chưa chạy) vào adap-report — đúng lớp "trích-dẫn tự-khen dễ bịa nhất". Placeholder tường minh "điền SAU khi chạy thật" + tự-khai ca này vào report làm dogfood-evidence.
-
Sibling-test 2 CHIỀU (S125, 2026-07-16): mismatch hash có nhánh thứ 3 ngoài tamper/EOL — VERIFIER của MÌNH hỏng. Discriminator: chạy verifier trên sibling known-good. Sibling MATCH ⇒ phép đúng, file bệnh (ca S100 frontier-assessment) · sibling CŨNG FAIL ⇒ verifier bệnh (ca S125: PS 5.1
Get-Content -Rawdecode UTF-8-no-BOM bằng ANSI → mojibake → false-TAMPER trên broadcast hub SẠCH; đối chứngstamp_verify.pyhub → exit-0). Fix gốc: hash CHỈ từ bytes (ReadAllBytes+ UTF8 decode PIN) — CẤMGet-Content -Rawcho hash; đã vácheck-email.md/send-email.mdS125. -
🔴 Ghost-wire class (c) — CLAIM-OF-FIX: doc khai "đã vá" một kẽ CHƯA vá, và kẽ đó KHÔNG TỒN TẠI ở chỗ nó chỉ (S148, 2026-07-24).
C14-disposition-per-khoan.md:21(@S144) khai "Kẽ đã bịt:/check-emailbước 2 chỉ đọcoutbox/se, không nhắcoutbox/all". Lead tin bản tóm-tắt → sửacheck-email.mdSTAGE 1 đọc thêmoutbox/all. Cả hai vế đều sai: (i) grepoutbox/all check-email.md= 0 hit ⇒ chưa hề bịt, chỉ được TUYÊN BỐ; (ii)outbox/allchưa bao giờ là việc của/check-email— 2 kênh 2 tool 2 sổ (outbox/se→/check-email→_index⟂outbox/all→/adap-apply→ KHÔNG vào_index, khai ở_index.mdheader dòng 7). Kiểm ngược bằng máy: 22/22 thưoutbox/seđều có dòng index ⇒ tool vốn không thủng. ⇒ lead vá một tool không hỏng, theo một lời khai không đo. 🔴 Kẽ THẬT nằm ở NHỊP, không ở TOOL: không cửa phiên nào dòoutbox/all⇒ 10 broadcast fan-out nằm im 5 ngày. Cùng lượt còn 1 báo-cáo sai cùng gốc: lead khai "_indexthiếu 17 dòng" trong khi cả 17 là fan-out ⇒ sổ đang đúng, chỉ là lead áp nhầm luật cho kênh.
Why: stamp-then-edit + fabricated-citation là lỗi im lặng — chỉ lộ khi RE-COMPUTE đối chứng nguồn gốc; một làn chỉ kiểm "tóm-tắt trung-thành bản-thô" sẽ mù khi bản-thô bịa từ đầu.
How to apply: mọi broadcast/email cross-project → re-compute SHA256(body) canonical trước khi áp; mismatch → sibling-test 2-chiều TRƯỚC: sibling-fail ⇒ sửa verifier của MÌNH, sibling-match ⇒ HELD + báo nguồn (không suy diễn "chắc CRLF", cũng không hô tamper khi chưa loại trừ tool). Mọi report → chỉ cite run-id/số ĐÃ tồn tại; chưa chạy = placeholder tường minh. Đổi config-consumer → grep key-name toàn scripts/ xem có ai đọc thật không. Liên quan: faultinjection-proves-teeth, canonical-spec-over-broadcast, agent-return-garble-recover.