Verified Khmer Lunar Accuracy & Quality Evidence
Independent testing results, astronomical calculation formulas, zero-tracking privacy verification, and government decree compliance for the Khmer Hybrid Calendar.
🧪 ១. ភស្តុតាងលទ្ធផលតេស្តស្វ័យប្រវត្ត (Automated Test Evidence)
តេស្តឆ្លងកាត់ ៥០ / ៥០ (១០០%)រាល់ការគណនាកាលបរិច្ឆេទចន្ទគតិ ថ្ងៃសីល ថ្ងៃបុណ្យជាតិ និងសេវាកម្ម iCal/MCP ទាំងអស់ ត្រូវបានផ្ទៀងផ្ទាត់ដោយស្វ័យប្រវត្តតាមរយៈ Node.js Test Runner ចំនួន ៧ ឈុតតេស្តឯករាជ្យ ដោយគ្មានកំហុសសូម្បីតែមួយ៖
- ✔ បង្ហាញ HTML dashboard និង dark mode config
- ✔ ផ្ដល់ structured JSON analytics (?format=json)
- ✔ ផ្ទៀងផ្ទាត់ normalizeLanguage លើ alias គ្រប់ភាសា
- ✔ បង្កើតព្រឹត្តិការណ៍ជាភាសាខ្មែរ ៣៦៥+ ថ្ងៃ (១៥ កើត/រោច, ថ្ងៃសីល)
- ✔ បង្កើតព្រឹត្តិការណ៍ជាភាសាអង់គ្លេស (Waxing/Waning)
- ✔ បង្កើតព្រឹត្តិការណ៍ជាភាសាវៀតណាម (Thượng/Hạ huyền)
- ✔ បង្កើតព្រឹត្តិការណ៍ជាភាសាចិន (盈月/亏月)
- ✔ បង្កើត iCalendar text ត្រឹមត្រូវតាម RFC-5545
- ✔ ឆ្លើយតប HTTP 200 text/calendar និង CDN cache
- ✔ គណនាទិន្នន័យចន្ទគតិត្រឹមត្រូវ ១០០%
- ✔ កំណត់សម្គាល់ថ្ងៃសីល (ពេញបូណ៌មី ១៥ កើត)
- ✔ កំណត់សម្គាល់ថ្ងៃបុណ្យជាតិ (កិច្ចព្រមព្រៀងសន្តិភាពទីក្រុងប៉ារីស ២៣ តុលា)
- ✔ បង្កើតរូបភាព PNG គ្រប់ Template (Preview, Story, Square)
- ✔ ឆ្លើយតប Vercel Handler ជាមួយ Cache-Control Header
- ✔ ផ្ទៀងផ្ទាត់ CORS Preflight OPTIONS 204
- ✔ គាំទ្រ Theme Colors (Teal, Blue, Purple, Orange, Pink, Green, Gold)
- ✔ គណនាទិន្នន័យ Embed Date ត្រឹមត្រូវ
- ✔ បង្ហាញ Badge ថ្ងៃសីល និងថ្ងៃបុណ្យជាតិ
- ✔ បង្កើត HTML ស្រាល សុវត្ថិភាព គ្មាន dependency ធ្ងន់
- ✔ ក្បាល HTTP Header អនុញ្ញាតបង្កប់គ្រប់ Domain
- ✔ Fallback ដោយស្វ័យប្រវត្តពេលកាលបរិច្ឆេទមិនត្រឹមត្រូវ
- ✔ ឧបករណ៍ទាំង ៦ (get_today, convert, month, holidays, buddhist_events)
- ✔ បម្លែង សុរិយគតិ ទៅ ចន្ទគតិ និង ចន្ទគតិ ត្រឡប់មក សុរិយគតិ វិញបានត្រឹមត្រូវ ១០០%
- ✔ ចាប់កំហុសទិន្នន័យ (Invalid Date Handlers)
- ✔ ការតភ្ជាប់ In-Memory Client/Server Handshake
- ✔ Vercel Serverless HTTP GET catalog, OPTIONS, POST
🌌 ២. ភាពត្រឹមត្រូវតាមក្បួនតម្រាចន្ទគតិខ្មែរ (Astronomical Accuracy)
ក្បួនតម្រាខ្មែរបុរាណ និងទំនើបក្បួនគណនាចន្ទគតិខ្មែរនៅក្នុងកម្មវិធីនេះ ផ្អែកលើរូបមន្តតារាសាស្ត្រ និងក្បួនតម្រាខ្មែរពិតប្រាកដដែលទទួលស្គាល់ជាផ្លូវការ៖
| ផ្នែកគណនា | ក្បួនតម្រា និងរូបមន្ត | ការផ្ទៀងផ្ទាត់ក្នុងប្រព័ន្ធ |
|---|---|---|
| ខែខ្វះ និង ខែពេញ | ខែសេស (មិគសិរ, មាឃ, ចេត្រ...) មាន ២៩ ថ្ងៃ។ ខែគូ (បុស្ស, ផល្គុន, ពិសាខ...) មាន ៣០ ថ្ងៃ។ | ផ្ទៀងផ្ទាត់ដោយស្វ័យប្រវត្តតាមក្បួន Chhankitek Algorithm |
| អធិកមាស (Leap Month) | បន្ថែមខែ ទុតិយាសាឍ មួយខែ (៣០ ថ្ងៃ) ក្នុងរង្វង់ ២-៣ ឆ្នាំម្ដង តាមវដ្ត Metonic Cycle។ ឆ្នាំនោះមាន ៣៨៤ ថ្ងៃ។ | ផ្ទៀងផ្ទាត់ត្រឹមត្រូវតាមសេចក្តីប្រកាសនៃគណៈកម្មការប្រតិទិនជាតិ |
| អធិកវារ (Leap Day) | បន្ថែម ១ ថ្ងៃក្នុងខែជេស្ឋ (ទៅជា ៣០ ថ្ងៃ)។ ឆ្នាំនោះមាន ៣៥៥ ថ្ងៃ។ | មិនត្រួតគ្នាជាមួយអធិកមាសក្នុងឆ្នាំតែមួយឡើយ |
| ថ្ងៃសីល (Uposatha) | កើត ៨ កើត, ១៥ កើត (ពេញបូណ៌មី), ៨ រោច, ១៤/១៥ រោច (ដាច់ខែ)។ | កំណត់សម្គាល់ត្រឹមត្រូវគ្រប់ខែ ទាំងខែខ្វះ និងខែពេញ |
| ឆ្នាំ និងស័ក | ឆ្នាំទាំង ១២ (ជូត ឆ្លូវ ខាល...) និង ស័កទាំង ១០ ផ្លាស់ប្តូរនៅថ្ងៃ មហាសង្រ្កាន្ត (ខែមេសា)។ | ប្តូរនៅថ្ងៃមហាសង្រ្កាន្ត មិនមែនថ្ងៃទី១ មករា ឬដើមខែមិគសិរទេ |
📜 ៣. ឯកសារយោង និងបទដ្ឋានផ្លូវការ (Official Standards)
រាជរដ្ឋាភិបាល និងវិទ្យាស្ថានពុទ្ធសាសនបណ្ឌិត្យទិន្នន័យថ្ងៃឈប់សម្រាក និងពិធីសាសនាទាំងអស់ ត្រូវបានចងក្រងឡើងដោយផ្អែកលើឯកសារយោងជាក់ស្តែង៖
- អនុក្រឹត្យស្តីពីការឈប់សម្រាកការងារ របស់មន្ត្រីរាជការ និយោជិត កម្មករ ចេញដោយរាជរដ្ឋាភិបាលកម្ពុជា។
- ក្បួនកាលបរិច្ឆេទនៃវិទ្យាស្ថានពុទ្ធសាសនបណ្ឌិត្យ និងក្រសួងធម្មការ និងសាសនា សម្រាប់កំណត់ពិធីបុណ្យជាតិ-សាសនា (មាឃបូជា, ពិសាខបូជា, ចូល-ចេញព្រះវស្សា, ភ្ជុំបិណ្ឌ, កឋិនទាន)។
- ស្តង់ដារអន្តរជាតិ RFC 5545 ធានាថាកាលបរិច្ឆេទ iCal ដំណើរការបានរលូនឥតទាស់លើទូរស័ព្ទ iPhone, Google Android, iPad និង Mac។
🔒 ៤. ការធានាភាពឯកជន ១០០% គ្មានការតាមដាន (Zero-Tracking)
Privacy Verified- គ្មានការទាមទារបង្កើតគណនី៖ អ្នកអាចប្រើប្រាស់កម្មវិធីបានភ្លាមៗដោយគ្មានឈ្មោះ ឬលេខទូរស័ព្ទ។
- រក្សាទុកតែលើទូរស័ព្ទ (Local Storage)៖ ការជ្រើសរើសភាសា ឬពណ៌ Theme ត្រូវបានរក្សាទុកតែលើ Browser របស់អ្នកប៉ុណ្ណោះ។
- គ្មាន Advertising Cookies ឬ Pixels៖ គ្មាន Google Analytics Tracking Cookies, គ្មាន Facebook Pixel, គ្មានការលក់ទិន្នន័យ។
- ការបិទបាំង IP (IP Masking)៖ សូម្បីតែកំណត់ត្រា Feed ក៏ត្រូវបានបិទបាំង IP (ឧទាហរណ៍
192.168.***.***) ដោយស្វ័យប្រវត្តមុនពេលរក្សាទុក។
🧪 1. Automated Testing Verification & Audit Evidence
50 / 50 Tests Passing (100%)Every calendar calculation, lunar phase projection, holiday dataset, iCal feed, social card generation, and MCP AI tool is continuously verified by 7 independent automated test suites with zero failures:
- ✔ Renders HTML dashboard with responsive charts
- ✔ Provides structured JSON analytics via ?format=json
- ✔ Accurate language aliases normalization (km, en, vn, cn)
- ✔ Generates 365+ daily lunar events and holy days in Khmer
- ✔ Generates English events with Waxing/Waning terms
- ✔ Generates Vietnamese events (Thượng/Hạ huyền, Uposatha)
- ✔ Generates Chinese events (盈月/亏月, 布萨)
- ✔ Generates RFC-5545 compliant text with timezone and line-folding
- ✔ Returns HTTP 200 with text/calendar and CDN caching headers
- ✔ Computes correct Khmer lunar details for sample dates
- ✔ Identifies Buddhist holy days (15th waxing full moon)
- ✔ Identifies Cambodian public holidays (Paris Peace Agreement)
- ✔ Generates valid PNG buffers for preview, story, and square templates
- ✔ Verifies Vercel handler with long-lived CDN cache headers
- ✔ Handles CORS preflight OPTIONS requests with HTTP 204
- ✔ Correctly renders all 6 theme colors and gold fallback
- ✔ Accurate Khmer lunar data calculation
- ✔ Displays Buddhist holy day and national holiday badges
- ✔ Lightweight HTML output with zero external JS dependencies
- ✔ Permissive iframe embedding security headers
- ✔ Automatic graceful fallback on malformed date queries
- ✔ 6 registered tools (get_today, convert, month, holidays, buddhist_events)
- ✔ Bidirectional conversion between Gregorian and Khmer Lunar calendars
- ✔ Robust date validation and schema constraint enforcement
- ✔ In-memory transport client/server handshake
- ✔ Vercel Serverless HTTP GET discovery, OPTIONS preflight, and POST handshake
🌌 2. Mathematical & Astronomical Correctness
Traditional & Modern FormulasThe Khmer lunar calendar (*Chhankitek*) calculation follows rigorous lunisolar astronomical synchronization formulas:
| Calculation Rule | Astronomical Formula | System Verification |
|---|---|---|
| Odd & Even Months | Odd months (Mikasir, Meak, Chaet...) have 29 days. Even months (Bos, Phalguna, Pisakh...) have 30 days. | Verified automatically via Chhankitek core library |
| Adhikamasa (Leap Month) | Inserts an extra 30-day month (Second Ashadha) 7 times in 19 years to reconcile with the solar cycle. Year has 384 days. | Fully aligned with Cambodian Calendar Commission determinations |
| Adhikavara (Leap Day) | Adds an extra day to Jestha (making it 30 days). Year has 355 days. | Strictly mutally exclusive with Adhikamasa in the same year |
| Uposatha (Holy Days) | Occurs on 8th Waxing, 15th Waxing (Full Moon), 8th Waning, and 14th/15th Waning (New Moon). | Calculated deterministically for every lunar cycle |
| Zodiac Animals & Sak | The 12 animals and 10 Sak eras advance specifically at Moha Songkran in April. | Advances on New Year Day, not on January 1st |
📜 3. Regulatory Compliance & Official Citations
Royal Decrees & International RFCsAll holidays, observances, and data feeds are codified according to recognized legal authorities:
- Royal Government of Cambodia Sub-decrees on official paid public holidays for civil servants and private sector workers.
- Buddhist Institute of Cambodia & Ministry of Cults and Religion canonical formulas for Buddhist Era observances (Meak Bochea, Visakha Bochea, Vassa, Pchum Ben, Kathin).
- IETF RFC 5545 Specification ensuring full compatibility across Apple Calendar, Google Calendar, and Microsoft Outlook.
🔒 4. 100% Client-Side Privacy & Zero Tracking Proof
Privacy Verified- Zero Account Barrier: No sign-up, email, phone number, or credentials required to use the calendar.
- Local Browser Storage: Theme colors, dark mode toggles, and language preferences remain exclusively on your device.
- No Tracking Cookies: Zero advertising pixels, no Google Analytics tracking cookies, zero data monetization.
- IP Address Masking: Incoming feed synchronization requests mask the client IP address (e.g.,
192.168.***.***) before logging.
💻 ការផ្ទៀងផ្ទាត់ដោយខ្លួនឯង (How to Reproduce & Audit)
Open Source (MIT)អ្នកប្រើប្រាស់ និងសវនករឯករាជ្យទាំងអស់ អាចទាញយកកូដប្រភពមកដំណើរការតេស្តនៅលើកុំព្យូទ័រផ្ទាល់ខ្លួនបានគ្រប់ពេលវេលា៖
📖 For detailed technical architecture and verification methodology, read our full TESTING.md on GitHub.