1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
; data/ef/expected-divergences-missalemeum.sexp -- Task 16's cited allow-list
; for colitur's oracle harness against missalemeum (test/test_oracle.ml),
; 2026-2027. A SEPARATE file from data/ef/expected-divergences.sexp (the
; lectio allow-list, Task 15): the two oracles disagree with colitur in
; different places and for different reasons, so the two lists are kept
; apart rather than merged into one with two provenances tangled together.
;
; [verdict] names which side this task's own primary-source research backs
; -- NOT always "colitur", unlike the lectio file's own convention (that
; file's header: "every entry here is colitur"). Some of these entries are
; genuine DATA GAPS this task found and could not fix here (the sanctoral
; data is bootstrapped from lectio, which is itself missing several of
; these entries -- CLAUDE.md's binding decision 3, and this task does not
; touch ~/git/projects/lectio) or genuine CODE gaps (RG 91 entry 27's BVM-
; Saturday office, RG 110's inseparable Peter/Paul commemoration) this task
; did not build. Those are honestly verdicted [missalemeum] -- colitur is
; short a feature or a row, not correct -- and each is cross-referenced
; into docs/research/rules-register.md §6 as an open item, not silently
; absorbed as if colitur were right. THREE entries (M11, M13, and, since
; Task B/branch ef-rg16a, M17) are [verdict open] -- corrected, final fix
; wave, item 7: this note previously said "one entry (M13)", missing M11
; (whose own verdict changed from [colitur] to [open] in fix round 1, see
; M11's own entry below); M17 (the RG 113 same-band tie-break residual) is
; a genuinely new open item from the commemoration-identity task, not a
; stale-comment fix. ONE entry (M15) carries a fourth verdict,
; [unresolvable] -- a LIMIT of this comparator (no English name exists on
; colitur's side for a temporal-origin commemoration to compare), not a
; rubric dispute or a data gap either engine is wrong about; see M15's own
; note. All are adjudicated as UNRESOLVED/UNRESOLVABLE after real
; primary-source effort, not defaulted past -- see each entry's own note
; and the task report for the full search.
;
; [expected_rows] is the exact row count this entry accounts for over the
; fixture's 2026-2027 span: a REGRESSION PIN, not documentation --
; test_oracle.ml asserts actual counts equal these exactly, so an unnoticed
; behaviour change here fails loudly instead of silently changing what the
; harness accepts.
;
; Regenerate expected_rows only after re-adjudicating the change against
; the Missal/register -- never by re-running the comparator and copying its
; output back here (that would launder a regression into a new baseline).
((id M1)
(citation "RG 33, corrected (precedence_ef.ml's own [is_omissible_vigil], primary-source-verified 2026-08-12): \"Vigilia II aut III classis penitus omittitur, si occurrat in dominica quavis...\" -- a II or III class vigil is entirely omitted if it occurs on ANY Sunday")
(verdict colitur)
(note "missalemeum does not implement RG 33's Sunday-omission for II/III-class vigils. 28 June 2026 (Vigil of Sts Peter & Paul, II class): still shown as a commemoration on the V Sunday after Pentecost. 9 August 2026 (Vigil of St Lawrence, III class): shown as the day's FULL OBSERVED OFFICE, displacing the XI Sunday after Pentecost entirely, not merely surviving as a commemoration.")
(expected_rows 2))
((id M2)
(citation "RG 91 entry 27 (\"Officium sanctae Mariae in sabbato\") -- register §4")
(verdict missalemeum)
(note "Every otherwise-unoccupied IV-class Saturday should carry the votive Office of the BVM (white; missalemeum's own titles cycle \"I\"..\"V Mass of the B. V. M. -- Salve, Sancta Parens\"). precedence_ef.ml's [band] already has an entry-27 comment acknowledging this row exists (corrected attribution, final fix wave: this note previously said temporal_ef.ml, but [band] is precedence_ef.ml's own function), but [Temporal_ef.temporal] never actually CONSTRUCTS this office -- an unimpeded Time-after-Epiphany/-Pentecost Saturday gets a bare ferial slug and season green instead. A genuine feature gap, not a citation dispute; tracked in register §6, not built in this task.")
(expected_rows 17))
((id M3)
(citation "RG 87 (Minor Litanies/Rogations, Mon/Tue before Ascension) -- the SAME citation as the lectio allow-list's own C8 (data/ef/expected-divergences.sexp)")
(verdict colitur)
(note "missalemeum, like lectio, computes no Rogation day at all and shows the plain paschaltide-week feria instead. Only 3 May 2027 (Rogation Monday) shows it in this window -- every other Rogation day here is won outright by a saint on both sides, so only the underlying temporal identity differs, which this comparator's axes do not expose.")
(expected_rows 1))
((id M4)
(citation "1962 calendarium (missale-romanum-1962.pdf), 28 January row: \"S. Petri Nolasci Conf., III classis. / Com. S. Agnetis Virg. et Mart., secundo.\" -- primary-source-verified 2026-08-12")
(verdict missalemeum)
(note "A second commemoration of St Agnes (secundo, distinct from her main 21 January feast) is missing from data/ef/sanctoral.sexp. Traced upstream: lectio's own tridentine-calendar.ini has no 01-28 entry beyond [peter-nolasco] either -- a bootstrap-source gap, not a bootstrap-tool bug. Cannot be fixed without touching lectio (out of this task's reach); register §6 open item.")
(expected_rows 2))
((id M5)
(citation "RG 80 (Major Litanies, 25 April) -- register §6's own pre-existing open item, \"Major Litanies (25 April, RG 80) are not computed\"")
(verdict missalemeum)
(note "Independently confirmed by the oracle, not a new finding: missalemeum's \"Pro rogationibus\" commemoration on St Mark's day (25 April, the Major Litanies' fixed date) is exactly the missing office register §6 already tracks. Only 2026 shows as a comparator MISMATCH: 25 April 2026 is a Saturday with Mark winning outright, so colitur's commemoration list is empty where the oracle's carries \"Pro rogationibus\" -- a real presence gap. 25 April 2027 is a Sunday: the Sunday wins on BOTH sides, and each side's own single commemoration slot goes to a DIFFERENT candidate (colitur: St Mark himself, an ordinary II-class sanctoral loser admitted under RG111(b)'s \"de festo II classis\" slot; missalemeum: the Major Litanies) -- both non-empty, same count, so this comparator's count-only axis (deliberately not slug-identity, see test_oracle.ml's own header) cannot see that mismatch; the underlying gap is the same, just invisible to this year's row.")
(expected_rows 1))
((id M6)
(citation "CORRECTED 2026-08-12, transcription-audit task (branch ef-rg16a): the previous citation below read the ELECTRONIC TRANSCRIPTION (1962-06-23,_SS_Ioannes_XXIII,_Missale_Romanum,_LT.pdf), which silently drops calendarium commemorations, and mistook its silence for the calendarium's own. A photographic scan (missale-romanum-1962.pdf), 14 August row: \"Vigilia, II classis, Commemoratio S. Eusebii Conf.\", with its own proper immediately following (\"Eodem die ... Et fit commemoratio S. Eusebii Conf.\") -- independently confirmed in the second scan, Missale Romanum 1962_text.pdf. Primary-source-verified 2026-08-12.")
(verdict missalemeum)
(note "The same shape as M4/M7/M9/M14, not the reverse of them: a genuine commemoration -- S. Eusebius, Confessor, 14 August -- is present in the 1962 calendarium and in missalemeum's own data, but absent from data/ef/sanctoral.sexp and from lectio's own tridentine-calendar.ini (no 08-14 entry beyond vigil-of-the-assumption). This Eusebius Confessor (14 Aug) is a genuinely DIFFERENT saint from Eusebius Bishop and Martyr (16 Dec, already correctly in data/ef/sanctoral.sexp, matching lectio's own [eusebius] entry at THAT date) -- both exist, at their own separate dates; the calendarium carries both. Not fixed here: single-source data, the same bootstrap-reach constraint as M4/M7/M9/M14 (would require touching ~/git/projects/lectio). Register docs/research/rules-register.md, Decisions item 4 and the transcription-audit record in section 6, has the full account and the wider calendarium sweep this correction came from.")
(expected_rows 2))
((id M7)
(citation "1962 calendarium, 26 October row: \"Com. S. Evaristi Papæ et Mart.\" -- primary-source-verified 2026-08-12")
(verdict missalemeum)
(note "A genuine data gap, the same shape as M4: absent from data/ef/sanctoral.sexp and from lectio's own tridentine-calendar.ini (no 10-26 entry at all). Register §6 open item.")
(expected_rows 2))
((id M8)
(citation "RG 109(a) (\"of a Sunday\" is always privileged) + RG 111(a) (\"I class: none save one privileged\")")
(verdict colitur)
(note "When a fixed I-class feast (All Saints 1 Nov; the Assumption 15 Aug) lands on an ordinary Sunday, the impeded Sunday IS the one privileged commemoration RG 111(a) admits -- already an established, independently-tested rule (test_precedence_ef.ml's RG95/RG109(a) row). missalemeum shows no commemoration at all on either occurrence in this window.")
(expected_rows 2))
((id M9)
(citation "1962 calendarium, 9 November row: \"IN DEDICATIONE ARCHIBASILICÆ SANCTISSIMI SALVATORIS, II classis. / Com. S. Theodori Mart.\" -- primary-source-verified 2026-08-12")
(verdict missalemeum)
(note "A genuine data gap, the same shape as M4/M7: absent from data/ef/sanctoral.sexp and from lectio's own 11-09 entry (dedication-of-the-archbasilica-of-our-holy-savior alone). Register §6 open item.")
(expected_rows 2))
((id M10)
(citation "RG 109(e), unqualified text: \"de feriis Adventus, Quadragesimae et Passionis\" -- of the FERIAS of Advent (not \"the Advent ferias 17-23 December only\", which is RG 91 entry 18's separate OCCURRENCE-table dignity, not a RG 109 privilege restriction)")
(verdict colitur)
(note "colitur commemorates the losing early-Advent feria (Monday after Advent I, 30 Nov; Tuesday/Wednesday after Advent II, 8 Dec) when a saint wins. missalemeum shows nothing on these 4 rows specifically, even though it DOES show equivalent later-Advent-feria commemorations elsewhere in the SAME window (2-21 December, matching colitur exactly there) -- read as a missalemeum-side inconsistency on these particular rows, not a textually narrower rule.")
(expected_rows 4))
((id M11)
(citation "CORRECTED, fix round 1 (F3): RG 67 (\"Dies infra octavam sunt II classis\" -- days within the Octave are II class) + RG 109(c) (\"de diebus infra octavam Nativitatis Domini\" -- privileged) + the 1962 calendarium's own explicit note under 26/27/28 December, primary-source-verified 2026-08-12: \"S. STEPHANI PROTOMARTYRIS, II classis. / Com. octavae Nativitatis.\" (same pattern, verbatim, under 27 and 28 December for John the Evangelist and the Holy Innocents) -- \"Commemoration of the Octave of the Nativity\", named explicitly, alongside each of the three named feasts")
(verdict open)
(note "This entry previously read \"No RG paragraph found to support this\" and verdict colitur -- WRONG, found by fix-round-1 review: RG 67/109(c) and the calendarium's own \"Com. octavae Nativitatis\" note both confirm a real commemoration is due here. It is ALSO a genuine REGRESSION Task 16's own commemoration-eligibility fix introduced: before that fix, colitur unconditionally commemorated the day's own losing temporal candidate (\"ef-christmas-0-<weekday>\", the generic Christmastide ferial slug 26-28 December falls through to since temporal_ef.ml's [named] does not cover those three dates), which happened to keep commemoration PRESENCE agreeing with missalemeum even though the underlying reasoning was wrong (a Task 16 review-round-1 finding elsewhere, F1/F2 fixed it for the general case) -- and Task 16's fix (and this fix round's RG 23-26 correction of it) both correctly stop commemorating that generic candidate, since [ferial_rank]'s Christmastide catch-all gives it Class4, which RG 26 never commemorates. The catch: RG 67 says days WITHIN the octave are II class, not IV -- the generic ferial construction 26-28 December falls through to has the WRONG rank for this specific window (a rank bug, not merely a missing-candidate one; 29-31 December already get the correct Class2 via [named]'s own \"ef-nativity-octave-day-{5,6,7}\" branch, so this is narrowly a 26-28-December gap). Fixing it properly also has to get RG 69 right (\"De dominica infra octavam Nativitatis Domini... semper fit Officium cum commemoratione FESTI FORTE OCCURRENTIS\" -- when the Sunday falls in this window, the SUNDAY is observed with a commemoration of THE FEAST ITSELF, Stephen/John/the Innocents by name -- NOT the generic octave placeholder), so a naive \"treat the octave commemoration as one more competing candidate\" fix would get the Sunday case backwards (confirmed by working through it: it would make the octave placeholder outrank the named saint for the Sunday's own privileged slot, when RG 69 names the SAINT, not the octave, for that slot). This needs either new architecture (a commemoration that attaches to whichever of Stephen/John/the Innocents is observed, not a competing candidate the way RG 92-95's occurrence framework models everything else) or a more careful RG-69-aware fix than this task attempted -- out of scope for this fix round. Verdict changed from colitur to open: neither side is confidently right without that fix, and the previous entry's \"colitur is correct, nothing to implement\" framing was itself the risk this review flagged. Register §6 open item.")
(expected_rows 4))
((id M12)
(citation "RG 110: \"In Officio et Missa S. Petri semper fit commemoratio S. Pauli, et vicissim\" -- in the Office and Mass of either Peter or Paul, a commemoration of the other is ALWAYS made (\"the inseparable commemoration\"), uncapped by RG 111's ordinary admission count")
(verdict missalemeum)
(note "Unimplemented in this codebase. 22 February 2027 (Chair of St Peter): colitur commemorates only the privileged Lent feria; missalemeum shows that AND \"St. Paul\". A genuine, primary-cited feature gap -- register §6 open item. Narrow: the only row in this window where it becomes visible against this comparator's axes (see the task report for the other Peter/Paul offices checked and found clean).")
(expected_rows 1))
((id M14)
(citation "1962 calendarium, 14 May row: \"Com. S. Bonifatii Mart.\" -- primary-source-verified 2026-08-12")
(verdict missalemeum)
(note "A genuine data gap, the same shape as M4/M7/M9: a commemoration-only St Boniface, Martyr (DIFFERENT from the II-class St Boniface, Bishop and Martyr, of 5 June, which data/ef/sanctoral.sexp already carries correctly) is absent from data/ef/sanctoral.sexp and from lectio's own tridentine-calendar.ini for 05-14 (no entry at all). Only visible in 2027 -- in 2026, 14 May is Ascension Thursday (I class), which correctly admits no ordinary commemoration on either side (RG 111(a)), so Boniface is (correctly) absent from BOTH streams that year. Register §6 open item.")
(expected_rows 1))
((id M13)
(citation "OPEN -- not adjudicated. 1962 calendarium's March table: \"Feria VI post dominicam I Passionis: Commemoratio septem Dolorum B. Mariæ Virg.\" (confirmed real, every year) -- but RG 91's plain table (entry 11-13, Joseph, I class, vs entry 22, an ordinary III-class Passiontide feria) gives Joseph the day outright, with no RG 96 collision requiring a transfer, so the primary text found here does not by itself explain missalemeum's result")
(verdict open)
(note "19 March 2027: St Joseph (I class) falls on the Friday of Passion Week. missalemeum shows Joseph entirely displaced, with the Friday's own III-class violet office observed and the Seven Sorrows commemorated instead. Three possibilities, none confirmed: (a) colitur's plain RG 91 reading is right and missalemeum is wrong; (b) a more specific rubric attached to St Joseph's own Proprium Sanctorum entry (the same shape as the Annunciation's own Attamen clause) overrides the general table for this exact collision, and this task did not find its text; (c) the Seven Sorrows commemoration itself outranks an ordinary I-class feast on this one Friday, unsupported by anything found here either. Extensive but non-exhaustive primary-source search did not settle it -- register §6 open item, explicitly unresolved rather than defaulted to either side. Separately, but confirmed regardless: colitur does not implement the Seven-Sorrows-of-Passion-Friday commemoration at all, in any year -- a real, primary-attested gap on its own. CORRECTED 2026-08-12 (Task B, branch ef-rg16a, commemoration-identity comparison): this date now ALSO trips [Comm_identity_unresolved] (colitur's own commemorated candidate there, [ef-passiontide-1-friday], is temporal-origin and carries no English name) -- the SAME root cause as M15 below, folded into this entry's own subset check rather than a separate id, since it is the identical Seven-Sorrows gap this note already names, not a new finding.")
(expected_rows 1))
((id M15)
(citation "docs/research/rules-register.md §4's own \"THE MAPPING, AND EXACTLY WHAT IT CANNOT RESOLVE\" note (test_oracle.ml's own header) -- not an RG citation, a comparator LIMIT: Rite_ef.Temporal_ef never sets an English [names] field on any candidate it builds (temporal_ef.ml has no \"en ...\" string anywhere in it)")
(verdict unresolvable)
(note "19 rows where colitur's own admitted commemoration is TEMPORAL-origin (an impeded Advent or Lent feria) -- there is no English name on colitur's side to compare against missalemeum's title text at all, so identity cannot be attempted, only reported as unresolved. Not a rubric dispute and not a data gap either engine is wrong about. Every oracle title on these 19 rows reads as a plain prose description of the SAME temporal ferial slot colitur independently computes for that date (e.g. 2 Dec 2026: oracle \"Feria IV after I Sunday of Advent\" against colitur's own ef-advent-1-wednesday; 4 Dec 2027: oracle \"Sabbato after I Sunday of Advent\" against ef-advent-1-saturday) -- suggestive corroboration, recorded for a human reader, NOT claimed as a verified match: this comparator has no mechanism to verify English prose against an opaque slug. Fixing this at the root (an English name on every temporal-cycle candidate) is a data/lectionary-bootstrap task, not something this comparator can do for itself -- register §6, neighbouring the RG 113 tie-break section, records it as an open item. The 19 dates: 2026-02-24, 2026-03-19, 2026-03-25, 2026-12-02, 2026-12-03, 2026-12-04, 2026-12-07, 2026-12-11, 2026-12-21, 2027-02-24, 2027-12-02, 2027-12-03, 2027-12-04, 2027-12-06, 2027-12-07, 2027-12-11, 2027-12-13, 2027-12-16, 2027-12-21.")
(expected_rows 19))
((id M16)
(citation "1962 calendarium's March table (same primary text as M13's own citation): \"Feria VI post dominicam I Passionis: Commemoratio septem Dolorum B. Mariae Virg.\" -- a fixed commemoration of Our Lady's Seven Sorrows for the Friday of Passion Week, every year, confirmed real")
(verdict missalemeum)
(note "27 March 2026 (Friday of Passion Week): colitur admits \"St. John Damascene\" (a real Class3 universal feast that genuinely falls that day, data/ef/sanctoral.sexp's own john-damascene entry, 27 March); missalemeum shows \"For Our Lady of the Seven Sorrows\" instead. The SAME standing gap M13 already names: the Seven-Sorrows-of-Passion-Friday commemoration is confirmed real in the primary text but not implemented anywhere in temporal_ef.ml, so colitur has no candidate for it and falls back to whichever ordinary Class3 saint actually wins that Friday. Verdict missalemeum: colitur is missing a real, primary-cited office, not differently opinioned. Register §6 open item (the same one M13's own note already tracks). Only 2026 shows here as an IDENTITY mismatch -- 2027's Friday of Passion Week IS 19 March, M13's own date, where identity comparison cannot even be reached (M13's own rank/colour mismatch already excludes that day from count-matched identity comparison, folded into M13's own widened subset above).")
(expected_rows 1))
((id M17)
(citation "RG 113 (docs/research/rules-register.md §4's own RG 113 entry, and §6.1's \"RG 113 same-band residual\" record, Task B/ef-rg16a): \"in admittendis et ordinandis aliis commemorationibus, servetur ordo tabellae praecedentiae\" reaches only the TABLE order (Precedence_ef.band); it supplies no further instruction for two candidates landing on the identical band value")
(verdict open)
(note "22 September 2027 (September Ember Wednesday): colitur admits \"St. Maurice and Companions, Martyrs\" (Commemoration_only, Class3); missalemeum shows \"St. Thomas of Villanova\" (Feast, Class3) instead -- both land on Precedence_ef.band entry 24 (III-class universal feasts), a genuine tie RG 113 does not resolve. colitur's own residual tie-break (alphabetical by slug, register §6.1's own uncited-convention record) picks \"maurice...\" over \"thomas...\" purely because 'm' < 't' in ASCII -- no rubrical warrant either way. NOT adjudicated colitur or missalemeum: verdict OPEN, the same explicit permission the brief gives M11/M13 (\"say so as an open item rather than absorbing it\"). Only 2027 shows this exact collision in this window -- 2026's 22 September is an ordinary (non-Ember) Tuesday, where Thomas of Villanova simply wins the day outright on both sides (colitur: observed; missalemeum: title) with Maurice commemorated alongside him identically on both, no tie to observe that year.")
(expected_rows 1))
|