Naša metodologija kalendara
Naš kalendarski mehanizam kombinira determinističke astronomske i vjerske algoritme s kontinuiranom provjerom u odnosu na primarno vladino zakonodavstvo i statutarne uredbe.
1. Deterministički višeslojni kalendarski mehanizam
Državni praznici diljem svijeta prate različite matematičke i kulturne sustave. Naš cjevovod modelira četiri primarna kalendarska mehanizma:
Fiksni gregorijanski datumi: Nacionalni praznici i povijesne obljetnice koje padaju na fiksne datume u kalendaru (npr. 4. srpnja, 1. siječnja).
Astronomski i ekvinocijski izračuni: Solsticiji, ekvinociji i solarni termini izračunati pomoću preciznih nebeskih koordinata.
Mjesečevi i lunisolarni kalendari: Islamski hidžretski kalendar, kineska Lunarna nova godina, Diwali i budistički praznici izračunati putem standardnih modela vidljivosti mjesečevih mijena i provjereni prema proglasima nacionalnih vjerskih vlasti.
Algoritmi izračuna Uskrsa (Computus): Ciklusi zapadnog (gregorijanskog) i istočnog pravoslavnog (julijanskog) Uskrsa i njihovi ovisni pomični blagdani (Veliki petak, Uzašašće, Ponedjeljak nakon Duhova, Tijelovo).
2. Zakonski propisi i službeni dekreti
Matematički modeli daju sirove datume, ali zakoni propisuju zakonski odmor. Unakrsno provjeravamo svaku izračunatu pojavu s primarnim pravnim instrumentima: nacionalnim radnim zakonima, parlamentarnim aktima, službenim državnim glasilima i izvršnim uredbama.
Tamo gdje standardne biblioteke izostavljaju zakonske reforme ili koriste zastarjela pravila, naš registar ručnih iznimaka (data/holiday-overrides.ts) primjenjuje provjerene zakonske ispravke.
3. Zamjenski dani i modeliranje pomaka vikenda
Jedan od najvažnijih aspekata planiranja praznika jest utvrđivanje što se događa kada se zakonski praznik poklopi s vikendom.
Naš mehanizam sustavno kodira nacionalna pravila kompenzacije: automatska pomicanja na sljedeći ponedjeljak (npr. UK, Australija, SAD), pomicanja na prethodni petak ili pravila sljedećeg dostupnog radnog dana (npr. Albanija, Južna Afrika), čime se osigurava točan broj radnih dana.
4. Kontinuirane zakonske revizije i testiranje regresije
Kalendar svake zemlje podliježe automatskoj provjeri snimaka stanja (npm run holidays:validate:snapshots) kako bi se spriječila regresija, dok naš cjevovod za kontinuirano praćenje prati novo donesene zakone, jednokratne bankovne praznike te kraljevske ili predsjedničke dekrete diljem svijeta.