aboutsummaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-27 00:37:45 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-27 00:37:45 +0200
commit6e62e499aed1c5a31a18bcf5e9eaa7f2b0c4ff2e (patch)
tree9650e9b60ed2c4b178f80ed10f4e7ba9a9bf572d /data
parentbf42e85ed622da5227a69c26ec801d32c767bb32 (diff)
downloadcolitur-6e62e499aed1c5a31a18bcf5e9eaa7f2b0c4ff2e.tar.gz
colitur-6e62e499aed1c5a31a18bcf5e9eaa7f2b0c4ff2e.zip
fix(of): break the movable-BVM-memorial tie per a CDWDS Notification
Mary, Mother of the Church (Easter+50) and the Immaculate Heart of Mary (Easter+69) are both movable obligatory memorials that can land on a FIXED obligatory memorial's own date -- e.g. 2011-06-13 and 2015-06-13, both against Anthony of Padua. Both candidates banded identically at Tabula III.10 (100, both universal Memoria_obligatoria), a tie band could not break, so Precedence.resolve's kernel-level alphabetical Slug.compare tie-break silently picked instead -- 892 days for Mater Ecclesiae and 1109 for the Immaculate Heart across 1583-9999, all one shape (measured against the pre-fix alphabetical order directly, zero unexplained). Searched the corpus rather than inventing a rule. colitur's two previously-checked primary sources really are silent: the 2018 decree (AAS 110, 437-438) never addresses universal-calendar coincidence, and Normae n. 14's third clause resolves only two AD-LIBITUM memorials colliding. A third source resolves it: the CDWDS's own "Notification on the Memorial of the Blessed Virgin Mary, Mother of the Church" (24 March 2018 -- same dicastery and signatories as the decree; published only on vatican.va, confirmed absent from the AAS 2018 combined index) states that when this memorial "coincides with another Memorial of a Saint or Blessed... the Memorial of the Blessed Virgin Mary is to prevail," and extends the identical reasoning to the Immaculate Heart of Mary by name. This is a rubric, not colitur's own reasoned choice. Implemented as a sub-rank of 95, strictly between Tabula entries 9 and 10 -- the same "fits between neighbours" technique this module already uses elsewhere -- scoped to the two named slugs rather than [subject = Bvm], since the Notification's own reasoning is specifically about a memorial's link to a movable solemnity of the Lord, not a blanket Marian precedence. Golden pin updated: test_rite_of.ml's 2011-06-13 tie now pins Mary, Mother of the Church as observed (was Anthony of Padua, labelled "known arbitrary"), with the header rewritten to state the outcome now rests on the Notification, not a coin-flip. The litcal oracle allow-list gains L10: litcal's own grade vocabulary has no representation for a 95 sub-rank (everything Memoria_obligatoria reads "Memorial"), a representational gap in litcal, not a computational disagreement -- the identity axis is untouched and needed no new entry.
Diffstat (limited to 'data')
-rw-r--r--data/of/expected-divergences-litcal.sexp31
1 files changed, 31 insertions, 0 deletions
diff --git a/data/of/expected-divergences-litcal.sexp b/data/of/expected-divergences-litcal.sexp
index e0b8b2a..633d2e0 100644
--- a/data/of/expected-divergences-litcal.sexp
+++ b/data/of/expected-divergences-litcal.sexp
@@ -178,3 +178,34 @@
(verdict colitur)
(note "2035-03-17 (StJoseph): the same known limitation L8 records for grade, IDENTITY axis.")
(expected_rows 1))
+
+; L10 -- W3 (of-known-wrongs, 2026-08-26). Precedence_of.band now gives the
+; two shipped movable BVM obligatory memorials (Mary, Mother of the Church;
+; the Immaculate Heart of Mary) a sub-rank of 95, strictly between Tabula
+; entries 9 and 10, rather than the ordinary 100 -- so a real collision with
+; a FIXED obligatory memorial (e.g. 2011-06-13, Mater Ecclesiae vs Anthony
+; of Padua) resolves in the Marian memorial's favour instead of falling to
+; Colitur_kernel.Precedence.resolve's own alphabetical tie-break. Cited
+; on a genuine primary source, not colitur's own invented rule: the CDWDS's
+; own "Notification on the Memorial of the Blessed Virgin Mary, Mother of
+; the Church" (24 March 2018 -- the same dicastery and signatories as the
+; 11 February 2018 decree itself; published only on vatican.va, confirmed
+; NOT in the AAS 2018 combined index) -- "In casu occurrentiae huius
+; memoriae cum alia memoria ... in casu occurrentiae cum alia memoria
+; alicuius Sancti vel Beati, ... memoria B.M.V. praevalere debet."
+;
+; litcal's own grade_lcl text is coarser than this: every
+; Memoria_obligatoria reads "Memorial" regardless of colitur's own finer
+; sub-rank, so the [100;110] bucket cannot represent 95 -- a genuine
+; representational gap in litcal's own vocabulary, not a computational
+; disagreement (the two engines still agree on WHICH day is observed; the
+; identity axis is untouched by this fix and needed no new entry). Fires on
+; every fixture row naming either entity where colitur's own band is
+; exactly 95, on ANY date that entity is observed, not only a live
+; collision date, because the sub-rank is unconditional. 15 rows over this
+; fixture's 12 years, measured directly, not guessed.
+((id L10)
+ (citation "CDWDS Notification on the Memorial of the BVM, Mother of the Church (24 March 2018); precedence_of.ml's movable_bvm_memorials")
+ (verdict colitur)
+ (note "MaryMotherChurch (11 years) and ImmaculateHeart (4 years): colitur bands both at 95 (between Tabula 9 and 10), which litcal's own coarse \"Memorial\" grade text cannot represent -- a cited design choice, not a defect.")
+ (expected_rows 15))