diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-25 15:35:59 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-25 15:35:59 +0200 |
| commit | 6559a9b19451ce82a7d71281e25899acbcee2d49 (patch) | |
| tree | 50474427ffa3f0403ce8f42998ec3aaf018af303 /lib/kernel/date.ml | |
| parent | 73cdea4403e02e356e6eb2abaa7a96845d3b050c (diff) | |
| download | colitur-6559a9b19451ce82a7d71281e25899acbcee2d49.tar.gz colitur-6559a9b19451ce82a7d71281e25899acbcee2d49.zip | |
feat(of): Phase 1 of the OF rite module — vocab_of, temporal_of
The first code for a second rite. lib/rites/rite_of/vocab_of implements
the OF's five-way rank vocabulary (Sollemnitas/Festum/Memoria_obligatoria/
Memoria_ad_libitum/Feria) and five-season vocabulary (Advent/Christmas/
Lent/Easter/Ordinary_time), each constructor cited against the 2002
Missale Romanum's Normae universales and the Tabula dierum liturgicorum.
temporal_of implements season boundaries, week numbering — including
Ordinary Time's own two-block resumption, derived from the Missale's own
"HEBDOMADA I/XXXIV 'per annum'" headings and empirically verified across
the whole 1583-9999 domain — named temporal days, and Sunday/ferial
slugs. Both satisfy Colitur_kernel.Temporal.RITE with no kernel change.
No Rite.t is assembled and no CLI wiring is added (Phase 2's own scope);
lib/rites/rite_ef and data/ef are untouched, verified byte-identical
against the v1.0.0 tag across a domain-spanning sample.
test/test_temporal_of.ml adds unit tests for every boundary and named day
plus seven QCheck properties (seasons contiguous, Ordinary Time weeks in
1..34, Advent always four Sundays, slug uniqueness, weekday agreement,
determinism, consecutive liturgical years partition civil time), with a
committed exhaustive sweep mirroring test_validate.ml's own convention.
Full account, including the Ordinary Time derivation's evidence and a
list of EF concepts that do not carry over, in
.superpowers/sdd/of-phase1-report.md (untracked, gitignored).
Diffstat (limited to 'lib/kernel/date.ml')
0 files changed, 0 insertions, 0 deletions
