From b14a3078c1a4db87010f5df955442bf1e440e0ec Mon Sep 17 00:00:00 2001 From: Lukasz Kasprzak Date: Wed, 2 Sep 2026 12:54:07 +0200 Subject: fix(of): correct ten reading references, regenerated from lectio Nine ended at verse 22 where the OLM ends them at 20; the tenth read "Matthew 17:9a,10-135", a verse Matthew 17 does not have. Every one was in a Year II entry, or in of-advent-2-saturday, which has no year cycle. Not one Year I entry was affected -- that distribution is what made this a transcription fault rather than ten independent slips. Corrected upstream in lectio's own internal/caldata/of-lectionary.ini (its suite green) and this file regenerated from it, per the header's own instruction not to hand-edit a generated artifact. The diff is exactly the source SHA-256 pin plus the ten references; both pins in test_lectionary_of.ml move with it. The Ordinary Time invariant added in the previous commit now asserts outright rather than pinning six exceptions: in Ordinary Time the OF weekday Gospel does not depend on the year of the cycle, so a -i/-ii pair whose Gospel differs is a defect, and the expected violation set is empty. Mutation-tested against the Year II entry alone -- an earlier attempt changed both halves of the pair and passed for the wrong reason, which is worth knowing about this shape of test. Measured: the 20-vs-22 divergence class against litcal goes 26 -> 0 over the twelve witnessed years. 917 tests, every year 1583-9999. Also, L6/L7 (the Sacred Heart / John the Baptist tie at an equal Tabula entry) gains the citation its note said did not exist. Tabula I.3 enumerates "Sollemnitates Domini, beatae Mariae Virginis, et Sanctorum" -- an order, not a bare category, and read that way it settles the tie against colitur's current alphabetical answer. Recorded with its counter-argument (entry 4 marks its own internal order with explicit lettering; entry 2's list cannot be an ordering at all) and with what would settle it. Verdict stays open, behaviour unchanged. --- data/of/expected-divergences-litcal.sexp | 28 ++++++++++++++++++++++++++++ data/of/lectionary.sexp | 22 +++++++++++----------- 2 files changed, 39 insertions(+), 11 deletions(-) (limited to 'data') diff --git a/data/of/expected-divergences-litcal.sexp b/data/of/expected-divergences-litcal.sexp index 633d2e0..a045415 100644 --- a/data/of/expected-divergences-litcal.sexp +++ b/data/of/expected-divergences-litcal.sexp @@ -139,6 +139,34 @@ ; RG 112(a) does on the EF side for a narrower case. NOT fixed here (a ; kernel-level tie-break policy is out of this task's own scope regardless ; of verdict). +; +; UPDATE 2026-08-28: a CANDIDATE citation has since been found, and it +; points AGAINST colitur's current answer. Tabula I.3 does not name a bare +; category; it enumerates one in a definite order -- "Sollemnitates DOMINI, +; beatae Mariae Virginis, et SANCTORUM in Calendario generali inscriptae". +; The Sacred Heart is a Solemnity of the Lord; the Nativity of St John the +; Baptist is a Solemnity of a Saint. Read as ordered, that entry puts the +; Lord first, litcal's answer is right and colitur's alphabetical tie-break +; is reaching a conclusion the text already settles. colitur's own EF side +; models exactly this shape already -- RG 91 entry 14's "primum mobilia, +; deinde fixa" is a within-entry order, and Precedence_ef.band expresses it +; by scaling the whole table x10 so a half-row sits between its neighbours. +; Precedence_of.band is scaled x10 too, so I.3 could carry 30/31/32 with no +; structural change. +; +; The counter-argument, which is why this stays OPEN rather than becoming a +; fix: Tabula entry 4 marks its own internal order with explicit a) b) c) d) +; lettering, so the drafters had a way to signal ordering and used it. Entry +; 3 is a plain "A, B, et C" list. Entry 2's own list ("Nativitas Domini, +; Epiphania, Ascensio et Pentecostes...") cannot be an ordering at all, +; since those days can never collide with each other -- which is evidence +; that a list inside an entry need not imply precedence. +; +; What would settle it: any authoritative source treating 24 June in a +; Sacred-Heart-collision year -- an ordo, a Notitiae reply, or a +; conference decree. The collision is rare (Easter must be late enough to +; put Easter+68 on 24 June) and none of the project's current witnesses +; covers such a year. Verdict stays open; behaviour unchanged. ((id L6) (citation "precedence.ml's compare_by (Slug.compare tie-break); no Tabula/Normae text found ranking Sacred Heart above/below the Nativity of John the Baptist at equal band") (verdict open) diff --git a/data/of/lectionary.sexp b/data/of/lectionary.sexp index 693b768..bf3b5eb 100644 --- a/data/of/lectionary.sexp +++ b/data/of/lectionary.sexp @@ -63,7 +63,7 @@ ; COVERAGE (5) below for the measured count. ; ; Source: ../lectio/internal/caldata/of-lectionary.ini -; SHA-256: f0b527aef58b93e6ccdfbeafe52b340ed2a9d7d72805bf5083e3da04b080123c +; SHA-256: 7b6c6a26abf222312c3000aeaae131887bbb1e2af3863c68a3e5ad005cd07ba9 ; 988 ini sections (988 expected) -> 438 resolved (base, cycle-shape) pairs -> 435 colitur slugs mapped, 3 ini bases genuinely excluded (structurally ; unreachable -- see [excluded_bases]), 0 ini bases genuinely unmapped ; (no pattern, no override, no matching sanctoral slug) -> 771 emitted @@ -215,7 +215,7 @@ ((part Gospel) (reference "Luke 5:17-26")))) (of-advent-2-saturday (((part First) (reference "Sirach 48:1-4,9-11")) - ((part Gospel) (reference "Matthew 17:9a,10-135")))) + ((part Gospel) (reference "Matthew 17:9a,10-13")))) (of-advent-2-thursday (((part First) (reference "Isaiah 41:13-20")) ((part Gospel) (reference "Matthew 11:11-15")))) @@ -929,7 +929,7 @@ ((part Gospel) (reference "Mark 1:14-20")))) (of-ordinary-time-1-monday-ii (((part First) (reference "1 Samuel 1:1-8")) - ((part Gospel) (reference "Mark 1:14-22")))) + ((part Gospel) (reference "Mark 1:14-20")))) (of-ordinary-time-1-saturday-i (((part First) (reference "Hebrews 4:12-16")) ((part Gospel) (reference "Mark 2:13-17")))) @@ -946,13 +946,13 @@ (((part First) (reference "Hebrews 2:5-12")) ((part Gospel) (reference "Mark 1:21-28")))) (of-ordinary-time-1-tuesday-ii - (((part First) (reference "1 Samuel 1:9-22")) + (((part First) (reference "1 Samuel 1:9-20")) ((part Gospel) (reference "Mark 1:21-28")))) (of-ordinary-time-1-wednesday-i (((part First) (reference "Hebrews 2:14-18")) ((part Gospel) (reference "Mark 1:29-39")))) (of-ordinary-time-1-wednesday-ii - (((part First) (reference "1 Samuel 3:1-10,19-22")) + (((part First) (reference "1 Samuel 3:1-10,19-20")) ((part Gospel) (reference "Mark 1:29-39")))) (of-ordinary-time-10-friday-i (((part First) (reference "2 Corinthians 4:7-15")) @@ -1061,7 +1061,7 @@ ((part Gospel) (reference "Matthew 7:15-20")))) (of-ordinary-time-12-wednesday-ii (((part First) (reference "2 Kings 22:8-13;23:1-3")) - ((part Gospel) (reference "Matthew 7:15-22")))) + ((part Gospel) (reference "Matthew 7:15-20")))) (of-ordinary-time-13-friday-i (((part First) (reference "Genesis 23:1-4,19;24:1-8,62-67")) ((part Gospel) (reference "Matthew 9:9-13")))) @@ -1259,7 +1259,7 @@ ((part Gospel) (reference "Matthew 17:14-20")))) (of-ordinary-time-18-saturday-ii (((part First) (reference "Habakkuk 1:12-2:4")) - ((part Gospel) (reference "Matthew 17:14-22")))) + ((part Gospel) (reference "Matthew 17:14-20")))) (of-ordinary-time-18-thursday-i (((part First) (reference "Numbers 20:1-13")) ((part Gospel) (reference "Matthew 16:13-23")))) @@ -1313,7 +1313,7 @@ ((part Gospel) (reference "Matthew 18:15-20")))) (of-ordinary-time-19-wednesday-ii (((part First) (reference "Ezekiel 9:1-7;10:18-22")) - ((part Gospel) (reference "Matthew 18:15-22")))) + ((part Gospel) (reference "Matthew 18:15-20")))) (of-ordinary-time-2-friday-i (((part First) (reference "Hebrews 8:6-13")) ((part Gospel) (reference "Mark 3:13-19")))) @@ -1745,7 +1745,7 @@ ((part Gospel) (reference "Mark 4:1-20")))) (of-ordinary-time-3-wednesday-ii (((part First) (reference "2 Samuel 7:4-17")) - ((part Gospel) (reference "Mark 4:1-22")))) + ((part Gospel) (reference "Mark 4:1-20")))) (of-ordinary-time-30-friday-i (((part First) (reference "Romans 9:1-5")) ((part Gospel) (reference "Luke 14:1-6")))) @@ -1937,7 +1937,7 @@ ((part Gospel) (reference "Mark 5:1-20")))) (of-ordinary-time-4-monday-ii (((part First) (reference "2 Samuel 15:13-14,30;16:5-13")) - ((part Gospel) (reference "Mark 5:1-22")))) + ((part Gospel) (reference "Mark 5:1-20")))) (of-ordinary-time-4-saturday-i (((part First) (reference "Hebrews 13:15-17,20-21")) ((part Gospel) (reference "Mark 6:30-34")))) @@ -2050,7 +2050,7 @@ (((part First) (reference "Sirach 17:1-15")) ((part Gospel) (reference "Mark 10:13-16")))) (of-ordinary-time-7-saturday-ii - (((part First) (reference "James 5:13-22")) + (((part First) (reference "James 5:13-20")) ((part Gospel) (reference "Mark 10:13-16")))) (of-ordinary-time-7-thursday-i (((part First) (reference "Sirach 5:1-8")) -- cgit v1.3