5.8 KiB
CI/CD Monitor — archive 2026-08
L2 archive. Moved byte-exact from L1
MEMORY.mdkhi vượt soft-cap. Con-trỏ ở_INDEX.md.
-
S167 (08-01)
aaed699K7 bridge KHKK→HĐ 13 file cross-stack (4 BE + 6 FE ×2 + 3 test, 0-mig) — PARTIAL 4/6+1 (gate 639=45+594 Δ+17 · Mig GIỮ 71 · tables 97 · bundleIg1R5tAh→RgvHZkPH+DFOCQ2ks→D65FJPGd). 🔴 BÀI TO NHẤT — PUSH-ĐÈ NUỐT DEPLOY (đề-xuất gotcha #86): run #441 củaaaed699bị CANCELLED lúc 3m02s vì lead push628132cđè ⇒ Gitea cancel-in-progress. K7 ship được CHỈ NHỜ MAY:628132ccó chạmfe-*/src/**nên đẻ run #442. Nếu commit-2 rơi trọnpaths-ignore(docs/memory-only) ⇒ run-1 cancelled + run-2 skip ⇒ code KHÔNG BAO GIỜ lên prod, mà bảng Actions trông vẫn lành +git logđã push. ⇒ LUẬT: sau 2 push liên tiếp, verify "run cuối có head_sha == TIP" VÀ "TIP ⊇ commit code" (git merge-base --is-ancestor), CẤM đọc "có run xanh" là xong. 🔑 KIỂM-TRA-TIỀN-ĐỀ marker trước khi tin 0-hit (nâng cấp K6, suýt FAIL-OAN lần 3):filebáo bundle "ASCII text" ⇒ nghi\u-escape → bác bỏ bằng ĐO (grep -c -F 'Hợp đồng'=4 trên bundle PRE); nghi code-split (page nằm lazy-chunk thì 0-hit vô nghĩa) → bác bỏ bằng ĐO (index.html chỉ 2 asset · 0 ref"./x-<hash>.js"). Cả 2 nghi đều SAI nhưng phải đo mới được quyền kết luận. 🔑 CONTROL DƯƠNG = chuỗi bản TIỀN-commit của CHÍNH file đang sửa (4/4 =1 ở cả 2 bundle) — chứng "file có trong bundle + grep có răng" rẻ hơn mọi cách khác. 🔑 Admin = control idempotent SẴN CÓ, miễn phí: seeder chạy 3 role báo 2 upgraded (không phải 3) ⇒ nhánh no-op ĐÃ thực thi thật trên prod (codeif(changed) upgraded++) ⇒ chứng idempotent ở tầng-row dù chỉ có 1 restart. ⚠️ log lần-2 sẽ IM LẶNG (guardif(added>0||upgraded>0)) — đừng đọc thành hồi-quy. ⚠️appcmd list wpmap PID→pool là BẮT BUỘC: PID 7680 start cùng cửa-sổ nhưng làvietreport-admin(dự án KHÁC) — đọc vội tưởng pool ta restart 2 lần. ⚠️nv.testlogin 401 ⇒ tầng-2 #82 của Drafter CHƯA đo live; CẤM lấy Admin-qua-được để tuyên grant đã ăn (Admin có bypass, không tách được công của row). Evidenceruns/2026-07-31-S164-4gd-khkk-fanout/sub-cicd-verify-k7.md. Tag[run-442, push-de-nuot-deploy, ancestry-proof, tien-de-marker, control-duong-tien-commit, admin-control-idempotent, appcmd-map-pid] -
S167 (08-01)
1c6d77aK6 admin thu-gọn menuADMIN_HIDDEN_KEYS12-key (FE-admin 1 file, 0-mig) — PASS 5/5 (#440 6m29s · gate 622=45+577 delta 0 · Mig GIỮ 71 · tables 97 · menu 200/perm 2221 đứng im). 🔴 BÀI TO NHẤT: 0-hit marker SAI 2 LẦN LIÊN TIẾP do CƠ-CHẾ REGEX, cả 2 lần trông y hệt "code không ship" ⇒ suýt FAIL-OAN. (a) rolldown/Vite 8 minify string → BACKTICK (new Set([\PurchaseEvaluations`,…])), regex neo["']không bao giờ khớp; (b) vá xong truyền pattern-chứa-backtick qua biến trong"…"→ shell nuốt,grep -cEgãy (Unmatched () trả **0 gần như im lặng** trong vòng lặp. ⇒ **LUẬT: marker chuỗi trên bundle dùnggrep -Ffixed-string + LUÔN trích byte thật.{90}X.{90}TRƯỚC khi kết luận vắng-mặt.** 🔑 **KỸ THUẬT MỚI — COUNT-DELTA**: literal đã có từ K4a ⇒ *có/không* = 0 bit, nhưng *số lần xuất hiện* PRE→POST đo được: **12/12 key đều +1**; ngoại lệ duy nhấtWorkflows**+2** giải-thích-được (substring ⊂PeWorkflows) ⇒ thành kiểm-tra-nhất-quán MIỄN PHÍ. 🔑 **LOG CI IN THẲNGdist/assets/index-.js** = nhân chứng THỨ 4 độc lập curl, khớp LM prod **tới từng giây** ⇒ rẻ nhất để phân biệt **FROZEN-lành-tính** (eoffice: LM 11:14→**12:00:41** đổi + log in CÙNG hashDFOCQ2ks= rebuild deterministic) với bundle-kẹt (LM cũ). 🔑 **2-TẦNG #82 đo bằng SỐ**:/api/menustrả **12/12 key bị ẩn** ⇒ ẩn client KHÔNG thu quyền. Marker-ÂM display-only: route/purchase-evaluations**68→68** nguyên vẹn. Evidenceruns/2026-07-31-S164-4gd-khkk-fanout/sub-cicd-verify-k6.md. Tag[run-440, 0-hit-gia-2-lan, grep-F, count-delta, frozen-lanh-tinh, log-CI-nhan-chung-4]` -
(08-01
e202393S166 K5+K4c FE-only — PASS 5/5: #439 6m16s, gate 622=45+577 (+1 = đúng 1 Fact mới). 🔑 marker differential 4/4 element-wise (K5 vào CẢ 2 app · K4c CHỈ eoffice) + Δsize cùng chiều = nhân chứng ⟂ grep. 🔴 recipe đếm mig trong MEMORY có FALSE-NEGATIVE:grep -v Snapshotăn nhầmAddPeApprovedBudgetSnapshot(Mig 67) → phải neo đuôiDesigner\.cs$|ModelSnapshot\.cs$; ưu tiên set-diff repo↔prod 2 chiều thay khớp-tổng. ⚠️ bar "FE route 200" KHÔNG CÓ RĂNG với SPA-fallback (POS ≡ NEG byte-identical 876B). verbatim →runs/…/sub-cicd-verify-k5-k4c.md) -
(08-01
88e7ecfS166 K4a+K4b — PASS 7/7: #438, gate 621=45+576, menu 151→200, perm 1584→2221. 🔑 PHỦ 2 RUN 1 LƯỢT ⇒ delta khép kín. 🔑 MỐC PRE ĐỀ BÀI SAI, bắt bằng ĐO (lead giao 143⇒192, đo LIVE ra 151 → truy phạm-vi thay vì hô drift) — mốc PRE lão hoá sau MỖI deploy. 🔑 phân rã 49+588 khớp cơ-chế 2-site skip-existing (588=49×12 role). ⚠️ PERM row ≠ policy. 🔑 A5 restart ×2 thật + soi ĐIỀU KIỆN log trong source TRƯỚC khi đọc im-lặng (if (added>0)). 🔴 marker lead gợi ý BỊ BÁC BẰNG ĐO (Kết cấucó sẵn ⇒ 1/1 = 0 bit). verbatim →runs/…/sub-cicd-verify-k4ab.md)