Commit Graph

1438 Commits

Author SHA1 Message Date
24566a500c [CLAUDE] Docs: S195 closeout L16 — 14 vai bookend, vá 3 ô canonical + cứu clobber-rot + trả nợ harvest S188
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 10m12s
Phiên governance thuần, 0 code product. Bookend @close chạy trọn 1 lượt (YC-018/YC-027).

14 vai: H1 8 FLAG · H2 GATE-FAIL 6 · cặp H24 deep (10+7 FLAG) · trio 3/3
(MIXED 38 trục → 4 action/18 BÁC → 50Đ/5T/15KC trên 70 claim) · ring1 41Đ/5T/19KC
· ring2 15Đ/0T/2KC · ring5 1Đ/2 xoá-án/1KC · ctx-audit TRUOT 6 FLAG · tầng-2/3 chấm.

Vá đã land:
- 3 ô SỐ canonical STATUS: Mig 73→74 · test 697→699 (45+654) · gotcha 92→93;
  bổ 3 ô vào ledger WAL TRƯỚC khi vá; lan Mig 74 sang CLAUDE.md + docs/CLAUDE.md.
- CG-1 attempt #1: cứu front-end-reviewer-style 1.192→5.913 B (clobber-rot, 4 chứng;
  harness-audit xác nhận md5 nối thuần, 0 mất).
- Trả nợ harvest S188 4 vai/42.975 B; đóng orphan S194 bằng synthesis hồi-tố.
- Vá gốc dòng rách so-yeu-cau:58-59 => máy đổi muc 28→29, hội tụ đếm tay.
- Đính chính tiền-đề SAI reinject-ledger:70 cho CẢ HAI vai (matcher DÍNH-vs-TÁCH).
- MIND-4 => mind-check --closed từ exit 1 sang exit 0.

3 RCA lỗi của lead: FAKE-VERDICT-S195 (verdict bịa cho vai chưa chạy) ·
RITUAL-ECHO-S195 (tái phạm lần 3) · SCORE-T1-S195 (đọc hụt số máy).

#53 nổ 10 lần, cứu 10/10 bằng resume-in-session.
4 vai tự phát hiện thước hỏng của chính mình — không có bước tự-falsify thì
lượt này có >=7 cáo buộc oan.

completeness-gate S195: vong 4/5 chuc-nang (khong-nhip: V4) | phep DAT 3 / TRUOT 1

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-14 11:51:33 +07:00
4ba2b16b70 [CLAUDE] Api: bỏ dấu phẩy trong tên 2 template .docx — vá MSB4186 làm CI #489 đỏ (gotcha #93)
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 9m28s
CI run #489 ĐỎ sau 2m42s ở test-gate Infrastructure — nhưng lỗi thật ở BUILD, không phải test:

  Microsoft.NET.Publish.targets(851,9): error MSB4186: Invalid static method invocation syntax:
  "[MSBuild]::MakeRelative($(MSBuildProjectDirectory), …nhan cong, vat tu.docx)". Method not found.

MSBuild property-function tách tham số bằng DẤU PHẨY ⇒ đường dẫn chứa ", " biến lời gọi
2-tham-số thành 3 ⇒ không có overload ⇒ MSB4186, chặn ngay ở build nên test chưa kịp khởi động.

🔴 LOCAL KHÔNG TÁI HIỆN ĐƯỢC: global.json để rollForward=latestFeature ⇒ CI nhảy SDK 10.0.202
còn local 10.0.104. Đo: grep -c "MakeRelative" trong Publish.targets của SDK local = 0
(control dương "ContentWithTargetPath" = 8 ⇒ thước sống) — dòng mã gây lỗi KHÔNG TỒN TẠI trên
máy dev. "Local 699 PASS" là đúng-với-local, không phải đo ẩu.

