diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-18 12:36:07 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-18 12:36:07 +0200 |
| commit | 12edb255c0a2559a59578fd6b5d7784ef04bc386 (patch) | |
| tree | dac3a618fe63e91f4cf9cae4e17b264f25b8a7dc /test/test_oracle.ml | |
| parent | ca4287a6e99e14846f3560106156ef2b1c4b8cf2 (diff) | |
| parent | e07d0b1f49e1bb006b12a5e612453101d9e641a7 (diff) | |
| download | colitur-12edb255c0a2559a59578fd6b5d7784ef04bc386.tar.gz colitur-12edb255c0a2559a59578fd6b5d7784ef04bc386.zip | |
merge: sanctoral status audit and RG 113's first sentence
Two corrections argued from the Missal's own calendarium and rubrics, both
found by consulting primary sources the project already had but had not
fully read.
Diffstat (limited to 'test/test_oracle.ml')
| -rw-r--r-- | test/test_oracle.ml | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/test/test_oracle.ml b/test/test_oracle.ml index 129c43b..7ee3848 100644 --- a/test/test_oracle.ml +++ b/test/test_oracle.ml @@ -1334,6 +1334,20 @@ let m25_dates = [ "2026-03-09"; "2026-03-24"; "2027-03-01"; "2027-03-16" ] fix seen from the lectio side, and register 6.20 on the shared lineage. Spans all three oracle windows. 2026-08-09 is absent because it is a Sunday that year and the vigil never occurs; checked with `date -d`. *) +(* M30 (ef-sanctoral-status) -- `ubaldus` (16 May) and `didacus` (13 Nov), + promoted from Commemoration_only to Feast on the Missal's own universal + calendarium ("III classis" outright, no commemoration rubric, and a Mass + entry of their own in the Proprium). missalemeum keeps them as + commemorations, so on these days colitur observes the SAINT where the + oracle observes the feria: rank, observed identity and both citations + differ together, and the commemoration colitur used to emit is gone. + Colour differs only on 13 November, where the ferial green gives way to + the confessor's white; 16 May is in Paschaltide, already white. The same + population as C38 in the lectio differential -- and, as there, the oracle + here is colitur's own discarded ancestor rather than an independent + witness (register 6.20). *) +let m30_dates = [ "2026-05-16"; "2026-11-13"; "2027-11-13" ] + let m29_dates = [ "2026-08-14"; "2027-08-09"; "2027-08-14"; "2035-08-09"; "2035-08-14"; "2038-08-09"; "2038-08-14" ] @@ -1493,6 +1507,11 @@ let layer_m_reason (c : colitur_row) (o : oracle_row) diffs = && subset diffs [ Observed_identity_unresolved; First_mismatch; Gospel_mismatch ] then Some "M27" else if List.mem c.c_date m29_dates && subset diffs [ Colour_f ] then Some "M29" + else if List.mem c.c_date m30_dates + && subset diffs + [ Rank; Colour_f; Comm_presence; Comm_count; Observed_identity_mismatch; + Comm_identity_unresolved; First_mismatch; Gospel_mismatch ] + then Some "M30" else None (* ---------------------------------------------------------------------- *) @@ -1844,7 +1863,19 @@ let classify_2038 (c : colitur_row) (o : oracle_row) diffs = nh = 0 || at 0 in let first_is s = match c.c_first with Some f -> contains f s | None -> false in - if contains title "Mass of the B. V. M." then Some "BVM-SATURDAY-MASS (M26 shape 1)" + (* ef-sanctoral-status: `didacus`, promoted to Feast on the Missal's own + calendarium. 13 November 2038 is a SATURDAY, so before the promotion the + day kept RG 78's votive Office of the BVM (nothing else occupied it) and + after it the III-class feast does. Classified here explicitly, ahead of + every other branch, because without it the day falls through to the + BVM-Saturday branch and is labelled as the very office the promotion + REMOVED -- a label that would read as "still a BVM Saturday" and hide the + real cause. Same population as M30 in the 2026-2027 window and C38 in the + lectio differential. 16 May 2038 is a Sunday, so `ubaldus` is impeded and + never reaches this window at all. *) + if c.c_date = "2038-11-13" then + Some "PROMOTED-FEAST-RG-CALENDARIUM (M30, colitur; see C38)" + else if contains title "Mass of the B. V. M." then Some "BVM-SATURDAY-MASS (M26 shape 1)" else if first_is "Col 1:12-20" then Some "CHRIST-THE-KING-WEEK (M26 shape 2b)" else if diffs = [ Colour_f ] && List.mem c.c_observed_slug m21_2038_slugs then Some "COLOUR (M21)" else if first_is "Judith" then Some "JUDITH (M28, register 6.6)" @@ -2069,6 +2100,10 @@ let test_2038_class_counts () = Paschaltide. 2 of 2 possible -- neither 9 nor 14 August 2038 is a Sunday, so both vigils are actually observed that year. *) ("VIGIL-COLOUR-RG128 (M29, colitur; see C37)", 2); + (* ef-sanctoral-status: 13 November 2038 is a Saturday, so the + promoted `didacus` displaces RG 78's BVM Office there. 1 of 2 + possible: 16 May 2038 is a Sunday and `ubaldus` is impeded. *) + ("PROMOTED-FEAST-RG-CALENDARIUM (M30, colitur; see C38)", 1); ("COMM-NAME-FORM (same entity, different English name)", 2); ("COMM-ONLY-TIE-BREAK (RG-under-determined convention -- register 6.16)", 1); ("JOSEPH-ANNUNCIATION-TRANSFER-ORDER (C14's own collision)", 2); |
