diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-17 21:12:35 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-17 21:12:35 +0200 |
| commit | dcce3a5936c2232aaabbb2e8552be24ea7decdbf (patch) | |
| tree | 98a55dd0fba8435ba4c832244b1b103f4f1c2be6 /tools | |
| parent | d8ce8c3806111e1d1ba54d2ef99a8ae550c7567b (diff) | |
| download | colitur-dcce3a5936c2232aaabbb2e8552be24ea7decdbf.tar.gz colitur-dcce3a5936c2232aaabbb2e8552be24ea7decdbf.zip | |
fix(lectionary): the week after Trinity says its own assigned Mass
RG 299 located (scan1:1096-1098), which does two things at once.
First it closes a standing gap: the ferial-Mass selection rule was
recorded in the register as unconfirmed against the primary source, and
step 3 said so in its own comment -- "lectio's own observed behaviour,
not a confirmed Missal citation". It is confirmed now. "In reliquis
feriis dicitur Missa dominicae praecedentis, nisi a rubricis aliter
provisum sit", restated in the propers as "...nisi propria Missa
assignetur".
Second, that escape clause splits M26 shape 2 in half, which is why the
shape was never resolvable as one thing.
Shape 2(a), the week after Trinity, is fixed. Trinity is the temporal
identity of its own Sunday, so a plain walkback lands on Trinity's Mass
-- but the Missal prints a named formula for the following week, "Missa
dominicae I post Pentecosten" (scan1:21758), precisely because the feast
has taken that Sunday's own. Those ferias now resolve at step 2 from it
and never reach the walkback.
Shape 2(b), Christ the King's week, turns out not to be a bug at all. No
proper Mass is assigned there -- checked directly, no rubric precedes
that Mass heading (scan1:39163ff) -- so RG 299's default governs and "the
Mass of the preceding Sunday" genuinely is Christ the King's own, which
is what colitur emits and missalemeum does not. Kept open only because no
rubric specific to that week was located either way; the verdict is now
argued from the primary text rather than resting on oracle disagreement.
No Thursday in the slug list: Corpus Christi is Easter+60, which IS that
week's Thursday every year, so the ferial slug never exists. Found by the
bootstrap's own reachability guard refusing to emit a key no Temporal_ef
slug can match, not reasoned out in advance.
Allow-lists: C35 opened (69 rows, verdict colitur -- lectio still walks
back); C17 narrowed 406 to 397, nine Saturdays moving to C35 because they
carry both a citation and a colour difference, with C35 gated to require
the citation so a colour-only Saturday still falls to C17; M26 narrowed
30 to 27; M18 widened 352 to 355, the same three days keeping only their
observed-identity difference.
Register: section 6.11.
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/bootstrap_lectionary.ml | 40 |
1 files changed, 39 insertions, 1 deletions
diff --git a/tools/bootstrap_lectionary.ml b/tools/bootstrap_lectionary.ml index 7fb186d..7df290b 100644 --- a/tools/bootstrap_lectionary.ml +++ b/tools/bootstrap_lectionary.ml @@ -599,6 +599,44 @@ let epiphanytide_weekday_citations = (`TimeAfterEpiphany1, non_saturday_weekdays, pair ~first:"Rom 12:1-5" ~gospel:"Luke 2:42-52") ] +(* RG 299's own escape clause, exercised (movable-date-specs follow-up, + 2026-08-17). The general ferial rule is "In reliquis feriis dicitur Missa + dominicae praecedentis, NISI A RUBRICIS ALITER PROVISUM SIT" (RG 299, + scan1.txt:1096-1098), restated in the propers as "Per totum annum, si + dicenda sit infra hebdomadam Missa de feria, adhibetur Missa dominicae + praecedentis, NISI PROPRIA MISSA ASSIGNETUR" (scan1.txt:4933-4935). + + The week after Trinity Sunday is the clearest case of that exception in the + whole year. Trinity is the temporal identity of its own Sunday, so step 3's + walkback lands on Trinity's Mass -- but the Missal prints a NAMED formula + for the week immediately after it, "Missa dominicae I post Pentecosten" + (heading, scan1.txt:21758), precisely because the Sunday's own Mass has + been taken by the feast. Its readings are "Lectio Epistolae beati Ioannis + Apostoli. 1 Ioann. 4, 8-21" (scan1.txt:21801-21802) and "Sequentia sancti + Evangelii secundum Lucam. Luc. 6, 36-42" (scan1.txt:21813-21814). + + Given directly here so these ferias resolve at STEP 2 and never reach step + 3's walkback at all -- which is both correct and the honest shape: the + Missal assigns them a Mass, so they have one, rather than inheriting one. + + This is test_oracle.ml's own M26 shape 2(a). Shape 2(b), Christ the King's + week, is NOT the same case and is deliberately not given entries here: no + proper Mass is assigned there (checked, scan1.txt:39163 ff, no rubric + precedes that Mass heading), so RG 299's DEFAULT governs and the preceding + Sunday's Mass genuinely is Christ the King's own. *) +let trinity_week_citations = pair ~first:"1 John 4:8-21" ~gospel:"Luke 6:36-42" + +let trinity_week_entries = + List.map + (fun wd -> (slug_or_die ("ef-time-after-pentecost-1-" ^ wd), trinity_week_citations)) + (* NO Thursday: Corpus Christi is Easter+60, which IS the Thursday of this + week every year without exception, so the ferial slug never exists. + Found by the generator's own reachability guard rather than reasoned + out in advance -- the guard refuses to emit a key no Temporal_ef slug + can ever match, which is precisely the silent-lookup-miss this + lectionary has been bitten by before. *) + [ "monday"; "tuesday"; "wednesday"; "friday"; "saturday" ] + let epiphanytide_opening_entries = List.concat_map (fun (family, wds, cs) -> @@ -750,7 +788,7 @@ let () = let entries = translated @ vigil_entries @ holy_week_entries @ passion_tuesday_entry @ ember_saturday_corrections @ nativity_octave_entries @ holy_name_entries - @ epiphanytide_opening_entries @ movable_feast_entries + @ epiphanytide_opening_entries @ trinity_week_entries @ movable_feast_entries in assert_reachable entries; let lect = |
