Lab · Lịch pháp · Báo cáo kỹ thuật

Báo cáo Audit & Vá Lỗi Engine Lịch Pháp

Thập Nhị Trực · Nhị Thập Bát Tú · T9/2026 · bản Markdown

Audit lớp Hoàng lịch (Thập Nhị Trực, Nhị Thập Bát Tú) trên cùng lõi thiên văn đã đối chiếu NASA. Âm lịch, Can Chi ngày, Hoàng/Hắc đạo, nạp âm và tiết khí đúng; hai trường Trực và Tú lệch cùng một bậc — không phải lỗi ngẫu nhiên từng ngày.

Đối chiếu độc lập 01/09/2026 (giờ Việt Nam): Mậu Dần – Thiên Hình Hắc Đạo – Trực Phá – sao Thất (Thất Hỏa Trư). Engine cũ trả Nguy + Bích.


1. Lỗi Thập Nhị Trực — truyền số tháng thay vì chi tháng tiết khí lệch +1

Triệu chứng

01/09/2026 (âm 20/7, chi ngày Dần) ra Trực Nguy thay vì Phá. Chuỗi Kiến → … → Phá → Nguy lệch đúng một bậc.

Nguyên nhân

getDayOfficer(chi_ngày, chi_tháng) nhận lunar.month (1–12). Tháng Bảy bị đọc như Mùi (index 7) trong khi tháng tiết khí lúc đó là Thân (index 8, sau Lập Thu). Công thức index = (chi_ngày − chi_tháng + 12) mod 12 vì thế lệch +1. Scoring engine còn dùng (solarMonth + 1) % 12 từ tháng dương lịch Gregorian — tháng 9 DL không phải tháng Thân.

Quy tắc đúng

Ngày có chi trùng chi tháng tiết khí (Lập Xuân = Dần) là Trực Kiến, rồi tiến một trực mỗi ngày.

Patch


2. Lỗi Nhị Thập Bát Tú — epoch JDN lệch một ngày lệch +1

Triệu chứng

Cùng ngày ra sao Bích thay vì Thất (室, Thất Hỏa Trư). Cả 28 tú lệch +1.

Nguyên nhân

Comment ghi «01/01/1995 (Chủ Nhật) = sao Hư» nhưng hằng MANSIONS_EPOCH_JDN = 2449718 — đó là JDN của 31/12/1994. jdFromDate(1, 1, 1995) = 2449719.

Công thức

index = (JDN − 2449719 + 10) mod 28 (epoch Hư = index 10). Đây là chu kỳ nhật tú lịch dân sự, không phải vị trí thiên văn thực của Mặt Trăng.

Patch

MANSIONS_EPOCH_JDN = 2449719. Ngày sau 01/09/2026 mới là Bích — đúng output cũ của engine.


3. Golden 01/09/2026 (VN)

Hạng mục Trước vá Sau vá / đối chiếu
Âm lịch 20/7 năm Bính Ngọ 20/7 năm Bính Ngọ
Can chi ngày Mậu Dần Mậu Dần
Hoàng/Hắc đạo Thiên Hình Hắc Đạo Thiên Hình Hắc Đạo
Thập Nhị Trực Nguy Phá
Nhị Thập Bát Tú Bích Thất (Thất Hỏa Trư)
Nạp âm Thành Đầu Thổ Thành Đầu Thổ
Tiết khí Xử Thử Xử Thử

Câu chuẩn: Xét theo hệ Hoàng Đạo – Hắc Đạo, ngày 1/9/2026 là ngày Thiên Hình Hắc Đạo. Trong hệ Thập Nhị Trực, đây là ngày Trực Phá. Theo Nhị Thập Bát Tú, ngày ứng với sao Thất (Thất Hỏa Trư). Ngày Mậu Dần mang nạp âm Thành Đầu Thổ, thuộc hành Thổ. Âm lịch: ngày 20 tháng Bảy năm Bính Ngọ. Tiết khí: Xử Thử.


4. Không phải bug thiên văn

Sóc Meeus vs NASA, λ☉ phân–chí abridged VSOP87 (~0.5°), Tết VN≠CN do gấp ngày UTC+7/+8 — đã audit riêng (NASA_PARITY_AUDIT, Astro Tools). Lỗi T9/2026 nằm ở neo lịch dân sự (chi tháng tiết khí + JDN epoch), không phải ephemeris.


Tổng kết

Hai offset độc lập cùng lệch +1 nên Almanac API trông như «cả khối Hoàng lịch sai một ngày». Đã khóa bằng truc-xiu.test.cjs (23 assert) trong suite calendar-engine. Lõi Sóc / tiết khí / Can Chi ngày không đổi.

→ Mở Quizzman Calendar · Về công cụ · Markdown · Audit Tử Vi

sw·362684