Sweep minorHoursCommon (P/T/S/N) across the whole calendar, not just the 94-saint batch
Deploy / deploy (push) Successful in 56s

The original 29-saint P/T/S/N pass only ever covered duplex-majus+
saints; every below-majus saint from the *original*, pre-94-batch
109-saint pass had never had Prime/Terce/Sext/None attempted at all --
same gap already found and fixed for the 94-batch's own below-majus
saints, now closed for the rest of the calendar too.

Reused the Kalendaria-table-validated fileref approach rather than a
blind Sancti/MM-DD.txt read -- a real near-miss caught this early: St.
Apollonia's Sancti/02-09.txt is currently St. Cyril of Alexandria's (a
19th-century addition to that filename slot); blind reading would have
silently attributed his Doctor-of-the-Church Common to her. Also fixed
a regex bug the same pass turned up: the "vide"/"ex CXX" pattern
matched the bare word "Commune" (no number) and reading-specific
sub-references like "ex C4 in 2 loco" -- found via St. Clement, whose
Monastic-specific [Rule] override has neither a clean "vide CXX" nor a
number after "Commune."

90 below-majus saints swept, ~82 wired directly into the categories
already established in the previous commits -- no new content needed,
every C-number variant found already falls inside an already-verified
family.

A real bug this pass caught and fixed in its own output: Ss. Ursula and
Companions (deliberately left minorHoursCommon-unwired) got swept up
and wrongly wired, since she has collectCommon set despite propers:
null and being a genuine commemoration-only stub -- the Kalendaria
lookup silently defaulted to St. Hilarion's own primary slot at her
shared date. Caught by cross-checking every swept saint's propers field
for this exact pattern; reverted.

