diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-15 03:40:19 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-15 03:40:19 +0200 |
| commit | b0ff86ae552b90613be21c52433f4180deba7758 (patch) | |
| tree | 5d3e41886ded15231da10d06659eb24cc106650f /data/ef/lectionary.sexp | |
| parent | 459d2c74711e6a152fb338f88d2327f12180b61f (diff) | |
| download | colitur-b0ff86ae552b90613be21c52433f4180deba7758.tar.gz colitur-b0ff86ae552b90613be21c52433f4180deba7758.zip | |
test(differential): fix round 1 -- Holy Week, Lent Ember, RG 69
Two Critical findings, both real: Holy Week (including the entire Sacred
Triduum) was reading Passion Week's Masses -- the original colitur_keys
widened lectio's single, conflated ini section into both weeks instead of
Passion week alone. Narrowed to Passion week only; Holy Week's own four
cleanest days (Monday, Tuesday, Thursday, Saturday) are hand-authored
directly from the Missal, verified twice against both scans (C23); Holy
Wednesday and Good Friday are genuinely multi-lesson liturgies with no
single Epistle slot and are deliberately left unanswered, not guessed (C24).
The Lenten Ember days were still dead keys: Temporal_ef computes
ef-lent-ember-{wed,fri,sat}, lectio's ini names the same data
ef-lent-1-{wednesday,friday,saturday}, and colitur_keys never translated
it -- both engines independently fell through to the same wrong ferial
answer, so even the differential stayed green (C22, a genuine lectio bug
recorded for upstream). Fixed the instance and the class: colitur_keys
gained the rename, and tools/bootstrap_lectionary.ml gained
assert_reachable, sweeping Rite_ef.Temporal_ef.temporal at generation time
so a translation table entry naming a slug colitur never computes dies
loudly instead of shipping silently, plus an informational log of every
real slug with no entry at all.
C21 ("colitur's step 3 cannot reach a correct answer for the fixed
Christmastide slugs") is retired, superseded rather than merely patched:
the Nativity-Octave days now have their own direct Missal formulary
(Tit. 3,4-7/Luc. 2,15-20, "Diebus infra octavam Nativitatis Domini"),
resolved at step 2, not step 3 at all. That surfaced a real RG 69 gap
underneath it: a Sunday landing 26-31 December should keep its own Office,
not the fixed weekday placeholder, which Temporal_ef does not currently
distinguish. C6's verdict is re-opened (open, not colitur) for the 19 of
its 138 rows where this applies directly, and a new entry C25 (57 rows)
records the same gap propagating one hop further through step 3 into Holy
Name week. Both are out of this task's own scope -- a behaviour change to
a shared, multi-round-reviewed kernel-adjacent function -- and recorded,
not fixed, per the coordinator's own instruction.
C6's own note is rewritten in full rather than layered with another
correction; C18's stale trailing count is fixed to match its own pin; the
Vigil-misapplication risk flagged as a Minor closed itself once the
Nativity-Octave fix landed, confirmed by inspection rather than assumed.
dune test: 358/358. COLITUR_EXHAUSTIVE_SWEEP=1 dune test --force: 359/359.
Diffstat (limited to 'data/ef/lectionary.sexp')
| -rw-r--r-- | data/ef/lectionary.sexp | 62 |
1 files changed, 35 insertions, 27 deletions
diff --git a/data/ef/lectionary.sexp b/data/ef/lectionary.sexp index 41504c1..75b6ad4 100644 --- a/data/ef/lectionary.sexp +++ b/data/ef/lectionary.sexp @@ -1,15 +1,20 @@ ; data/ef/lectionary.sexp -- EF (1962) temporal lectionary (Epistle + ; Gospel citations, never scripture text), bootstrapped from lectio. ; Generator: tools/bootstrap_lectionary.ml -- do not hand-edit; re-run the -; generator against a newer lectio and commit the diff instead. +; generator against a newer lectio and commit the diff instead. Every +; emitted key is asserted, at generation time, to be a slug +; Rite_ef.Temporal_ef actually computes (see this generator's own +; [assert_reachable]) -- a dead key cannot ship silently again. ; ; Source: ../lectio/internal/caldata/tridentine-lectionary.ini ; SHA-256: fde533289fb620fea33386b0a3e733ada3c1d01f10a36d8a7f5a2b500c92740e -; 128 entries (119 ini sections translated/widened into colitur's own +; 129 entries (119 ini sections translated/widened into colitur's own ; Temporal_ef vocabulary via [colitur_keys]; 1 hand-authored from a -; second source file [vigil_entries]; 1 derived from an already- +; second source file [vigil_entries]; 4 hand-authored directly from +; the Missal [holy_week_entries]; 3 hand-authored directly from the +; Missal [nativity_octave_entries]; 1 derived from an already- ; translated entry above rather than re-typed [derived_entries] -- -; see this generator's own comments on all three). Regenerate with: +; see this generator's own comments on all five). Regenerate with: ; eval $(opam env) && dune exec tools/bootstrap_lectionary.exe -- ../lectio/internal/caldata/tridentine-lectionary.ini data/ef/lectionary.sexp ((ef-advent-2-monday (((part First) (reference "Rom 15:4-13")) @@ -128,24 +133,15 @@ (ef-holy-name-sunday (((part First) (reference "Gal 4:1-7")) ((part Gospel) (reference "Luke 2:33-40")))) - (ef-lent-1-friday - (((part First) (reference "Ezech 18:20-28")) - ((part Gospel) (reference "John 5:1-15")))) (ef-lent-1-monday (((part First) (reference "Ezech 34:11-16")) ((part Gospel) (reference "Matt 25:31-46")))) - (ef-lent-1-saturday - (((part First) (reference "1 Thess. 5:14-23")) - ((part Gospel) (reference "Matt 17:1-9")))) (ef-lent-1-thursday (((part First) (reference "Ezech 18:1-9")) ((part Gospel) (reference "Matt 15:21-28")))) (ef-lent-1-tuesday (((part First) (reference "Isa 55:6-11")) ((part Gospel) (reference "Matt 21:10-17")))) - (ef-lent-1-wednesday - (((part First) (reference "3 Kgs. 19:3-8")) - ((part Gospel) (reference "Matt 12:38-50")))) (ef-lent-2-friday (((part First) (reference "Gen 37:6-22")) ((part Gospel) (reference "Matt 21:33-46")))) @@ -209,6 +205,15 @@ (ef-lent-after-ashes-thursday (((part First) (reference "Isa 38:1-6")) ((part Gospel) (reference "Matt 8:5-13")))) + (ef-lent-ember-fri + (((part First) (reference "Ezech 18:20-28")) + ((part Gospel) (reference "John 5:1-15")))) + (ef-lent-ember-sat + (((part First) (reference "1 Thess. 5:14-23")) + ((part Gospel) (reference "Matt 17:1-9")))) + (ef-lent-ember-wed + (((part First) (reference "3 Kgs. 19:3-8")) + ((part Gospel) (reference "Matt 12:38-50")))) (ef-lent-sunday-1 (((part First) (reference "2 Cor. 6:1-10")) ((part Gospel) (reference "Matt 4:1-11")))) @@ -227,6 +232,15 @@ (ef-nativity (((part First) (reference "Heb 1:1-12")) ((part Gospel) (reference "John 1:1-14")))) + (ef-nativity-octave-day-5 + (((part First) (reference "Tit. 3, 4-7")) + ((part Gospel) (reference "Luc. 2, 15-20")))) + (ef-nativity-octave-day-6 + (((part First) (reference "Tit. 3, 4-7")) + ((part Gospel) (reference "Luc. 2, 15-20")))) + (ef-nativity-octave-day-7 + (((part First) (reference "Tit. 3, 4-7")) + ((part Gospel) (reference "Luc. 2, 15-20")))) (ef-nativity-vigil (((part First) (reference "Rom 1:1-6")) ((part Gospel) (reference "Matt 1:18-21")))) @@ -254,24 +268,18 @@ (ef-passiontide-1-wednesday (((part First) (reference "Lev 19:1-2, 11-19, 25")) ((part Gospel) (reference "John 10:22-38")))) - (ef-passiontide-2-friday - (((part First) (reference "Jer 17:13-18")) - ((part Gospel) (reference "John 11:47-54")))) (ef-passiontide-2-monday - (((part First) (reference "Jonas 3:1-10")) - ((part Gospel) (reference "John 7:32-39")))) + (((part First) (reference "Isai. 50, 5-10")) + ((part Gospel) (reference "Io. 12, 1-9")))) (ef-passiontide-2-saturday - (((part First) (reference "Jer 18:18-23")) - ((part Gospel) (reference "John 12:10-36")))) + (((part First) (reference "Col. 3, 1-4")) + ((part Gospel) (reference "Matt. 28, 1-7")))) (ef-passiontide-2-thursday - (((part First) (reference "Dan 3:25, 34-45.")) - ((part Gospel) (reference "Luke 7:36-50")))) + (((part First) (reference "1 Cor. 11, 20-32")) + ((part Gospel) (reference "Io. 13, 1-15")))) (ef-passiontide-2-tuesday - (((part First) (reference "Jer 11:18-20")) - ((part Gospel) (reference "Mark 14:32-72; 15, 1-46")))) - (ef-passiontide-2-wednesday - (((part First) (reference "Lev 19:1-2, 11-19, 25")) - ((part Gospel) (reference "John 10:22-38")))) + (((part First) (reference "Ier. 11, 18-20")) + ((part Gospel) (reference "Mark 14, 32-72; 15, 1-46")))) (ef-pentecost (((part First) (reference "Acts 2:1-11.")) ((part Gospel) (reference "John 14:23-31.")))) |
