[CLAUDE] Docs: memory verify-deploy them 2 bai do duoc tu S178 (hash CI != local, marker phai phan biet)
Bo sung vao feedback_verify_deployed_artifact_byte_level.md — CUNG mot bai
"chon DUNG thu de neo", 2 ca do duoc trong cung mot dot ship:
1. Hash bundle CI != hash dist LOCAL cua CUNG mot commit.
Do that: 99370de build local ra C1x59woX/Cn2Ctxap, CI deploy ra CZzRTDJS/D1cL-UbV.
=> CAM neo "da deploy" vao hash-khop-local: neo vay thi deploy THANH CONG van bi
doc thanh that bai. Neo dung 2 ve: (a) hash DOI so prod cu + (b) byte-level noi
dung kem control duong. dist local chi dung lam doi-chung CO-CHUOI-HAY-KHONG,
khong dung lam moc danh-tinh.
2. Marker phai PHAN BIET DUOC, khong thi control duong cung cuu khong noi.
Go placeholder 'Ghi chu (tuy chon)…' cua KHKK, do bundle ra 2 => trong y het
"go khong an". That ra PeWorkflowPanel + HardCopiesPage dung ban KHONG co dau '…'.
Marker dung = ban CO '…' (0/0); ban khong-'…' thanh control duong (2/2).
=> Truoc khi dat ky-vong =0, grep xem CON AI DUNG chuoi do. Day la lan thu 4
cung lop trong 2 cua-so lien tiep.
Docs-only => path filter CI skip, khong deploy.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@ -5,6 +5,7 @@ metadata:
|
|||||||
node_type: memory
|
node_type: memory
|
||||||
type: feedback
|
type: feedback
|
||||||
originSessionId: 67157d21-1ead-475d-9a50-cf7f07468583
|
originSessionId: 67157d21-1ead-475d-9a50-cf7f07468583
|
||||||
|
modified: 2026-08-06T15:36:33.098Z
|
||||||
---
|
---
|
||||||
|
|
||||||
Khi user UAT báo "fix chưa ăn / vẫn thấy UI cũ" SAU khi đã deploy (cicd verify bundle rotate), ĐỪNG đoán cache-vs-deploy — **verify artifact prod BYTE-LEVEL**: `curl -s $BASE/` lấy `/assets/index-<hash>.js` → `curl` file đó → `grep -ao` string-fix-mới + string-cũ. Fix-present + old-gone = deploy OK → **100% client-cache** (KHÔNG deploy-fail). **incognito window (Ctrl+Shift+N) = golden-test** (không cache → OK = chắc-chắn cache). SPA Vite: index.html `Cache-Control:no-cache` + JS hash-immutable = ĐÚNG chuẩn; cache-lag do tab-SPA-mở/browser-giữ-index.html, KHÔNG do server (nếu grep `serviceWorker|workbox` = 0).
|
Khi user UAT báo "fix chưa ăn / vẫn thấy UI cũ" SAU khi đã deploy (cicd verify bundle rotate), ĐỪNG đoán cache-vs-deploy — **verify artifact prod BYTE-LEVEL**: `curl -s $BASE/` lấy `/assets/index-<hash>.js` → `curl` file đó → `grep -ao` string-fix-mới + string-cũ. Fix-present + old-gone = deploy OK → **100% client-cache** (KHÔNG deploy-fail). **incognito window (Ctrl+Shift+N) = golden-test** (không cache → OK = chắc-chắn cache). SPA Vite: index.html `Cache-Control:no-cache` + JS hash-immutable = ĐÚNG chuẩn; cache-lag do tab-SPA-mở/browser-giữ-index.html, KHÔNG do server (nếu grep `serviceWorker|workbox` = 0).
|
||||||
@ -12,3 +13,8 @@ Khi user UAT báo "fix chưa ăn / vẫn thấy UI cũ" SAU khi đã deploy (cic
|
|||||||
**Why:** S96 anh Chương "bó tay rồi" — checkbox opt-out không hiện sau Ctrl+F5+logout. Verify byte-level: prod `0MU-kb4N` CHỨA "BỎ tick"/"Đã BỎ tick", chuỗi cũ "✅ static" MẤT → xác nhận cache 100%. Tiết-kiệm giờ debug sai-hướng + trấn-an team ("server có fix rồi, do cache máy").
|
**Why:** S96 anh Chương "bó tay rồi" — checkbox opt-out không hiện sau Ctrl+F5+logout. Verify byte-level: prod `0MU-kb4N` CHỨA "BỎ tick"/"Đã BỎ tick", chuỗi cũ "✅ static" MẤT → xác nhận cache 100%. Tiết-kiệm giờ debug sai-hướng + trấn-an team ("server có fix rồi, do cache máy").
|
||||||
|
|
||||||
**How to apply:** deploy-claim + UAT-báo-chưa-ăn → (1) curl-grep bundle prod tìm marker-fix, (2) bảo user incognito, (3) CHỈ nghi deploy-fail khi marker VẮNG khỏi bundle. Xem gotcha #77. Liên [[feedback_root_cause_over_symptom]].
|
**How to apply:** deploy-claim + UAT-báo-chưa-ăn → (1) curl-grep bundle prod tìm marker-fix, (2) bảo user incognito, (3) CHỈ nghi deploy-fail khi marker VẮNG khỏi bundle. Xem gotcha #77. Liên [[feedback_root_cause_over_symptom]].
|
||||||
|
|
||||||
|
**+S178 — 2 bổ-sung ĐO ĐƯỢC, cùng một bài "chọn ĐÚNG thứ để neo":**
|
||||||
|
|
||||||
|
1. 🔴 **Hash bundle CI ≠ hash `dist` LOCAL của CÙNG commit.** Đo thật: `99370de` build local ra `C1x59woX`·`Cn2Ctxap`, CI deploy ra `CZzRTDJS`·`D1cL-UbV`. ⇒ **CẤM neo "đã deploy" vào hash-khớp-local** (neo vậy thì deploy THÀNH CÔNG vẫn đọc thành thất bại). Neo đúng 2 vế: *(a)* hash **ĐỔI** so prod cũ + *(b)* **byte-level nội-dung** kèm control dương. Có (a)+(b) rồi thì lệch hash local là vô hại — dist local chỉ dùng làm **đối-chứng có-chuỗi-hay-không**, không dùng làm mốc danh-tính.
|
||||||
|
2. 🔴 **Chọn chuỗi marker phải PHÂN BIỆT ĐƯỢC, nếu không control dương cũng cứu không nổi.** Ca S178: gỡ placeholder `Ghi chú (tùy chọn)…` của KHKK, đo bundle ra **2** ⇒ trông y hệt "gỡ không ăn". Thật ra `PeWorkflowPanel`+`HardCopiesPage` dùng chuỗi `Ghi chú (tùy chọn)` **không có dấu `…`**. Marker đúng = bản CÓ `…` (0/0), còn bản không-`…` thành **control dương** (2/2). ⇒ Trước khi đặt kỳ-vọng `=0`, **grep xem còn ai dùng chuỗi đó** — đây là lần thứ 4 cùng lớp, xem [[feedback_absence_looks_like_clean]] + [[feedback_claim_stronger_than_work]].
|
||||||
|
|||||||
Reference in New Issue
Block a user