aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-13 09:16:39 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-13 09:16:39 +0200
commitb7da41445d89cc83e749ec19c57e321ceb6d5cf2 (patch)
tree6c3f8649b4c8dc25e1de0478b6a4358d65a6bd54 /test
parentac277cd1aaa47401b4a4c205b54c2faf88938c73 (diff)
downloadcolitur-b7da41445d89cc83e749ec19c57e321ceb6d5cf2.tar.gz
colitur-b7da41445d89cc83e749ec19c57e321ceb6d5cf2.zip
temporal(ef): fix round 1 (F3) -- give Holy Family a primary-sourced Latin name
On 7,197 of the 8,417 days Holy Family occurs (every year that isn't the 13-January collision), every emitted byte was identical to the pre-change binary -- subject appeared in no output path the CLI or any test read. Celebration.make already takes ?names, defaulting to empty, and Temporal_ef.build never passed it. build now takes an optional ?names, set only on Holy Family's own branch: a LATIN name, not English. The oracle's own observed-identity axis (test_oracle.ml) reads only `en`, so this is deliberately invisible to it -- an English name here would mean reading missalemeum's own title text, the oracle this exact axis is compared against, to decide colitur's "ground truth" name: the "expected value promoted from actual output" vacuity flavour this project's review process watches for. Latin has no such circularity: the calendarium's own January table and the Mass propers' own heading, both photographic scans, word for word, "Sanctae Familiae Iesu, Mariae, Ioseph" -- the same genitive-title convention test_names.ml's own worked example already uses for Easter ("Dominica Resurrectionis"). Every other temporal-cycle candidate, including the neighbouring Sundays, still carries no name of any kind -- a targeted addition for the one day this task built, not a claim that the general gap (register's own open item on Holy Name of Jesus, RG 17(a)) is closed.
Diffstat (limited to 'test')
-rw-r--r--test/test_temporal_ef.ml16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/test_temporal_ef.ml b/test/test_temporal_ef.ml
index 7837fb5..8a0f38e 100644
--- a/test/test_temporal_ef.ml
+++ b/test/test_temporal_ef.ml
@@ -175,6 +175,9 @@ let rank_of dt = V.rank_to_string (office dt).Cel.rank
let colour_of dt = Colr.to_string (office dt).Cel.colour
let subject_of dt = (office dt).Cel.subject
let temporal_week dt = (T.temporal dt).Colitur_kernel.Temporal.week
+let la = Colitur_kernel.Lang.of_string_exn "la"
+let en = Colitur_kernel.Lang.of_string_exn "en"
+let name_la_of dt = Colitur_kernel.Names.find (office dt).Cel.names la
(* RG 17(b) (Caput III, "De Dominicis"), primary text (scan-verified,
docs/research/rules-register.md ยง4): "festum S. Familiae Iesu, Mariae,
@@ -207,6 +210,19 @@ let test_holy_family () =
classis\" -- the mystery of the Holy Family touches Christ)"
true
(subject_of (d 2026 1 11) = Sub.Lord);
+ (* fix round 1 (coordinator finding 3): a primary-sourced LATIN name,
+ zero circularity (the calendarium's own January table and the Mass
+ propers' own heading, both photographic scans, word for word:
+ "Sanctae Familiae Iesu, Mariae, Ioseph"). No ENGLISH name -- deliberate
+ (temporal_ef.ml's own comment), and every OTHER temporal-cycle
+ candidate still carries no name of any kind. *)
+ Alcotest.(check (option string)) "2026: Latin name from the calendarium/propers, verbatim"
+ (Some "Sanctae Familiae Iesu, Mariae, Ioseph") (name_la_of (d 2026 1 11));
+ Alcotest.(check (option string)) "2026: no English name (deliberate -- would read the oracle it is \
+ compared against)"
+ None (Colitur_kernel.Names.find (office (d 2026 1 11)).Cel.names en);
+ Alcotest.(check (option string)) "2026: an ordinary neighbouring Sunday carries no Latin name either"
+ None (name_la_of (d 2026 1 18));
(* 2019: Epiphany itself is a Sunday, so the first Sunday AFTER it is the
LATEST possible date, 13 January -- the one date Holy Family collides
with the fixed Commemoration of the Baptism of the Lord (data/ef/