diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-11 14:56:02 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-11 14:56:02 +0200 |
| commit | 849ca6e118f765597e8d74272e1432a6391853c1 (patch) | |
| tree | 783a456b0ccf440e0f732d7b6f92ed6dccf76d74 /lib/kernel/computus.mli | |
| parent | 93efd2d5149e351687488935f04c37abc589729b (diff) | |
| download | colitur-849ca6e118f765597e8d74272e1432a6391853c1.tar.gz colitur-849ca6e118f765597e8d74272e1432a6391853c1.zip | |
rite(ef): give Pentecost, its Vigil and Christ the King their week
named hardcoded week = None for ef-pentecost-vigil, ef-pentecost and
ef-christ-the-king, unlike the five sibling named Sundays (Easter, Low
Sunday, Passion Sunday, Palm Sunday, Trinity), which already carry the
explicit week number that week computes for the same date. Because these
three sit inside a season run rather than at a run boundary, the omission let
the week number jump on the following Monday without an intervening Sunday
marking the change -- breaking week continuity in every single year in the
domain.
This was found by the new Validate invariant harness (Task 14), which
flagged exactly two failures in every one of the 8416 years 1583..9998, both
on the Monday after one of these days. Season contiguity itself was clean
across the whole domain; only week numbering was affected.
Pentecost and its Vigil are fixed Easter offsets, so they take the literal
values (7 and 8) that week already computes for them. Christ the King's date
varies by year, so the same expression week evaluates is inlined instead,
since week is defined later in the file and cannot be called from named.
Added a general property test, prop_named_week_agrees_with_week, checking
across 200 random years that wherever named gives an explicit week, it
matches what week independently computes for that date -- covering all
sibling entries, not just the three fixed here, so the same drift cannot
silently reappear in a future addition to named.
Diffstat (limited to 'lib/kernel/computus.mli')
0 files changed, 0 insertions, 0 deletions
