wal: flush 20260724T1732

This commit is contained in:
pqhuy1987
2026-07-24 17:32:19 +07:00
parent de4f37930a
commit 3a1bb25056
6 changed files with 90 additions and 72 deletions

View File

@ -0,0 +1,63 @@
# _context-s-2 — SESSION-MODEL narrative durable
<!-- SCAFFOLD-META: sID=2 | ts-moc=2026-07-23T17:47:37+07:00 | nguon-ts=git log -1 --format=%cI @ 5815442 | generator=NONE (viet tay @S148 — SE chua port scripts/session_scaffold.py) -->
> **sID (LOGIC-session) = 2.** 1 phiên-logic 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-2/`.
> ts-mốc khởi-tạo = **2026-07-23T17:47:37+07:00** (nguồn: `git log -1 --format=%cI @ 5815442` — 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 cap `session_ctx_kb` → distill SECTION CŨ thành pointer/gist, TUYỆT ĐỐI KHÔNG sửa entry verbatim đã ghi.
> 🧊 **KHAI THẬT — file này RETRO-CONVERT @S148 (2026-07-24), không sinh lúc phiên chạy.** SE trước đó dùng form riêng (`pause-S<nn>-<ts>.md` mang cả narrative). Owner chốt @S148 *"đối ứng đúng chính xác như hub"* ⇒ tách: **marker** → `_pause-<i>.md`/`_tiep-<i>.md` (5 trường) · **narrative** → file này. Nguồn narrative = `pause-S147-20260723T1744.md` + `resume-S148-...md` — 🔴 **cả hai ĐÃ GỠ khỏi thư-mục** (không phải "giữ tại chỗ" như bản đầu của dòng này viết): để lại thì **cùng một sự-kiện bị Sàn-3 đếm HAI lần** (`p=2 r=2` thay vì `p=1 r=1`) — vô-tình cân nên trông ổn, nhưng là cân giả. **Vết thật nằm ở git history**, không cần bản sao trong cây làm việc.
> 🔴 **Trường không tái-dựng được thì KHAI, KHÔNG BỊA:** `_pause-1.jsonl-hint` = `unknown-retro-converted-S148` (uuid transcript cửa-sổ S147 không còn truy được); tin-nhắn VERBATIM của anh ở PAUSE-1 **không được ghi lại lúc đó** ⇒ mục `> anh:` dưới ghi rõ là **THIẾU**, không dựng lại từ trí nhớ.
---
## (a) STOCK-map — reference-not-copy
> Bảng pointer tới nguồn durable. **KHÔNG copy nội-dung** (chống drift).
| 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 hiện-tại | `docs/STATUS.md` | canonical mọi con-số (mig · bảng · test · roster) |
| Bàn-giao + backlog | `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 |
| Sổ thư cross-project | `broadcasts/_index.md` | INBOUND directed (`outbox/se`) — fan-out `outbox/all` KHÔNG vào đây |
---
## (b) FLOW — append-only @pause-only
> 🔴 **CẤM rewrite FLOW.** Mỗi `/pause` APPEND đúng 1 entry. Entry cũ = immutable. FLOW = SOURCE durable của "đang-đến-đâu"; bảng-đầu-việc = VIEW derive từ đây.
FLOW-START
### PAUSE-1 2026-07-23T17:44:00+07:00
> anh: **(THIẾU — không ghi lại lúc đó.** Form SE cũ không có trường verbatim; retro-convert @S148 CẤM dựng lại từ trí nhớ. Từ PAUSE-2 trở đi bắt buộc chép nguyên văn.**)**
**Quyết-định đã CHỐT trong cửa này (S147 — product/UAT):**
- **① Bug đính-kèm "Bảng so sánh" khi phiếu Trả lại:** gate nút xoá/tải theo `(isAdmin||isDrafter) && isEditablePhase(phase)` THAY `readOnly` màn-hình; cắm `:2013` KHÔNG `:421` (tránh HoSoLink bleed); descope `SupplierAttachmentsCell` (giữ Mig28 F3 carve-out); KHÔNG thêm BE guard (giữ S78). Cả 2 app.
- **② Chuẩn-hoá mã dự-án:** owner chốt "chỉ cắt đầu/cuối" cho LƯU (Trim); lead thêm kiểm-trùng bỏ-dấu-cách chặn tái-phát (KHÔNG đổi cách lưu). +4 test guard.
- **② Gom dự-án trùng trên PROD:** giữ bản no-space, ẩn mềm bản dấu-cách; owner chọn (B) *"có sẵn đường SQL máy vào điều chỉnh luôn"* → qua `ssh vietreport-vps` integrated-auth `-E` (không chạm password). Owner dặn *"sau này sẽ chạy tối ưu kỹ lại chỗ này"* = first-pass, KHÔNG phải tối-ưu cuối.
- **Push deploy:** owner *"OK làm đi"* → 2 commit + push, CI #407 PASS.
**Delta còn SỐNG:**
- 🟢 KHÔNG có mạch dở. Cả 2 việc DONE + deploy live + verified 2-nguồn + closeout pushed.
- ⏳ UAT nghiệm-thu ① (bạn kia mở phiếu **Trả lại** → màn "Danh sách" → "Bảng so sánh giá" → nút X + tải lên hiện lại).
- ⏳ ② tối-ưu kỹ lại chuyện gom dự-án — owner hẹn sau (future, KHÔNG phải việc đang dở).
- 🔵 20 carry governance S146 + NEXT items VẪN MỞ.
**Con-trỏ:** code `7d39d8d` (① FE 2-app) + `4510cea` (② BE+test) · closeout docs `5f6c3be` · script gom `docs/changelog/data-fixes/2026-07-23-merge-duplicate-projects.sql` · log `docs/changelog/sessions/2026-07-23-1730-S147-pe-attach-fix-project-dedup.md` · bundle admin `B2j1LQ-v` / user `C3wbJegk` · state Mig 67 · 89 bảng · 532 test.
---
### TIEP-1 2026-07-24T00:10:00+07:00 *(cửa-sổ 2 — nhãn phiên S148)*
> 🔸 Ghi ở đây để FLOW liền mạch; marker máy ở `_tiep-1.md`. Hub form không đòi entry TIEP trong FLOW — **SE thêm có chủ đích** vì `/tiep` là nơi ground-truth-reconcile xảy ra, và kết-quả reconcile là thứ cửa sau cần đọc.
- Sàn-3 5/5: ⑤ ORPHAN-L kêu đúng (bàn-giao pause→tiep), đóng bằng biên-nhận.
- `verify:` **KHỚP 3/3, 0 lệch** (`rev-list 0 1` · origin `5f6c3be` · eoffice 200) ⇒ KHÔNG sửa WAL.
- H24 tick S147→S148: counter **21→22 CLEAN** (`5f6c3be` còn reachable, exit 0 — khác `squash-benign` của S147). `NHIP-NO: light 5/6 · deep 5/15 ok`.
- Việc cửa này: re-stamp HANDOFF khớp đĩa (#1 ĐÓNG · #3 chốt-(a) · #2 đổi trục) · wire `/check-email` 4 cửa 2 chế-độ · STAGE-2 10 thư fan-out · migrate session-model sang form hub.

View File

@ -0,0 +1,5 @@
ts: 2026-07-23T17:44:00+07:00
head-sha: 5f6c3becfb4ce958c7edad7d9f1058cb7289491e
window-ordinal: 1
jsonl-hint: unknown-retro-converted-S148
account-label: none

View File

@ -0,0 +1,5 @@
ts: 2026-07-24T00:10:00+07:00
head-sha: 581544200b4773db810808c063f4245fe54e004c
window-ordinal: 2
jsonl-hint: D--Dropbox-CONG-VIEC-SOLUTION-SOLUTION-ERP/30188142-8e93-45b6-a7f0-5b4ab078e36e
account-label: none

View File

@ -1,21 +0,0 @@
# pause — phien-LOGIC L2, cua-so S147 (ACCUMULATE — cam ghi de)
**N-cap-ngoai-session-start:** 2 (ly-do: vao thang bang `/tiep` dau phien S147, KHONG qua `/session-start`; session-1/L1 da closed @S146, closed.md ghi next N=2)
## (1) Quyet-dinh da CHOT trong cua nay (S147 — product/UAT)
- **① Bug dinh-kem "Bang so sanh" khi phieu Tra lai:** gate nut xoa/tai theo `(isAdmin||isDrafter) && isEditablePhase(phase)` THAY `readOnly` man-hinh; cam `:2013` KHONG `:421` (tranh HoSoLink bleed); descope `SupplierAttachmentsCell` (giu Mig28 F3 carve-out); KHONG them BE guard (giu S78). Ca 2 app.
- **② Chuan-hoa ma du-an:** owner chot "chi cat dau/cuoi" cho LUU (Trim); lead them kiem-trung bo-dau-cach de chan tai-phat (KHONG doi cach luu). +4 test guard.
- **② Gom du-an trung tren PROD:** giu ban no-space, an mem ban dau-cach; owner chon (B) "co san duong SQL may vao dieu chinh luon" -> qua `ssh vietreport-vps` integrated-auth `-E` (khong cham password). Owner dan "sau nay se chay toi uu ky lai cho nay" = first-pass, KHONG phai toi-uu cuoi.
- **Push deploy:** owner "OK lam di" -> 2 commit + push, CI #407 PASS.
## (2) Delta con SONG (mang sang cua sau)
- 🟢 **KHONG CO mach do.** Ca 2 viec DONE + deploy live + verified 2-nguon (cicd-monitor + curl em-main khop hash) + closeout pushed.
-**UAT nghiem-thu ①:** ban kia mo phieu **Tra lai** o man **"Danh sach"** -> muc "Bang so sanh gia" -> nut xoa (X) + tai len hien lai cho nguoi soan. Neu VAN chua an -> dieu-tra lai (co the ho o man khac / nguyen nhan khac).
-**② toi-uu ky lai chuyen gom du-an** — owner hen sau (future, KHONG phai viec dang do). Script + logic tai-dung o `data-fixes/`.
- 🔵 **20 carry governance S146 + NEXT items VAN MO** — S147 la product-work, KHONG dung chuoi governance/session-model. Xem HANDOFF khoi S146.
## (3) Con-tro
- Code: `7d39d8d` (① FE 2-app) + `4510cea` (② BE+test). Closeout docs: `5f6c3be` (pushed).
- Prod merge script (idempotent, chay Dev+Prod): `docs/changelog/data-fixes/2026-07-23-merge-duplicate-projects.sql`.
- Session log: `docs/changelog/sessions/2026-07-23-1730-S147-pe-attach-fix-project-dedup.md`.
- Bundle live: admin `B2j1LQ-v` / user `C3wbJegk`. State: Mig 67 · 89 bang · 532 test.

View File

@ -1,37 +0,0 @@
# resume — phien-LOGIC L2, cua-so S148 (bien-nhan doi-ung cua pause-S147; can-so ORPHAN-L)
**Noi tu:** `pause-S147-20260723T1744.md` (cung `session-2`; N=2 giu nguyen — `/tiep` NOI phien-logic dang mo, KHONG mo N moi).
## (1) San-3 — tin-hieu da soi (5/5 manh)
- ① orphan run-folder (DUAL-ACCEPT, dang-1 + dang-2 C8): **0 orphan** tren toan `runs/`.
- ② commit non-`wal:` truoc origin: **khong co**.
- ③ sentinel `closing:` treo: **khong co**.
-`wal:`-commit cham `workflows/runs/`: **khong co**.
-`wal:`-commit cham `.claude/sessions/`: 🔴 **KEU**`pause-S147-20260723T1744.md` trong `5815442`. Cua (b) dia cung keu: `ORPHAN-L: session-2 (pause=1 resume=0 closed=0)`.
**Dung ca duoc thiet-ke**: day la ban giao `/pause``/tiep`, KHONG phai viec do bi bo quen. File nay chinh la doi-ung lam can so.
- 🟡 bac trung-binh / ⚪ bac yeu: `git status --porcelain` = **0 dong**, cay sach.
## (2) Doi-chung ground-truth vs `chain:` — **KHOP 3/3, 0 LECH**
| verify | ky-vong (WAL) | thuc-te | ket |
|---|---|---|---|
| `git rev-list --left-right --count origin/main...HEAD` | `0<n>` (chi `wal: pause` local) | `0 1` | ✅ |
| `git log --oneline -4 origin/main` | `5f6c3be` closeout + `4510cea`/`7d39d8d` | dung 3 sha, thu-tu dung | ✅ |
| `curl https://eoffice.solutions.com.vn` | 200 | **200** | ✅ |
**KHONG phai sua WAL** (ground-truth khong mau-thuan chain). Ca 5 muc chain deu `[x]` tu truoc; **0 muc nao flip trong lan reconcile nay**.
## (3) TICK counter (§2.5) — **CLEAN, khong squash-benign**
- Nhan-phien MOI **S148** theo label-convention S135 (conversation moi = nhan moi, ke ca vao bang `/tiep`; reuse `S147` se keo OR-guard session-clause NO-OP ⇒ tiep khong tick ⇒ phep-7 `+0`, cam).
- Tick `S147 → S148`: counter **21 → 22**; head `5f6c3be``5815442`.
- Phan-loai TRUOC tick tren `last_ticked_head` cu: counter doc 21 == luu 21 (khong lui) · `cat-file -t` = commit (ton tai) · `merge-base --is-ancestor 5f6c3be HEAD` **exit 0 = CON REACHABLE** ⇒ tick SACH. (Khac S147: luc do closeout-squash da nhac dau-tick khoi lich su.)
- Dong-no do tuoi: `NHIP-NO: kiem light 5/6 deep 5/15 ok | tran-bo-nho 0 over-cap | run-chua-gom 0 | pull-cach 2 ngay`**KHONG OVERDUE** ⇒ khong auto-spawn cap H24. JUMP: class_repeat cao nhat `gap-owner-specifics`=2 < 3 khong jump.
- 🔸 Moc ke: **light ~ counter 23 = NGAY PHIEN SAU** (auto-fire theo nhip, khong con consent owner @S146).
## (4) Delta con SONG mang sang cua nay (tu pause muc (2))
- 🟢 **KHONG co mach do** ca 2 viec S147 done + deploy live + verified 2-nguon + closeout pushed.
- UAT nghiem-thu (ban kia mo phieu **Tra lai** man "Danh sach" "Bang so sanh gia" nut X + tai len hien lai). Chua co tin.
- toi-uu ky lai chuyen gom du-an owner hen sau, KHONG phai viec dang do.
- 🔵 20 carry governance S146 + NEXT items VAN MO (S147 la product-work, khong dung chuoi governance).
## (5) `next:` dang thuc-thi
**(trong)** khong co muc `[!]`/`[ ]` nao trong chain de noi. Da in MASTER-CHECKLIST (view derive tuoi) cho anh chon viec; **cho anh giao**.