summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/bootstrap_lectionary.ml70
1 files changed, 70 insertions, 0 deletions
diff --git a/tools/bootstrap_lectionary.ml b/tools/bootstrap_lectionary.ml
index 7df290b..1e9b8ed 100644
--- a/tools/bootstrap_lectionary.ml
+++ b/tools/bootstrap_lectionary.ml
@@ -637,6 +637,75 @@ let trinity_week_entries =
lectionary has been bitten by before. *)
[ "monday"; "tuesday"; "wednesday"; "friday"; "saturday" ]
+(* RG 299's own escape clause, second instance (celebrant-rubrics-phase1,
+ Bug 2, 2026-08-22). The Proprium de Tempore carries an explicit
+ marginal rubric immediately after the Ascension's own Mass propers,
+ before "Dominica post Ascensionem" begins (scan1.txt:20749-20754, both
+ scans corroborate): "Diebus a feria VI post Ascensionem usque ad
+ feriam VI ante vigiliam Pentecostes inclusive, dicitur Missa de festo
+ Ascensionis, cum Gloria et praefatione de Ascensione, sine Credo et
+ Communicantes proprio" -- on the days from the Friday after the
+ Ascension until the Friday before the Vigil of Pentecost INCLUSIVE,
+ the MASS OF THE FEAST OF THE ASCENSION is said (with the Gloria and
+ the Ascension preface, without the Creed and the proper
+ Communicantes). Corroborated independently by RG 490(b) (LT.txt:3981-
+ 3985), which assigns the Ascension preface "tamquam de Tempore" to
+ every Mass in that same window lacking a proper preface of its own --
+ consistent only if the Mass repeated there is the Ascension's own,
+ not a numbered Sunday's (which would need no preface override at
+ all).
+
+ Witnessed directly, not merely inferred from the rubric: the LMS Ordo
+ prints "Mass of the Ascension" literally, across all three fixture
+ windows this project has built (2023-2024: 1 day; 2024-2025: 3 days;
+ 2025-2026: 2 days -- data/ef/expected-divergences-lms.sexp's own L2,
+ closed by this entry), on EVERY affected day in BOTH the remainder of
+ Ascension's own week and the following week, not only the first --
+ ruling out the alternative reading that the second week instead
+ resumes "Dominica post Ascensionem"'s own Mass. The FIUV Ordo's own
+ title convention for these days (2025-2026 fixture, 2026-05-21/22,
+ "Feria V/VI Dom. post Ascensionem, De ea") could look like the
+ opposite at a glance -- it is not: FIUV's title names which WEEK a
+ feria belongs to (a bookkeeping label, the same role colitur's own
+ week-numbered slug plays), while its own [praef] field for those
+ exact two days independently reads "Ascensionis", confirming the Mass
+ actually said is still the Ascension's, exactly as the marginal
+ rubric and RG 490(b) both require.
+
+ The window's two Saturdays (Easter+41, Easter+48) are DELIBERATELY
+ NOT given entries here. Easter+48 is the Vigil of Pentecost, a named
+ day with its own Mass ({!Rite_ef.Temporal_ef.named}), outside the
+ rubric's own "usque ad feriam VI" upper bound. Easter+41 is an
+ ordinary IV-class Saturday, so {!Rite_ef.Lectionary_ef.readings}'s
+ own RG 78/RG 309(a) votive-Mass-of-Our-Lady-on-Saturday branch ALWAYS
+ intercepts it before step 2 is ever reached (checked directly:
+ [is_bvm_saturday_office] fires unconditionally on any unoccupied
+ Class4 Saturday, which every ordinary Paschaltide Saturday is) -- an
+ entry for either Saturday slug would be dead data that
+ [assert_reachable] cannot catch (both slugs it would name ARE real,
+ reachable Temporal_ef offices; the shadowing happens one level up, in
+ [readings]' own step ordering, not in slug reachability).
+
+ Six ferias, matching the Ascension's own citation already given above
+ (Act. 1, 1-11 / Marc. 16, 14-20, scan1.txt:20701-20730,
+ [ef-ascension]'s own entry): the one remaining non-Saturday day of
+ Ascension's own week (Easter+40) and the five weekdays of the
+ following week (Easter+43..47), bounded above by that week's own
+ Friday -- the Saturday after it is the Vigil of Pentecost, named,
+ never reaching this table. *)
+let ascension_week_citations = pair ~first:"Acts 1:1-11" ~gospel:"Mark 16:14-20"
+
+let ascension_week_entries =
+ List.map
+ (fun slug -> (slug_or_die slug, ascension_week_citations))
+ [ "ef-easter-6-friday";
+ "ef-easter-7-monday";
+ "ef-easter-7-tuesday";
+ "ef-easter-7-wednesday";
+ "ef-easter-7-thursday";
+ "ef-easter-7-friday"
+ ]
+
let epiphanytide_opening_entries =
List.concat_map
(fun (family, wds, cs) ->
@@ -789,6 +858,7 @@ let () =
translated @ vigil_entries @ holy_week_entries @ passion_tuesday_entry
@ ember_saturday_corrections @ nativity_octave_entries @ holy_name_entries
@ epiphanytide_opening_entries @ trinity_week_entries @ movable_feast_entries
+ @ ascension_week_entries
in
assert_reachable entries;
let lect =