diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-12 13:53:22 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-12 13:53:22 +0200 |
| commit | 50e39702bad835962b6e9c04253572e5b48a951f (patch) | |
| tree | 280734635066e5c135a180db549930fa9ddec687 /internal/caldata | |
| parent | b4d44c88fe3c92c5fb06b43fe94be0049059ef6e (diff) | |
| download | lectio-50e39702bad835962b6e9c04253572e5b48a951f.tar.gz lectio-50e39702bad835962b6e9c04253572e5b48a951f.zip | |
gen-sanctoral-ef: keep the Purification tagged lord -- the brief was wrong here
Disagreement with the task brief, found and corrected before landing,
not after: the brief's defect 7 named the Purification (2 February) as
"wrongly tagged lord... a BVM feast", citing the calendarium's own
title, "IN PURIFICATIONE B. MARIAE VIRG." That citation is accurate --
but the tag's actual job is not naming or colour categorisation, it
exists solely to drive one occurrence rule ("a II-class feast of the
Lord takes an occurring Sunday's place outright"), and on THAT
question the title is not the decisive evidence.
Checked directly against missalemeum (this data's own oracle, live,
not archival): the Purification takes a II-class Sunday's place
OUTRIGHT, commemorations EMPTY (2014-02-02, 2020-02-02, 2025-02-02,
all fetched fresh) -- the exact "festum Domini" pattern. Control: the
Nativity of the BVM (8 September, an undisputed ordinary Marian
feast) on a Sunday (2019-09-08) shows the opposite shape, the Sunday
observed and the feast merely commemorated. The Purification's
occurrence behaviour does not match an ordinary BVM feast's.
Independent corroboration, found while comparing lectio's output
against colitur's (the sibling engine this task's brief points to):
colitur's own git history shows the identical retag, made and then
reversed within the same review cycle it landed in -- cab8b07 "retag
the Purification... as BVM, not Lord" (the brief's own reading),
followed by 7d3b5ec "follow the oracle on the Purification" (the
reversal, on the same live evidence independently re-derived here).
That commit records the calendarium-title counter-evidence too and
calls it "a genuinely contested point... a different project could
reasonably rule the other way" -- not a clean-cut error either
direction, but the weight of evidence for THIS tag's actual purpose
favours keeping it lord.
most-holy-name-of-mary (the OTHER entry the brief named) is untouched
by this reversal and stays retagged away from lord -- its own
occurrence behaviour matches the ordinary-BVM pattern, not contested
by either project.
internal/caldata/tridentine-calendar.ini regenerated; only the
Purification's class field changes back (empty -> lord), 6 civil days
2005-2050 (every year 2 February falls on a Sunday: 2014, 2020, 2025,
2031, 2042, 2048) revert to matching what the branch point (and
colitur's own current state) already had -- net zero change to
PUBLISHED output on this specific point relative to before this task
started, despite the intermediate wrong-then-reverted state along the
way.
Diffstat (limited to 'internal/caldata')
| -rw-r--r-- | internal/caldata/caldata_test.go | 34 | ||||
| -rw-r--r-- | internal/caldata/tridentine-calendar.ini | 1 |
2 files changed, 21 insertions, 14 deletions
diff --git a/internal/caldata/caldata_test.go b/internal/caldata/caldata_test.go index 2cf10a5..a9bc860 100644 --- a/internal/caldata/caldata_test.go +++ b/internal/caldata/caldata_test.go @@ -74,13 +74,16 @@ func TestTridentineLoads(t *testing.T) { t.Fatalf("EF sanctoral has only %d entries; expected the full calendar", len(l.Cels)) } // Landmark feasts must be present with the right rank/class: Sts Peter & Paul - // (I class, 06-29), the Purification/Presentation (II class, 02-02 -- a - // feast of the BLESSED VIRGIN, calendarium "IN PURIFICATIONE B. MARIAE - // VIRG.", NOT of the Lord; class must be empty, not "lord"), the - // Immaculate Conception (I class, 12-08). + // (I class, 06-29), the Purification/Presentation (II class, 02-02, class + // = lord -- see classOf's own doc comment in scripts/gen-sanctoral-ef.go + // for why: the calendarium's own title names the BLESSED VIRGIN, but the + // tag exists to drive OCCURRENCE behaviour, and missalemeum -- this + // data's own oracle -- shows the Purification taking a II-class Sunday's + // place outright, the "festum Domini" pattern, not the ordinary-BVM + // pattern), the Immaculate Conception (I class, 12-08). want := map[string]struct{ date, rank, class string }{ "sts-peter-paul": {"06-29", "class-1", ""}, - "purification-of-the-blessed-virgin-mary": {"02-02", "class-2", ""}, + "purification-of-the-blessed-virgin-mary": {"02-02", "class-2", "lord"}, "immaculate-conception-of-the-blessed-virgin-mary": {"12-08", "class-1", ""}, } for slug, w := range want { @@ -106,15 +109,18 @@ func TestTridentineLoads(t *testing.T) { } // TestTridentineClassOfLord: scripts/gen-sanctoral-ef.go's classOf tags -// feasts of the Lord (class = lord). Two entries were wrongly tagged lord -// (title-substring false positives: "purification" always meant the BVM's -// own feast, calendarium "IN PURIFICATIONE B. MARIAE VIRG."; "holy name" -// alone matched both "Holy Name of Jesus" and "Most Holy Name of MARY", -// calendarium "Sanctissimi Nominis Mariae"), and one was missing the tag -// entirely (13 January's title ends "of THE Lord", not "of OUR Lord", the -// only suffix classOf used to check -- calendarium "IN COMMEMORATIONE -// BAPTISMATIS D. N. I. C."). See TestTridentineLoads for the Purification's -// own class assertion (kept there, alongside its date/rank, not duplicated). +// feasts of the Lord (class = lord). "Most Holy Name of Mary" was wrongly +// tagged lord (a title-substring false positive: "holy name" alone matches +// both "Holy Name of Jesus" and "Most Holy Name of MARY", calendarium +// "Sanctissimi Nominis Mariae") and is fixed here, not contested. The +// Baptism commemoration was missing the tag entirely (13 January's title +// ends "of THE Lord", not "of OUR Lord", the only suffix classOf used to +// check -- calendarium "IN COMMEMORATIONE BAPTISMATIS D. N. I. C."), also +// fixed and not contested. The Purification is DELIBERATELY absent from +// this table: it stays tagged lord, on occurrence-behaviour evidence, not +// the calendarium's title -- see TestTridentineLoads and classOf's own doc +// comment in scripts/gen-sanctoral-ef.go for the full account of why it is +// the one contested case, not a clean-cut fix. func TestTridentineClassOfLord(t *testing.T) { l := Tridentine() want := map[string]string{ diff --git a/internal/caldata/tridentine-calendar.ini b/internal/caldata/tridentine-calendar.ini index 203f82f..9010845 100644 --- a/internal/caldata/tridentine-calendar.ini +++ b/internal/caldata/tridentine-calendar.ini @@ -220,6 +220,7 @@ reading.gospel = John 12:24-26 date = 02-02 rank = class-2 colour = white +class = lord name.en = Purification of the Blessed Virgin Mary reading.first = Mal 3:1-4 reading.gospel = Luke 2:22-32 |
