aboutsummaryrefslogtreecommitdiff
path: root/test/test_differential.ml
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-18 12:36:07 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-18 12:36:07 +0200
commit12edb255c0a2559a59578fd6b5d7784ef04bc386 (patch)
treedac3a618fe63e91f4cf9cae4e17b264f25b8a7dc /test/test_differential.ml
parentca4287a6e99e14846f3560106156ef2b1c4b8cf2 (diff)
parente07d0b1f49e1bb006b12a5e612453101d9e641a7 (diff)
downloadcolitur-12edb255c0a2559a59578fd6b5d7784ef04bc386.tar.gz
colitur-12edb255c0a2559a59578fd6b5d7784ef04bc386.zip
merge: sanctoral status audit and RG 113's first sentence
Two corrections argued from the Missal's own calendarium and rubrics, both found by consulting primary sources the project already had but had not fully read.
Diffstat (limited to 'test/test_differential.ml')
-rw-r--r--test/test_differential.ml18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/test_differential.ml b/test/test_differential.ml
index 849bde4..25a690d 100644
--- a/test/test_differential.ml
+++ b/test/test_differential.ml
@@ -912,6 +912,19 @@ let good_friday_slug = "ef-passiontide-2-friday"
Paschaltide and is correctly white already. *)
let violet_vigil_slugs = [ "vigil-of-st-lawrence"; "vigil-of-the-assumption" ]
+(* C38 (ef-sanctoral-status): `ubaldus` (16 May) and `didacus` (13 November)
+ were promoted from Commemoration_only to Feast on the Missal's own
+ universal calendarium, which ranks both "III classis" outright. lectio
+ inherits the Commemoration_only status from missalemeum, so where colitur
+ now observes the saint, lectio still observes the feria -- hence the slug,
+ rank and both citations differ together. Two exact shapes, not one:
+ 16 May falls in Paschaltide, whose ferial colour is ALREADY white, so no
+ colour difference arises there; 13 November is Time after Pentecost, green,
+ so the white confessor changes it. Both shapes are spelled out rather than
+ collapsed into a subset check, so a colour difference appearing on 16 May
+ (or vanishing on 13 November) would surface as unexplained. *)
+let promoted_feast_slugs = [ "ubaldus"; "didacus" ]
+
(* C26 (task 8, fix round 2, coordinator review, Important): Passion
week's own real Tuesday Mass (tools/bootstrap_lectionary.ml's own
[passion_tuesday_entry] comment has the full Missal citation and both
@@ -1294,6 +1307,11 @@ let layer_c_reason (l : row) (c : row) diffs =
else if String.equal c.slug good_friday_slug && diffs = [ First_f; Gospel_f; Colour_f ] then
Some "C36"
else if List.mem c.slug violet_vigil_slugs && diffs = [ Colour_f ] then Some "C37"
+ else if
+ List.mem c.slug promoted_feast_slugs
+ && (diffs = [ Slug_f; Rank; First_f; Gospel_f ]
+ || diffs = [ Slug_f; Rank; First_f; Gospel_f; Colour_f ])
+ then Some "C38"
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"