diff options
Diffstat (limited to 'test/test_differential.ml')
| -rw-r--r-- | test/test_differential.ml | 65 |
1 files changed, 61 insertions, 4 deletions
diff --git a/test/test_differential.ml b/test/test_differential.ml index 998a8fa..655a054 100644 --- a/test/test_differential.ml +++ b/test/test_differential.ml @@ -840,6 +840,50 @@ let holy_week_slugs = entry). 43 + 3 = 46, the full domain, with no residue. *) let passion_tuesday_slug = "ef-passiontide-1-tuesday" +(* C27/C28 (task 8, fix round 3, coordinator review, Important): two more + Ember Saturdays shipping a saint's Mass verbatim from lectio's ini -- + the exact C26 shape, found by re-review after the fixes above had + already closed the shapes both this file's own reachability check and + the earlier rounds' fixes could catch. Both are multi-lesson Ember + Masses, but neither needed C23/C24's "last lesson before the Gospel" + CONVENTION: both readings are explicitly labelled "Lectio Epistolae" in + the Missal, exactly like Holy Saturday's own Epistle, distinct from the + several numbered prophecies that precede them -- a textual fact, not an + editorial choice (tools/bootstrap_lectionary.ml's own + [ember_saturday_corrections] comment has the full citations and both + scans' line references). + + - C27, [ef-advent-ember-sat] ("Sabbato Quatuor Temporum Adventus"): + 2 Thess 2:1-8 / Luke 3:1-6. lectio's own ini value (Eph 2:19-22 / + John 20:24-29) is St Thomas the Apostle's Mass (21 December). + - C28, [ef-september-ember-sat] ("Sabbato Quatuor Temporum + septembris"): Heb 9:2-12 / Luke 13:6-17. lectio's own ini value + (Ezek 1:10-14 / Matt 9:9-13) is St Matthew's Mass (21 September, the + calling of Matthew). + + Both genuinely observed offices, confirmed against the real resolver, + not assumed. Gated on the literal slug and [diffs] staying exactly + [First_f; Gospel_f] (identity already agrees -- season/slug/rank/colour + were never the problem, only the reading). Derived directly from the + OCaml comparator's own failure output, not hand-counted first and + cross-checked after: C27 40, C28 40 -- not 46, and both traced, not + merely accepted, to the IDENTICAL 6 civil years (2013, 2019, 2024, + 2030, 2041, 2047): 21 September and 21 December are always exactly 91 + days apart, an exact multiple of 7, so they fall on the SAME weekday + every year -- confirmed directly, not merely arithmetic (`date -d` + agrees for all six). In precisely these 6 years both fall on a + Saturday, so Matthew's and Thomas's own FIXED feast days coincide with + their respective Ember Saturday, and the SAINT wins outright (a real, + correct occurrence result, RG 91's own table -- both engines agree, so + these rows never reach C27/C28 at all). This is also the likely origin + of lectio's own wrong ini values in the first place: bootstrapped from + whichever single calendar year lectio's own generator was run against, + which happened to be one of these coincidence years, generalising a + real but YEAR-SPECIFIC coincidence into a permanent template value. 40 + + 6 = 46, the full domain, no residue. *) +let advent_ember_sat_slug = "ef-advent-ember-sat" +let september_ember_sat_slug = "ef-september-ember-sat" + (* C25 (task 8, fix round 1, coordinator review, Important 3(b)) -- [verdict open], the SAME RG 69 gap C6 above re-opened, one hop removed. RG 69 (docs/research/scan1.txt:625-631, word for word: "De dominica @@ -892,10 +936,21 @@ let passion_tuesday_slug = "ef-passiontide-1-tuesday" differ, not re-asserted as a proven arithmetic rule a third time. Gated on the literal 4-slug family and [diffs] staying exactly [First_f; Gospel_f] (identity already agrees -- this is a pure content - consequence). Derived directly from the OCaml - comparator's own failure output, not hand-counted first and cross- - checked after: 57 (19 + 19 + 13 + 6, Wednesday/Thursday/Friday/ - Saturday respectively). *) + consequence). + + CORRECTED, fix round 3 (coordinator review): the TOTAL, 57, comes + directly from the OCaml comparator's own failure output (its own + [expected_rows] pin, cross-checked against a full test run). The + PER-WEEKDAY split does not -- the comparator reports per-id totals + only, never a per-weekday breakdown -- so that finer split was + produced by a separate pass over the raw per-slug failure list, not + the comparator itself, and a prior version of this note wrongly + implied otherwise. That prior version also rotated the labels: it + read "19 + 19 + 13 + 6, Wednesday/Thursday/Friday/Saturday + respectively" (the right four numbers, the wrong weekday each was + attached to). Re-measured directly against the real resolver: + Wednesday 6, Thursday 19, Friday 19, Saturday 13 (6 + 19 + 19 + 13 = + 57, no residue). *) let rg69_one_hop_slugs = [ "ef-christmas-1-wednesday"; "ef-christmas-1-thursday"; "ef-christmas-1-friday"; "ef-christmas-1-saturday" ] @@ -1006,6 +1061,8 @@ let layer_c_reason (l : row) (c : row) diffs = else if List.mem c.slug lent_ember_slugs && diffs = [ First_f; Gospel_f ] then Some "C22" else if List.mem c.slug holy_week_slugs && diffs = [ First_f; Gospel_f ] then Some "C23" else if String.equal c.slug passion_tuesday_slug && diffs = [ First_f; Gospel_f ] then Some "C26" + else if String.equal c.slug advent_ember_sat_slug && diffs = [ First_f; Gospel_f ] then Some "C27" + else if String.equal c.slug september_ember_sat_slug && diffs = [ First_f; Gospel_f ] then Some "C28" else None (* ---------------------------------------------------------------------- *) |
