summaryrefslogtreecommitdiff
path: root/test/test_differential.ml
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-18 17:18:16 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-18 17:18:16 +0200
commit5773d603a2936638654f8e6bd8e595240de4203a (patch)
tree9a5f27f986322bb1e2869ad7072e262d6a124fb1 /test/test_differential.ml
parent60db67eb2246d748d1e8e55047cef7d3d7843c4e (diff)
downloadcolitur-5773d603a2936638654f8e6bd8e595240de4203a.tar.gz
colitur-5773d603a2936638654f8e6bd8e595240de4203a.zip
test(differential): C31 closed -- 4 classes left, 257 of 267 rows are naming
The ferias between Epiphany and the first Sunday after it repeat Epiphany's own Mass in lectio now; they had been taking the Mass of the Sunday that follows them. C31 98 -> 0 C1 40 -> 138 grew, and changed character C1 is now SLUG VOCABULARY ONLY, and its note says so. Season, rank, colour and both citations agree with colitur on every day of the January window; what differs is the identifier -- ef-christmas-2-thursday against ef-time-after-epiphany-1-thursday for the same day with the same Mass. C6 is the same shape. That is 257 of the 267 remaining rows. Aligning the vocabularies would mean renaming lectio's slugs, and those are keys: its own lectionary, clectio's generated tables and any user overlay are built on them. Recorded as vocabulary rather than closed, because the rows do differ -- just not in anything a reader of either engine's output sees. Measured for 2026: season, rank and colour agree on all 365 days; 14 days differ and every one differs on the slug alone. 5 classes -> 4, agreement 98.4%.
Diffstat (limited to 'test/test_differential.ml')
-rw-r--r--test/test_differential.ml26
1 files changed, 1 insertions, 25 deletions
diff --git a/test/test_differential.ml b/test/test_differential.ml
index bd03969..e8bf9ae 100644
--- a/test/test_differential.ml
+++ b/test/test_differential.ml
@@ -164,7 +164,7 @@ let allow_list_path = "../data/ef/expected-divergences.sexp"
deliberately, after re-running the exact command the provenance note
names -- never by copying the actual value back in to make a mismatch
pass, which would defeat the point of pinning it at all. *)
-let fixture_sha256 = "8299ccd495301eb98f6ba07a0a2f39ec7bbf063cbefa17cedbb840f903f04f36"
+let fixture_sha256 = "bac0aacfaa67db0f6f9ae45f1295f831f62bb35a6e2a8e8c72503b2b26e1a8a8"
(* Same technique tools/bootstrap_sanctoral.ml already uses for this exact
purpose (that file's own comment: shelling out to the system's
@@ -1163,30 +1163,6 @@ let layer_c_reason (l : row) (c : row) diffs =
white where lectio (which builds no such office) is green -- C17's own
shape, landing on the same day as this one. [First_f] is REQUIRED, so a
colour-only Saturday still falls to C17 and cannot be absorbed here. *)
- else if
- (* C31 -- Task 9: the SAME rubric's own next sentence, "diebus
- ferialibus a 7 ad 12 ianuarii ante dominicam I post Epiphaniam...
- Missa de festo Epiphaniae". A SUBSET guard, not an exact match,
- unlike C29/C30 -- this slug family's own civil dates ALREADY
- carried a Season/Slug_f/Colour_f divergence before this task
- (lectio's own season boundary starts Time-after-Epiphany at
- Epiphany itself, RG 72-73's own later boundary colitur keeps;
- lectio's own week numbering has no Holy Family to wait for, so its
- own slug for these dates is already "ef-time-after-epiphany-1-
- <weekday>", not "ef-christmas-2-..."), previously absorbed by C1's
- own [jan_6_13_slug] allow-list (which already names this family).
- First_f/Gospel_f now join an EXISTING divergence, they do not
- create a new, cleaner one -- ONE of the two, not necessarily both:
- a feria's Epistle and Gospel are independent lookups, and can each
- happen to already coincide (e.g. the Gospel pericope shared with a
- neighbouring office while the Epistle differs). [_with_saturday]
- -- see that list's own comment for why Saturday belongs here for
- THIS family (a step-3 ripple through the now-corrected
- [ef-holy-name-sunday], not a direct entry of its own). *)
- subset diffs [ Season; Slug_f; Colour_f; First_f; Gospel_f ]
- && (List.mem First_f diffs || List.mem Gospel_f diffs)
- && List.mem c.slug christmas_2_weekday_slugs_with_saturday
- then Some "C31"
else if is_bvm_saturday_row c diffs then Some "C17"
else if diffs = [ Colour_f ] && List.mem c.slug audit_colour_corrected_slugs then Some "C18"
(* C25 -- CLOSED, BVM Saturday Mass (2026-08-17), predicate removed: 0 rows.