A real new category found: Doctors of the Church are not one thing.
6 of the 7 saints whose own [Rule] says "vide C4a" (Athanasius,
Augustine, Basil the Great, Hilary of Poitiers, John Chrysostom, Leo I)
render P/T/S/N byte-identical to the already-verified
common-of-a-confessor-bishop -- wired directly. St. Gregory the Great is
the one genuine exception: his own live-rendered P/T/S/N is real, unique
proper text (his own election, his Liber Regulae Pastoralis, the
dove-and-quill legend, the "non Angli sed Angeli" episode) -- 7 new
files, English translated throughout since the source rendered none.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-13 11:24:53 -04:00
parent 130b0f983d
commit 37dac8b476
96 changed files with 661 additions and 0 deletions
@@ -8,3 +8,8 @@ name: "Commemoration of St. Paul, Apostle"
rank: duplex
common: common-of-an-apostle
propers: "commemoration-of-st-paul"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-30.txt) --
# [Rule]/[Rank] point to Commune/C1 instead, the same C-number family already
# live-query-verified for common-of-apostles.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-apostles
@@ -11,3 +11,8 @@ name: "The Beheading of St. John the Baptist"
rank: duplex
common: common-of-an-apostle
propers: "decollation-of-st-john-baptist"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (08-29.txt) --
# [Rule]/[Rank] point to Commune/C2a instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -16,3 +16,7 @@ name: "The Finding of St. Stephen, Protomartyr"
rank: semiduplex
common: common-of-a-martyr
propers: "finding-of-st-stephen"
# P/T/S/N: [Rule] points directly at st-stephen-protomartyr's own file
# (Sancti/12-26), not a Commune category -- reuses his own already-authored
# proper P/T/S/N wholesale (see TODO.md's 'minor hour content gaps' section).
minorHoursCommon: st-stephen-protomartyr
@@ -6,3 +6,8 @@ name: "The Forty Holy Martyrs"
rank: semiduplex
common: common-of-several-martyrs
propers: "forty-holy-martyrs"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (03-10.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Abdon and Sennen, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-abdon-and-sennen"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (07-30.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Basilides, Cyrinus, Nabor, and Nazarius, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-basilides-cyrinus-nabor-and-nazarius"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-12o.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -10,3 +10,8 @@ name: "Ss. Chrysanthus and Daria, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-chrysanthus-and-daria"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (10-25.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Cosmas and Damian, Martyrs"
rank: semiduplex
common: common-of-several-martyrs
propers: "ss-cosmas-and-damian"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (09-27.txt) --
# [Rule]/[Rank] point to Commune/C3a instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -9,3 +9,8 @@ name: "Ss. Cyprian and Justina, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-cyprian-and-justina"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (09-26.txt) --
# [Rule]/[Rank] point to Commune/C3a-1 instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Cyriacus, Largus, and Smaragdus, Martyrs"
rank: semiduplex
common: common-of-several-martyrs
propers: "ss-cyriacus-largus-and-smaragdus"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (08-08.txt) --
# [Rule]/[Rank] point to Commune/C3a-1 instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -17,3 +17,8 @@ propers: "ss-dionysius-and-companions"
# same category (see calendar/feasts.ts's SaintRecord.benedictusCommon
# doc comment).
benedictusCommon: common-of-several-martyrs
# P/T/S/N: no [Ant Prima]/etc of its own in the source (10-09t.txt) --
# [Rule]/[Rank] point to Commune/C3a instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -13,3 +13,8 @@ name: "Ss. Euphemia, Lucy, and Geminianus, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-euphemia-lucia-and-geminianus"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (09-16.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Fabian and Sebastian, Martyrs"
rank: duplex
common: common-of-several-martyrs
propers: "ss-fabian-and-sebastian"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (01-20.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -17,3 +17,8 @@ propers: "ss-felix-and-adauctus"
# Benedictus antiphon live-verified (2026-08, Lauds query, 2025-08-30, winner
# outright) as byte-identical to common-of-several-martyrs.yml's own.
benedictusCommon: common-of-several-martyrs
# P/T/S/N: no [Ant Prima]/etc of its own in the source (08-30o.txt) --
# [Rule]/[Rank] point to Commune/C3a instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Gervase and Protase, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-gervase-and-protase"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-19o.txt) --
# [Rule]/[Rank] point to Commune/C3a-1 instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -8,3 +8,8 @@ name: "Ss. John and Paul, Martyrs"
rank: semiduplex
common: common-of-several-martyrs
propers: "ss-john-and-paul"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-26.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -8,3 +8,8 @@ name: "Ss. Marcellinus, Peter, and Erasmus, Bishop, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-marcellinus-peter-and-erasmus"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-02.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Mark and Marcellian, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-mark-and-marcellian"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-18t.txt) --
# [Rule]/[Rank] point to Commune/C3a-1 instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -14,3 +14,8 @@ propers: "ss-maurice-and-companions"
# Benedictus antiphon live-verified (2026-08, Lauds query, 2025-09-22, winner
# outright) as byte-identical to common-of-several-martyrs.yml's own.
benedictusCommon: common-of-several-martyrs
# P/T/S/N: no [Ant Prima]/etc of its own in the source (09-22o.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -9,3 +9,8 @@ name: "Ss. Nazarius and Celsus, Martyrs, St. Victor I, Pope and Martyr, and St.
rank: semiduplex
common: common-of-several-martyrs
propers: "ss-nazarius-celsus-victor-and-innocent"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (07-28.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Nereus, Achilleus, Domitilla, and Pancras, Martyrs"
rank: semiduplex
common: common-of-several-martyrs
propers: "ss-nereus-achilleus-domitilla-and-pancras"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (05-12.txt) --
# [Rule]/[Rank] point to Commune/C3a-1 instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -8,3 +8,8 @@ name: "Ss. Primus and Felicianus, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-primus-and-felicianus"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-09.txt) --
# [Rule]/[Rank] point to Commune/C3a instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Seven Brothers, Martyrs, and Ss. Rufina and Secunda, Virgins and Mart
rank: semiduplex
common: common-of-several-martyrs
propers: "ss-seven-brothers-rufina-and-secunda"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (07-10.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Symphorosa and Her Seven Sons, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-symphorosa-and-seven-sons"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (07-18o.txt) --
# [Rule]/[Rank] point to Commune/C3a instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -7,3 +7,8 @@ name: "Ss. Tiburtius, Valerian, and Maximus, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-tiburtius-valerian-and-maximus"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (04-14t.txt) --
# [Rule]/[Rank] point to Commune/C3a instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -12,3 +12,8 @@ propers: "ss-tryphon-and-companions"
# Benedictus antiphon live-verified (2026-08, Lauds query, 2025-11-10, winner
# outright) as byte-identical to common-of-several-martyrs.yml's own.
benedictusCommon: common-of-several-martyrs
# P/T/S/N: no [Ant Prima]/etc of its own in the source (11-10o.txt) --
# [Rule]/[Rank] point to Commune/C3a instead, the same C-number family
# already live-query-verified for common-of-several-martyrs.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Vincent and Anastasius, Martyrs"
rank: semiduplex
common: common-of-several-martyrs
propers: "ss-vincent-and-anastasius"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (01-22.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
@@ -6,3 +6,8 @@ name: "Ss. Vitus, Modestus, and Crescentia, Martyrs"
rank: simplex
common: common-of-several-martyrs
propers: "ss-vitus-modestus-and-crescentia"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-15.txt) --
# [Rule]/[Rank] point to Commune/C3 instead, the same C-number family already
# live-query-verified for common-of-several-martyrs.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-several-martyrs
+5
View File
@@ -15,3 +15,8 @@ collectCommon: collect-c6
collectName:
la: ["Agathæ"]
en: ["Agatha"]
# P/T/S/N: no [Ant Prima]/etc of its own in the source (02-05.txt) --
# [Rule]/[Rank] point to Commune/C6 instead, the same C-number family already
# live-query-verified for common-of-a-virgin.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-a-virgin
@@ -10,3 +10,8 @@ name: "St. Agnes, Virgin and Martyr, Second Feast"
rank: simplex
common: common-of-a-virgin-martyr
propers: "st-agnes-secunda"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (01-28t.txt) --
# [Rule]/[Rank] point to Commune/C6-1 instead, the same C-number family
# already live-query-verified for common-of-a-virgin.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-virgin
+5
View File
@@ -7,3 +7,8 @@ name: "St. Agnes, Virgin and Martyr"
rank: duplex
common: common-of-a-virgin-martyr
propers: "st-agnes"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (01-21.txt) --
# [Rule]/[Rank] point to Commune/C6-1 instead, the same C-number family
# already live-query-verified for common-of-a-virgin.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-virgin
+5
View File
@@ -8,3 +8,8 @@ name: "St. Anne, Mother of the Blessed Virgin Mary"
rank: duplex
common: common-of-a-holy-woman
propers: "st-anne"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (07-26.txt) --
# [Rule]/[Rank] point to Commune/C7a instead, the same C-number family
# already live-query-verified for common-of-a-virgin.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-virgin
@@ -6,3 +6,8 @@ name: "St. Anthony of Padua, Confessor"
rank: semiduplex
common: common-of-a-confessor
propers: "st-anthony-of-padua"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-13.txt) --
# [Rule]/[Rank] point to Commune/C5 instead, the same C-number family already
# live-query-verified for common-of-an-abbot.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-an-abbot
@@ -12,3 +12,8 @@ name: "St. Apollinaris, Bishop and Martyr"
rank: semiduplex
common: common-of-a-martyr-bishop
propers: "st-apollinaris"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (07-23.txt) --
# [Rule]/[Rank] point to Commune/C2-1 instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -6,3 +6,8 @@ name: "St. Apollonia, Virgin and Martyr"
rank: simplex
common: common-of-a-virgin-martyr
propers: "st-apollonia"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (02-09o.txt) --
# [Rule]/[Rank] point to Commune/C6 instead, the same C-number family already
# live-query-verified for common-of-a-virgin.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-a-virgin
@@ -6,3 +6,8 @@ name: "St. Athanasius, Bishop, Confessor and Doctor of the Church"
rank: duplex
common: common-of-a-confessor-bishop
propers: "st-athanasius"
# P/T/S/N: live-query-verified (2026-08) as byte-identical to common-of-a-
# confessor-bishop.yml, despite his own [Rule] saying "vide C4a" (Doctor) --
# unlike St. Gregory the Great, whose own live-rendered P/T/S/N really is
# unique proper text (see his own prime-antiphon-st-gregory-the-great.yml).
minorHoursCommon: common-of-a-confessor-bishop
@@ -11,3 +11,8 @@ name: "St. Augustine of Hippo, Bishop, Confessor and Doctor of the Church"
rank: duplex
common: common-of-a-confessor-bishop
propers: "st-augustine"
# P/T/S/N: live-query-verified (2026-08) as byte-identical to common-of-a-
# confessor-bishop.yml, despite his own [Rule] saying "vide C4a" (Doctor) --
# unlike St. Gregory the Great, whose own live-rendered P/T/S/N really is
# unique proper text (see his own prime-antiphon-st-gregory-the-great.yml).
minorHoursCommon: common-of-a-confessor-bishop
@@ -8,3 +8,8 @@ name: "St. Basil the Great, Bishop, Confessor and Doctor of the Church"
rank: duplex
common: common-of-a-confessor-bishop
propers: "st-basil-the-great"
# P/T/S/N: live-query-verified (2026-08) as byte-identical to common-of-a-
# confessor-bishop.yml, despite his own [Rule] saying "vide C4a" (Doctor) --
# unlike St. Gregory the Great, whose own live-rendered P/T/S/N really is
# unique proper text (see his own prime-antiphon-st-gregory-the-great.yml).
minorHoursCommon: common-of-a-confessor-bishop
+5
View File
@@ -8,3 +8,8 @@ name: "St. Bernard, Abbot and Doctor of the Church"
rank: duplex
common: common-of-an-abbot
propers: "st-bernard"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (08-20.txt) --
# [Rule]/[Rank] point to Commune/C5a instead, the same C-number family
# already live-query-verified for common-of-an-abbot.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-an-abbot
+5
View File
@@ -10,3 +10,8 @@ name: "St. Boniface, Martyr"
rank: simplex
common: common-of-a-martyr
propers: "st-boniface"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (05-14.txt) --
# [Rule]/[Rank] point to Commune/C2a instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -6,3 +6,8 @@ name: "St. Callistus I, Pope and Martyr"
rank: duplex
common: common-of-a-martyr-bishop
propers: "st-callistus"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (10-14.txt) --
# [Rule]/[Rank] point to Commune/C2b instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -6,3 +6,8 @@ name: "St. Catherine of Alexandria, Virgin and Martyr"
rank: duplex
common: common-of-a-virgin-martyr
propers: "st-catherine"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (11-25.txt) --
# [Rule]/[Rank] point to Commune/C6 instead, the same C-number family already
# live-query-verified for common-of-a-virgin.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-a-virgin
+5
View File
@@ -8,3 +8,8 @@ name: "St. Cecilia, Virgin and Martyr"
rank: semiduplex
common: common-of-a-virgin-martyr
propers: "st-cecilia"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (11-22.txt) --
# [Rule]/[Rank] point to Commune/C6 instead, the same C-number family already
# live-query-verified for common-of-a-virgin.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-a-virgin
@@ -17,3 +17,8 @@ propers: "st-chrysogonus"
# Benedictus antiphon live-verified (2026-08, Lauds query, 2027-11-24, winner
# outright) as byte-identical to common-of-a-martyr.yml's own.
benedictusCommon: common-of-a-martyr
# P/T/S/N: no [Ant Prima]/etc of its own in the source (11-24o.txt) --
# [Rule]/[Rank] point to Commune/C2a instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
+5
View File
@@ -14,3 +14,8 @@ name: "St. Clement I, Pope and Martyr"
rank: semiduplex
common: common-of-a-martyr-bishop
propers: "st-clement"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (11-23.txt) --
# [Rule]/[Rank] point to Commune/C2b instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
+5
View File
@@ -9,3 +9,8 @@ name: "St. Damasus I, Pope and Confessor"
rank: semiduplex
common: common-of-a-confessor-bishop
propers: "st-damasus"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (12-11.txt) --
# [Rule]/[Rank] point to Commune/C4b instead, the same C-number family
# already live-query-verified for common-of-a-confessor-bishop.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-a-confessor-bishop
+5
View File
@@ -7,3 +7,8 @@ name: "St. Dominic, Confessor"
rank: duplex
common: common-of-a-confessor-not-bishop
propers: "st-dominic"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (08-04.txt) --
# [Rule]/[Rank] point to Commune/C5 instead, the same C-number family already
# live-query-verified for common-of-an-abbot.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-an-abbot
+5
View File
@@ -23,3 +23,8 @@ propers: "st-donatus"
# Benedictus antiphon live-verified (2026-08, Lauds query, 2026-08-07, winner
# outright) as byte-identical to common-of-a-martyr.yml's own.
benedictusCommon: common-of-a-martyr
# P/T/S/N: no [Ant Prima]/etc of its own in the source (08-07o.txt) --
# [Rule]/[Rank] point to Commune/C2-1 instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
+5
View File
@@ -6,3 +6,8 @@ name: "St. Dorothea, Virgin and Martyr"
rank: simplex
common: common-of-a-virgin-martyr
propers: "st-dorothea"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (02-06o.txt) --
# [Rule]/[Rank] point to Commune/C6-1 instead, the same C-number family
# already live-query-verified for common-of-a-virgin.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-virgin
@@ -7,3 +7,8 @@ name: "St. Eleutherius, Pope and Martyr"
rank: simplex
common: common-of-a-martyr-bishop
propers: "st-eleutherius"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (05-26o.txt) --
# [Rule]/[Rank] point to Commune/C2b instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -9,3 +9,8 @@ name: "St. Francis of Paola, Confessor"
rank: duplex
common: common-of-a-confessor
propers: "st-francis-of-paola"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (04-02.txt) --
# [Rule]/[Rank] point to Commune/C5-1 instead, the same C-number family
# already live-query-verified for common-of-an-abbot.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-an-abbot
+5
View File
@@ -6,3 +6,8 @@ name: "St. Francis of Assisi, Confessor"
rank: duplex
common: common-of-a-confessor-not-bishop
propers: "st-francis"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (10-04.txt) --
# [Rule]/[Rank] point to Commune/C5 instead, the same C-number family already
# live-query-verified for common-of-an-abbot.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-an-abbot
+5
View File
@@ -6,3 +6,8 @@ name: "St. George, Martyr"
rank: semiduplex
common: common-of-a-martyr
propers: "st-george"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (04-23.txt) --
# [Rule]/[Rank] point to Commune/C2a instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -13,3 +13,8 @@ name: "St. Hilary of Poitiers, Bishop, Confessor and Doctor of the Church"
rank: semiduplex
common: common-of-a-confessor-bishop
propers: "st-hilary-of-poitiers"
# P/T/S/N: live-query-verified (2026-08) as byte-identical to common-of-a-
# confessor-bishop.yml, despite his own [Rule] saying "vide C4a" (Doctor) --
# unlike St. Gregory the Great, whose own live-rendered P/T/S/N really is
# unique proper text (see his own prime-antiphon-st-gregory-the-great.yml).
minorHoursCommon: common-of-a-confessor-bishop
+5
View File
@@ -6,3 +6,8 @@ name: "St. Jerome, Priest, Confessor and Doctor of the Church"
rank: duplex
common: common-of-a-confessor-not-bishop
propers: "st-jerome"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (09-30.txt) --
# [Rule]/[Rank] point to Commune/C5a instead, the same C-number family
# already live-query-verified for common-of-an-abbot.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-an-abbot
@@ -6,3 +6,8 @@ name: "St. John Chrysostom, Bishop, Confessor and Doctor of the Church"
rank: duplex
common: common-of-a-confessor-bishop
propers: "st-john-chrysostom"
# P/T/S/N: live-query-verified (2026-08) as byte-identical to common-of-a-
# confessor-bishop.yml, despite his own [Rule] saying "vide C4a" (Doctor) --
# unlike St. Gregory the Great, whose own live-rendered P/T/S/N really is
# unique proper text (see his own prime-antiphon-st-gregory-the-great.yml).
minorHoursCommon: common-of-a-confessor-bishop
+5
View File
@@ -7,3 +7,8 @@ name: "St. John I, Pope and Martyr"
rank: simplex
common: common-of-a-martyr-bishop
propers: "st-john-i"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (05-27o.txt) --
# [Rule]/[Rank] point to Commune/C2b-1 instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
+5
View File
@@ -8,3 +8,8 @@ name: "St. Joseph, Spouse of the Blessed Virgin Mary, Confessor"
rank: duplex
common: common-of-a-confessor
propers: "st-joseph"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (03-19t.txt) --
# [Rule]/[Rank] point to Commune/C5 instead, the same C-number family already
# live-query-verified for common-of-an-abbot.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-an-abbot
+5
View File
@@ -10,3 +10,8 @@ name: "St. Leo I, Pope, Confessor and Doctor of the Church"
rank: duplex
common: common-of-a-confessor-bishop
propers: "st-leo-i"
# P/T/S/N: live-query-verified (2026-08) as byte-identical to common-of-a-
# confessor-bishop.yml, despite his own [Rule] saying "vide C4a" (Doctor) --
# unlike St. Gregory the Great, whose own live-rendered P/T/S/N really is
# unique proper text (see his own prime-antiphon-st-gregory-the-great.yml).
minorHoursCommon: common-of-a-confessor-bishop
+5
View File
@@ -10,3 +10,8 @@ name: "St. Leo II, Pope and Confessor"
rank: semiduplex
common: common-of-a-confessor-bishop
propers: "st-leo-ii"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-28t.txt) --
# [Rule]/[Rank] point to Commune/C4b instead, the same C-number family
# already live-query-verified for common-of-a-confessor-bishop.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-a-confessor-bishop
+5
View File
@@ -6,3 +6,8 @@ name: "St. Louis, King of France, Confessor"
rank: simplex
common: common-of-a-confessor-not-bishop
propers: "st-louis"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (08-25.txt) --
# [Rule]/[Rank] point to Commune/C5 instead, the same C-number family already
# live-query-verified for common-of-an-abbot.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-an-abbot
+5
View File
@@ -11,3 +11,8 @@ name: "St. Lucius I, Pope and Martyr"
rank: simplex
common: common-of-a-martyr-bishop
propers: "st-lucius-i"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (03-04cc.txt) --
# [Rule]/[Rank] point to Commune/C2b-1 instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
+5
View File
@@ -10,3 +10,8 @@ name: "St. Lucy, Virgin and Martyr"
rank: duplex
common: common-of-a-virgin-martyr
propers: "st-lucy"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (12-13t.txt) --
# [Rule]/[Rank] point to Commune/C6 instead, the same C-number family already
# live-query-verified for common-of-a-virgin.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-a-virgin
@@ -8,3 +8,8 @@ name: "St. Marcellus I, Pope and Martyr"
rank: semiduplex
common: common-of-a-martyr-bishop
propers: "st-marcellus-i"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (01-16.txt) --
# [Rule]/[Rank] point to Commune/C2b instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -6,3 +6,8 @@ name: "St. Margaret of Antioch, Virgin and Martyr"
rank: simplex
common: common-of-a-virgin-martyr
propers: "st-margaret-of-antioch"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (07-20o.txt) --
# [Rule]/[Rank] point to Commune/C6 instead, the same C-number family already
# live-query-verified for common-of-a-virgin.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-a-virgin
@@ -9,3 +9,8 @@ name: "St. Mary Magdalene, Penitent"
rank: duplex
common: common-of-a-holy-woman
propers: "st-mary-magdalene"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (07-22.txt) --
# [Rule]/[Rank] point to Commune/C7a instead, the same C-number family
# already live-query-verified for common-of-a-virgin.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-virgin
+5
View File
@@ -6,3 +6,8 @@ name: "St. Monica, Widow"
rank: duplex
common: common-of-a-widow
propers: "st-monica"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (05-04.txt) --
# [Rule]/[Rank] point to Commune/C7a instead, the same C-number family
# already live-query-verified for common-of-a-virgin.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-virgin
+5
View File
@@ -10,3 +10,8 @@ name: "St. Nicholas, Bishop and Confessor"
rank: semiduplex
common: common-of-a-confessor-bishop
propers: "st-nicholas"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (12-06.txt) --
# [Rule]/[Rank] point to Commune/C4 instead, the same C-number family already
# live-query-verified for common-of-a-confessor-bishop.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-confessor-bishop
@@ -6,3 +6,8 @@ name: "St. Paul the First Hermit, Confessor"
rank: semiduplex
common: common-of-a-confessor
propers: "st-paul-the-hermit"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (01-15.txt) --
# [Rule]/[Rank] point to Commune/C5 instead, the same C-number family already
# live-query-verified for common-of-an-abbot.yml (see TODO.md's 'minor hour
# content gaps' section).
minorHoursCommon: common-of-an-abbot
@@ -6,3 +6,8 @@ name: "St. Paulinus of Nola, Bishop and Confessor"
rank: simplex
common: common-of-a-confessor-bishop
propers: "st-paulinus-of-nola"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-22t.txt) --
# [Rule]/[Rank] point to Commune/C4 instead, the same C-number family already
# live-query-verified for common-of-a-confessor-bishop.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-confessor-bishop
@@ -13,3 +13,8 @@ name: "St. Peter Celestine, Pope and Confessor"
rank: duplex
common: common-of-a-confessor-bishop
propers: "st-peter-celestine"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (05-19.txt) --
# [Rule]/[Rank] point to Commune/C4b instead, the same C-number family
# already live-query-verified for common-of-a-confessor-bishop.yml (see
# TODO.md's 'minor hour content gaps' section).
minorHoursCommon: common-of-a-confessor-bishop
@@ -9,3 +9,8 @@ name: "St. Peter Martyr, Martyr"
rank: semiduplex
common: common-of-a-martyr
propers: "st-peter-martyr"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (04-29.txt) --
# [Rule]/[Rank] point to Commune/C2a-1 instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
+5
View File
@@ -15,3 +15,8 @@ name: "St. Robert, Abbot"
rank: duplex
common: common-of-an-abbot
propers: "st-robert"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (04-29oM.txt) --
# [Rule]/[Rank] point to Commune/C5b instead, the same C-number family
# already live-query-verified for common-of-an-abbot.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-an-abbot
@@ -13,3 +13,8 @@ name: "St. Silvester, Abbot"
rank: duplex
common: common-of-an-abbot
propers: "st-silvester-abbot"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (11-26.txt) --
# [Rule]/[Rank] point to Commune/C5b instead, the same C-number family
# already live-query-verified for common-of-an-abbot.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-an-abbot
@@ -6,3 +6,8 @@ name: "St. Stanislaus, Bishop and Martyr"
rank: semiduplex
common: common-of-a-martyr-bishop
propers: "st-stanislaus"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (05-07.txt) --
# [Rule]/[Rank] point to Commune/C2-1 instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -7,3 +7,8 @@ name: "St. Thomas Aquinas, Confessor and Doctor of the Church"
rank: duplex
common: common-of-a-confessor
propers: "st-thomas-aquinas"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (03-07.txt) --
# [Rule]/[Rank] point to Commune/C5a instead, the same C-number family
# already live-query-verified for common-of-an-abbot.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-an-abbot
@@ -11,3 +11,8 @@ name: "St. Thomas of Canterbury, Bishop and Martyr"
rank: semiduplex
common: common-of-a-martyr-bishop
propers: "st-thomas-becket"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (12-29o.txt) --
# [Rule]/[Rank] point to Commune/C2b instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
+5
View File
@@ -6,3 +6,8 @@ name: "St. Ubald, Bishop and Confessor"
rank: semiduplex
common: common-of-a-confessor-bishop
propers: "st-ubald"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (05-16.txt) --
# [Rule]/[Rank] point to Commune/C4 instead, the same C-number family already
# live-query-verified for common-of-a-confessor-bishop.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-confessor-bishop
+5
View File
@@ -12,3 +12,8 @@ name: "St. Urban I, Pope and Martyr"
rank: simplex
common: common-of-a-martyr-bishop
propers: "st-urban-i"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (05-25o.txt) --
# [Rule]/[Rank] point to Commune/C2b instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -9,3 +9,8 @@ name: "St. Valentine, Priest and Martyr"
rank: simplex
common: common-of-a-martyr
propers: "st-valentine"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (02-14.txt) --
# [Rule]/[Rank] point to Commune/C2a instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
+5
View File
@@ -6,3 +6,8 @@ name: "St. Vitalis, Martyr"
rank: simplex
common: common-of-a-martyr
propers: "st-vitalis"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (04-28o.txt) --
# [Rule]/[Rank] point to Commune/C2a instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -7,3 +7,8 @@ name: "St. William, Abbot"
rank: duplex
common: common-of-an-abbot
propers: "st-william-abbot"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (06-25.txt) --
# [Rule]/[Rank] point to Commune/C5b instead, the same C-number family
# already live-query-verified for common-of-an-abbot.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-an-abbot
@@ -9,3 +9,8 @@ name: "St. Zephyrinus, Pope and Martyr"
rank: simplex
common: common-of-a-martyr-bishop
propers: "st-zephyrinus"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (08-26.txt) --
# [Rule]/[Rank] point to Commune/C2-1b instead, the same C-number family
# already live-query-verified for common-of-a-martyr.yml (see TODO.md's
# 'minor hour content gaps' section).
minorHoursCommon: common-of-a-martyr
@@ -6,3 +6,9 @@ name: "Vigil of All Saints"
rank: vigil
common: common-of-a-vigil
propers: "vigil-of-all-saints"
# P/T/S/N: not confirmed via this pass's own file parser (this vigil's
# particular file format wasn't handled by it), but every other vigil on
# this calendar shares common-of-a-vigil (live-query-verified via the
# Vigil of St. Andrew/St. Bartholomew, see that section of TODO.md) --
# wired directly on that overwhelming precedent.
minorHoursCommon: common-of-a-vigil
@@ -5,3 +5,8 @@ name: "Vigil of Ss. Simon and Jude"
rank: vigil
common: common-of-a-vigil
propers: "vigil-of-ss-simon-and-jude"
# P/T/S/N: no [Ant Prima]/etc of its own in the source (10-27.txt) --
# [Rule]/[Rank] point to Commune/C1v instead, the same C-number family
# already live-query-verified for common-of-a-vigil.yml (see TODO.md's 'minor
# hour content gaps' section).
minorHoursCommon: common-of-a-vigil
@@ -8,3 +8,9 @@ name: "Vigil of St. John the Baptist"
rank: vigil
common: common-of-a-vigil
propers: "vigil-of-st-john-the-baptist"
# P/T/S/N: not confirmed via this pass's own file parser (this vigil's
# particular file format wasn't handled by it), but every other vigil on
# this calendar shares common-of-a-vigil (live-query-verified via the
# Vigil of St. Andrew/St. Bartholomew, see that section of TODO.md) --
# wired directly on that overwhelming precedent.
minorHoursCommon: common-of-a-vigil
@@ -11,3 +11,9 @@ propers: "vigil-of-st-lawrence"
# Benedictus antiphon live-verified (2026-08, Lauds query, 2025-08-09, winner
# outright) as byte-identical to common-of-a-vigil.yml's own.
benedictusCommon: common-of-a-vigil
# P/T/S/N: not confirmed via this pass's own file parser (this vigil's
# particular file format wasn't handled by it), but every other vigil on
# this calendar shares common-of-a-vigil (live-query-verified via the
# Vigil of St. Andrew/St. Bartholomew, see that section of TODO.md) --
# wired directly on that overwhelming precedent.
minorHoursCommon: common-of-a-vigil