Vá: đổi tên 2 file bỏ phẩy ("nhan cong, vat tu" → "nhan cong va vat tu"), sửa 2 chuỗi seed
DbInitializer + 4 chú thích nguồn trong lib/contractBody. Control: 4 template cũ cùng thư mục
không có phẩy ⇒ CI xanh nhiều tháng; 2 file mới có phẩy ⇒ đỏ ngay run đầu; biến duy nhất = phẩy.

+ gotcha #93 + luật khắc tại chỗ trong DbInitializer: tên file dưới wwwroot CẤM chứa dấu phẩy.

Đo lại sau vá: build 0 error (bin/obj dọn sạch trước) · test 699 PASS · 0 file wwwroot còn phẩy
· 2 cặp file body002_0*.ts vẫn trùng sha256.

🔸 CHƯA vá lớp gốc (SDK drift CI⟂local): siết rollForward sang latestPatch/disable sẽ đóng cả
lớp NHƯNG runner đang có 10.0.202 — pin về 10.0.1xx mà runner không cài thì CI chết hẳn thay vì
đỏ một run. Phải đo SDK trên runner trước; quyết định của chủ dự án.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-14 04:30:51 +07:00
7663cd7e30 wal: flush 20260814T0412 2026-08-14 04:12:49 +07:00
88bdd05492 [CLAUDE] Contract: tách HĐ Thầu phụ thành 01A/01B + thân document-view + pre-fill + khoá bản cứng (YC-032)
Some checks failed
Deploy SOLUTION_ERP / build-deploy (push) Failing after 2m41s
Owner YC-032/033/034/036 — 4 vế:

1. TÁCH LOẠI: +2 ContractType (HopDongThauPhuVatTu=8 / HopDongThauPhuThietBi=9),
   họ HD-TP-VT / HD-TP-TB, menu 01A./01B. (giữ 02.-07. nguyên, loại cũ =1 legacy).
   Bịt 5 nhánh câm nuốt loại mới: WorkflowPolicy (mất trạm CCM), ContractCodeGenerator
   (sai mã RG-001, không hồi tố được), ContractDetailsFeatures x2 (bundle rỗng HTTP 200),
   SeedWorkflowDefinitions (Designer V1 rỗng). ContractDetailsHelpers.ThauPhuFamily —
   3 loại chung bảng ThauPhuDetails ⇒ 0 migration cho vế này.

2. THÂN DOCUMENT-VIEW: ContractBodyView.tsx + lib/contractBody/ (002.02 = 36 ô/2 bảng/5 điều ·
   002.03 = 46 ô/6 bảng/6 điều · PHẦN 2 dùng chung 5 điều read-only gắn CUỐI theo YC-034).
   Lưu vào Contract.DraftData lược đồ {schemaVersion,kind,body,paymentTerms}.
   Gỡ draftData:null hardcode 4/4 site — trước đây mỗi lần Lưu là xoá trắng thân HĐ.

3. PRE-FILL: cầu KHKK đổ 17 ô (Bên B · chủ đầu tư · gói thầu · số HĐ · giá trị) — 17/17 khớp
   slot.key. Địa điểm lấy pe.DiaDiem (0% rỗng) thay Project.Location (93% rỗng). Vá regression
   cầu KHKK đánh rơi PaymentTerms + BypassProcurementAndCCM so với cầu PE cũ.

4. KHOÁ BẢN CỨNG MỘT CHIỀU (YC-033 "giấy trắng mực đen"): Mig AddContractSealedAt
   (+SealedAt +SealedByUserId), set ??= (upload lần 2 không đè mốc đầu), rào 2 cửa —
   xoá đính kèm bản cứng ⇒ 409, sửa HĐ ⇒ chặn. Test-before 2 ca.
   + print CSS in trình ký (ô điền in ra thành đường kẻ, không phải khung input).

Template: 002.02/002.03 convert .doc→.docx vào wwwroot + trỏ đúng 2 loại mới (trước cùng trỏ
loại cũ ⇒ dropdown Mẫu sẽ rỗng) + reconcile IsActive giới hạn 2 FormCode (bản đầu quét toàn bộ
sẽ hồi sinh mẫu admin đã xoá mỗi restart — database-reviewer-style bắt).

