diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-13 09:16:39 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-13 09:16:39 +0200 |
| commit | b7da41445d89cc83e749ec19c57e321ceb6d5cf2 (patch) | |
| tree | 6c3f8649b4c8dc25e1de0478b6a4358d65a6bd54 /lib/rites/rite_ef | |
| parent | ac277cd1aaa47401b4a4c205b54c2faf88938c73 (diff) | |
| download | colitur-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 'lib/rites/rite_ef')
| -rw-r--r-- | lib/rites/rite_ef/temporal_ef.ml | 41 |
1 files changed, 34 insertions, 7 deletions
diff --git a/lib/rites/rite_ef/temporal_ef.ml b/lib/rites/rite_ef/temporal_ef.ml index 0647aac..1ce9de9 100644 --- a/lib/rites/rite_ef/temporal_ef.ml +++ b/lib/rites/rite_ef/temporal_ef.ml @@ -444,9 +444,10 @@ let temporal d = let easter = Computus.gregorian_easter y in let s = season d in let weekday = Date.weekday d in - let build ?(subject = Colitur_kernel.Subject.Temporal) ~season ~slug ~colour ~rank ~week () = + let build ?(subject = Colitur_kernel.Subject.Temporal) ?(names = Colitur_kernel.Names.empty) ~season + ~slug ~colour ~rank ~week () = let office = - Colitur_kernel.Celebration.make ~slug:(Slug.of_string_exn slug) ~rank ~colour ~subject + Colitur_kernel.Celebration.make ~slug:(Slug.of_string_exn slug) ~rank ~colour ~subject ~names ~layer:"temporal" () in { Colitur_kernel.Temporal.season; week; weekday; office } @@ -508,12 +509,38 @@ let temporal d = OTHER Sunday this branch ever builds -- including the narrower Holy Name of Jesus window, RG 17(a), still unbuilt as its own named day, register §6 -- keeps - [Temporal], unaffected. *) - let subject = - if same d (holy_family_sunday y) then Colitur_kernel.Subject.Lord - else Colitur_kernel.Subject.Temporal + [Temporal] and no name, unaffected. + + [names] -- fix round 1 (coordinator finding 3): 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 -- setting an ENGLISH name + here would mean reading missalemeum's own title text + (the oracle this exact axis is compared against) to + decide colitur's own "ground truth" name, precisely the + "expected value promoted from actual output" vacuity + flavour this project's own review process watches for. + Latin has no such circularity: the calendarium's own + January table, both photographic scans, word for word: + "Dominica I post Epiphaniam: S. Familiae, Iesu, Mariae, + Ioseph, II classis" -- and the Mass propers' own heading + (also both scans): "SANCTAE FAMILIAE IESU, MARIAE, + IOSEPH, II classis", the exact string used here, the + same genitive-title convention test_names.ml's own + worked example already uses for Easter ("Dominica + Resurrectionis"). Every other temporal-cycle candidate + still carries no name at all (register §6.2's own open + item on Holy Name of Jesus, RG 17(a)) -- this is a + targeted addition for the one day this task built, not a + claim that the gap is closed generally. *) + let subject, names = + if same d (holy_family_sunday y) then + ( Colitur_kernel.Subject.Lord, + Colitur_kernel.Names.of_list + [ (Colitur_kernel.Lang.of_string_exn "la", "Sanctae Familiae Iesu, Mariae, Ioseph") ] ) + else (Colitur_kernel.Subject.Temporal, Colitur_kernel.Names.empty) in - build ~subject ~season:s ~slug ~colour ~rank ~week:(week d) () + build ~subject ~names ~season:s ~slug ~colour ~rank ~week:(week d) () | None -> ( match christmastide_feria_slug d with | Some slug -> |