Đo: build 0 error · test 697→699 PASS (+2 seal) · has-pending-model-changes = No changes ·
tsc --noEmit exit 0 x2 app · mọi cặp file 2-app sha256 trùng · Menu keys 120→122 · Policies 480→488.

NỢ ĐÃ-BIẾT (owner cố ý hoãn, không phải bỏ sót): VAT (chưa VAT, để sau) · bảng tóm tắt PHẦN 1
trỏ "xem ĐIỀU 8/12" mà 002.04 chỉ có 5 điều ⇒ con-trỏ chết · phân quyền upload bản cứng ·
12 điều PHẦN 2 không có trong tài liệu. Chưa soi: 2 vai style FE/BE (lane không tạo được artifact).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-14 04:11:20 +07:00
1e9df0c3f5 wal: flush 20260814T0402 2026-08-14 04:02:16 +07:00
a326c85d36 wal: flush 20260814T0352 2026-08-14 03:52:37 +07:00
e3d9f79cc8 wal: flush 20260814T0332 2026-08-14 03:32:44 +07:00
3a0baca1b5 wal: flush 20260814T0305 2026-08-14 03:05:11 +07:00
bebf2961c1 wal: flush 20260814T0241 2026-08-14 02:41:56 +07:00
59b118ce45 wal: flush 20260814T0211 2026-08-14 02:11:38 +07:00
171ed79d74 wal: flush 20260814T0155 2026-08-14 01:55:45 +07:00
7cf5dcfd0b wal: flush 20260814T0142 2026-08-14 01:42:18 +07:00
416ba9a777 wal: flush 20260813T2312 2026-08-13 23:12:55 +07:00
65631adb05 wal: flush 20260813T2259 2026-08-13 22:59:50 +07:00
3d01333461 wal: flush 20260813T2242 2026-08-13 22:42:59 +07:00
a4d70cc9ad wal: flush 20260813T2224 2026-08-13 22:24:47 +07:00
9d675396d9 wal: flush 20260813T2145 2026-08-13 21:45:19 +07:00
b9f2ab84bd wal: flush 20260813T2130 2026-08-13 21:30:40 +07:00
4837fffd2a wal: pause 2026-08-13 18:38:40 +07:00
2e7f83574b wal: flush 20260813T1826 2026-08-13 18:26:54 +07:00
e10adc384b wal: tiep S193 (va 4 co ctx-verifier: nha 7 cau + flush run.md) 2026-08-13 15:47:55 +07:00
f92d43c045 wal: tiep S193 (do prod live, giai xung-dot hash) 2026-08-13 15:37:11 +07:00
3c68f3dea5 wal: tiep S193 (noi mach L16 w2) 2026-08-13 15:35:45 +07:00
867865cea0 wal: pause (h24 tally light) 2026-08-13 04:24:53 +07:00
2f18f75aa2 wal: pause (h24 tally deep) 2026-08-13 04:24:40 +07:00
a5d22f52d8 wal: pause 2026-08-13 04:23:55 +07:00
2221ed1065 wal: flush 20260813T0412 2026-08-13 04:12:37 +07:00
5348fecb4c wal: flush 20260813T0400 2026-08-13 04:00:19 +07:00
657d1a6e07 wal: flush 20260813T0347 2026-08-13 03:47:56 +07:00
422cd66cbd wal: flush 20260813T0317 2026-08-13 03:17:51 +07:00
c796f716ad wal: flush 20260813T0314 2026-08-13 03:14:34 +07:00
49851f2d92 wal: flush 20260813T0301 2026-08-13 03:01:48 +07:00
8965bd65a4 wal: flush 20260813T0258 2026-08-13 02:58:10 +07:00
c493007073 wal: flush 20260813T0255 2026-08-13 02:55:26 +07:00
7d906a27ea wal: flush 20260813T0253 2026-08-13 02:53:58 +07:00
39a5776612 wal: flush 20260813T0248 2026-08-13 02:48:29 +07:00
7f64d4726e wal: flush 20260813T0241 2026-08-13 02:41:47 +07:00
af6f7625ed wal: flush 20260813T0240 2026-08-13 02:40:29 +07:00
05ddefbdd1 [CLAUDE] Docs: S191 — harness-audit (trio nấc 3) trả nợ TREO + cảnh báo ring2 PROPOSE move-set [skip ci]
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-13 02:10:39 +07:00
3529772605 [CLAUDE] Docs: CLAUDE.md — Node/CI pin khai đúng cơ-chế (ghost-wire .nvmrc, gotcha #92) [skip ci]
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-13 02:06:35 +07:00
23a7a66870 [CLAUDE] Docs: S191 ĐÓNG L15 — ring5 lật nhãn tự-ý-bỏ (RCA tái phạm) + synthesis + reset WAL [skip ci]
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-13 02:06:04 +07:00
8b126b714c [CLAUDE] Docs: S191 closeout-2 — vá F-1(d) STATUS:478 claim đã bị bác + MIND-3 (closed-check 11/0) + _end chốt L15 [skip ci]
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-13 02:01:46 +07:00
d6026b1436 [CLAUDE] Docs: S191 closeout — vá 10 FLAG H24 + gotcha #92 đổi root-cause + RCA P0-BUNDLE + 3 action refine (A7 429→432) [skip ci]
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-13 01:58:29 +07:00
305b573f5a [CLAUDE] CICD: vá GỐC #92 — npm ci theo lockfile đã commit + guard React-đơn-bản (bỏ xoá lockfile mỗi run)
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 10m22s
Root-cause 2 ca trắng màn prod (S189 #486, S191 #600): deploy.yml xoá package-lock.json
rồi npm install => mỗi run resolve lại cây theo semver range => cùng commit ra bundle khác
nhau tuỳ registry lúc build. CI vẫn exit 0 + byte-match CI-prod + smoke 200 vì mọi phép đo
đều đo FILE, không đo CHƯƠNG TRÌNH CHẠY.

- lockfile tái sinh từ cây lành đang chạy prod (thiếu @microsoft/signalr + 9 transitive
  vì lockfile cũ có từ 23/04, trước khi dự án thêm SignalR — nên 'xoá cho lành' từng hợp lý)
- npm install -> npm ci (deterministic theo lockfile) + check exit code từng bước
- GUARD-92: chặn build khi React trùng bản (đúng cơ chế useState null). Fault-inject 4 ca
  bắt được dương-giả lucide-react khớp regex trước khi push; đã neo lookbehind.
- Bundle verify runtime trên prod trước khi commit: eoffice CR538vZx + admin C10ta-wB,
  console 0 lỗi, cùng byte với bản lành (1.700.709 / 1.780.807).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-13 01:13:34 +07:00
c03955405d [CLAUDE] Docs: P0-2 eoffice trắng màn — hotfix bundle local D6lFjgKF + gotcha #92 khắc thật (runner build-env nhiễm, CẤM push code tới khi vá) [skip ci]
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-13 01:01:29 +07:00
7ebfc8c746 [CLAUDE] Docs: S191 /tiep + finish L15 — cửa ngoài-giờ (cron Gitea + cứu VR Master #88) + vá bề mặt ctx-verifier + session-log S189-S191 [skip ci]
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-13 00:45:17 +07:00
eec9ad99bf wal: pause 2026-08-12 23:11:23 +07:00
4e55a04696 [CLAUDE] Skill: YC-027 khắc RULE đủ-cửa 4/4 (pause+tiep) + STATUS row Tests 697 (cicd #600 verify)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-12 23:11:16 +07:00
39373514e7 wal: flush 20260812T2255 2026-08-12 22:55:48 +07:00
edad406f31 wal: flush 20260812T2229 2026-08-12 22:29:59 +07:00