Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7cc6adfb55 | |||
| 395b7dfc1f |
@@ -0,0 +1,16 @@
|
||||
# A monastic-calendar-specific addition, absent from the base Tridentine
|
||||
# table (1570.txt) entirely -- unsurprisingly, since this feast (all the
|
||||
# saints of St. Benedict's own Order) exists only in Benedictine-family
|
||||
# calendars. Verified live (Monastic Tridentinum 1617, 2025-11-13) --
|
||||
# winner outright, Duplex II. classis, alone; one of the highest-ranked
|
||||
# monastic-only additions found in this pull, alongside Ss. Placid and
|
||||
# Companions (October). No unique collect: the raw file at this MM-DD
|
||||
# slot (Sancti/11-13.txt) is actually St. Didacus's (a later, 1588+
|
||||
# addition to this filename slot) -- a live prayTertia query for the
|
||||
# Monastic 1617 track returns no Oratio at all, confirming propers: null
|
||||
# is correct.
|
||||
id: all-saints-of-the-benedictine-order
|
||||
name: "All Saints of the Order of St. Benedict"
|
||||
rank: duplex-2-classis
|
||||
common: proper-to-all-saints
|
||||
propers: null
|
||||
@@ -1,7 +1,10 @@
|
||||
# Verified against Divinum Officium (web/www/horas/Latin/Sancti/11-01.txt,
|
||||
# untagged/default [Rank] block).
|
||||
# untagged/default [Rank] block). Propers backfilled during the November
|
||||
# pull now that the collect-pulling methodology exists -- own proper
|
||||
# collect (see all-saints-collect.yml for a note on how its English side
|
||||
# was sourced).
|
||||
id: all-saints
|
||||
name: "All Saints"
|
||||
rank: duplex-1-classis
|
||||
common: proper-to-all-saints
|
||||
propers: null
|
||||
propers: "all-saints"
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617), live
|
||||
# kalendar check (2025-11-18) -- winner outright, Duplex, alone. About the
|
||||
# basilicas honoring Ss. Peter and Paul specifically (not a feast of the
|
||||
# Lord the way the Nov 9 Dedication of the Basilica of the Most Holy
|
||||
# Savior is -- see this month's sanctoral-calendar.yml comment on that
|
||||
# exclusion), so kept in scope like the Commemoration of St. Paul (June)
|
||||
# and the two Chair-of-Peter feasts (January). No unique collect: the raw
|
||||
# file at this MM-DD slot (Sancti/11-18.txt) is empty.
|
||||
id: dedication-of-the-basilicas-of-ss-peter-and-paul
|
||||
name: "Dedication of the Basilicas of Ss. Peter and Paul"
|
||||
rank: duplex
|
||||
common: common-of-an-apostle
|
||||
propers: null
|
||||
@@ -0,0 +1,11 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617), live
|
||||
# kalendar check (2025-11-10) -- winner outright, Simplex, alone. No
|
||||
# unique collect: the raw file at this MM-DD slot (Sancti/11-10.txt) is
|
||||
# actually St. Andrew Avellino's (a later, 1712 canonization) -- a live
|
||||
# prayTertia query for the Monastic 1617 track returns no Oratio at all,
|
||||
# confirming propers: null is correct.
|
||||
id: ss-tryphon-and-companions
|
||||
name: "Ss. Tryphon, Respicius, and Nympha, Martyrs"
|
||||
rank: simplex
|
||||
common: common-of-several-martyrs
|
||||
propers: null
|
||||
@@ -0,0 +1,8 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617), live
|
||||
# kalendar check (2026-11-30) -- winner outright, Duplex II. classis,
|
||||
# alone. Own proper collect and antiphon.
|
||||
id: st-andrew
|
||||
name: "St. Andrew, Apostle"
|
||||
rank: duplex-2-classis
|
||||
common: common-of-an-apostle
|
||||
propers: "st-andrew"
|
||||
@@ -0,0 +1,8 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617), live
|
||||
# kalendar check (2032-11-25) -- winner outright, Duplex, alone. Own
|
||||
# proper collect, no unique antiphon of her own.
|
||||
id: st-catherine
|
||||
name: "St. Catherine of Alexandria, Virgin and Martyr"
|
||||
rank: duplex
|
||||
common: common-of-a-virgin-martyr
|
||||
propers: "st-catherine"
|
||||
@@ -0,0 +1,10 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617), live
|
||||
# kalendar check on a clean year (2032-11-22, chosen to avoid the cluster
|
||||
# of late-November Sunday collisions this cluster of dates has almost
|
||||
# every other year) -- winner outright, Semiduplex, alone. Own proper
|
||||
# collect and antiphon.
|
||||
id: st-cecilia
|
||||
name: "St. Cecilia, Virgin and Martyr"
|
||||
rank: semiduplex
|
||||
common: common-of-a-virgin-martyr
|
||||
propers: "st-cecilia"
|
||||
@@ -0,0 +1,16 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617), live
|
||||
# kalendar check on a clean year (2032-11-24, chosen so Nov 23 isn't a
|
||||
# Sunday that year) -- winner outright, Simplex, alone. In years where
|
||||
# Nov 23 (St. Clement's own date) falls on a Sunday, Clement transfers
|
||||
# forward and displaces this saint entirely for that year instead (see
|
||||
# st-clement.yml and the regression test in
|
||||
# tests/calendar/november-sanctoral.test.ts) -- a real, single-day
|
||||
# transfer this app's existing machinery models correctly. No unique
|
||||
# collect: the raw file's own [Oratio] is an unusual bare cross-reference
|
||||
# notation ("@:Oratio_") that doesn't resolve to any text via a live
|
||||
# query for the Monastic 1617 track, confirming propers: null is correct.
|
||||
id: st-chrysogonus
|
||||
name: "St. Chrysogonus, Martyr"
|
||||
rank: simplex
|
||||
common: common-of-a-martyr
|
||||
propers: null
|
||||
@@ -0,0 +1,16 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617), live
|
||||
# kalendar check on a clean year (2032-11-23) -- winner outright,
|
||||
# Semiduplex, over the stub St. Felicitas (see st-felicitas.yml). In
|
||||
# years where Nov 23 itself falls on a Sunday (e.g. 2025), this feast
|
||||
# transfers forward to Nov 24 instead, outranking St. Chrysogonus that
|
||||
# day (see st-chrysogonus.yml) -- unlike August's multi-day-skip transfer
|
||||
# gap, this is a plain single-day forward transfer, well within this
|
||||
# app's existing transfer machinery; see the regression test in
|
||||
# tests/calendar/november-sanctoral.test.ts. Own proper collect, no
|
||||
# unique antiphon of his own (his own [Ant 1] is a fragment referencing a
|
||||
# well-related legend, not usable as a standalone antiphon text).
|
||||
id: st-clement
|
||||
name: "St. Clement I, Pope and Martyr"
|
||||
rank: semiduplex
|
||||
common: common-of-a-martyr-bishop
|
||||
propers: "st-clement"
|
||||
@@ -0,0 +1,14 @@
|
||||
# A monastic-calendar-specific reassignment, not a mistake: the base
|
||||
# Tridentine table (1570.txt) has St. Martin I, Pope and Martyr, on Nov
|
||||
# 12, but the monastic-specific delta table (M1617.txt) overrides that
|
||||
# day with this saint instead, and separately redirects Martin's own
|
||||
# content to Nov 14 (see st-martin-i.yml) -- confirmed live (Monastic
|
||||
# Tridentinum 1617, 2025-11-12), winning outright at Duplex, alone. Same
|
||||
# class of finding as October's St. Justina/St. Marcus reassignment. No
|
||||
# unique collect: the raw file at this MM-DD slot (Sancti/11-12.txt) is
|
||||
# empty.
|
||||
id: st-emilian
|
||||
name: "St. Emilian, Abbot"
|
||||
rank: duplex
|
||||
common: common-of-an-abbot
|
||||
propers: null
|
||||
@@ -0,0 +1,9 @@
|
||||
# Genuinely unwinnable stub (verified 2032-11-23) -- always commemorated
|
||||
# under St. Clement (see st-clement.yml), never wins outright; both are
|
||||
# fixed, non-movable dates, so this isn't an artifact of the tested year.
|
||||
# rank/propers unverified placeholders.
|
||||
id: st-felicitas
|
||||
name: "St. Felicitas, Martyr"
|
||||
rank: simplex
|
||||
common: common-of-a-martyr
|
||||
propers: null
|
||||
@@ -0,0 +1,9 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617), live
|
||||
# kalendar check (2025-11-17) -- winner outright, Semiduplex, alone. No
|
||||
# unique collect: the raw file at this MM-DD slot (Sancti/11-17.txt) is
|
||||
# empty.
|
||||
id: st-gregory-thaumaturgus
|
||||
name: "St. Gregory Thaumaturgus, Bishop and Confessor"
|
||||
rank: semiduplex
|
||||
common: common-of-a-confessor-bishop
|
||||
propers: null
|
||||
@@ -0,0 +1,15 @@
|
||||
# A monastic-calendar-specific redirect: the base Tridentine table
|
||||
# (1570.txt) has this saint's content on Nov 12, but the monastic-
|
||||
# specific delta table (M1617.txt) moves it here to Nov 14 instead, since
|
||||
# Nov 12 in the monastic calendar belongs to St. Emilian (see
|
||||
# st-emilian.yml) -- confirmed live (Monastic Tridentinum 1617,
|
||||
# 2025-11-14), winning outright at Semiduplex, alone. No unique collect:
|
||||
# the raw file at this MM-DD slot (Sancti/11-14.txt) is actually St.
|
||||
# Josaphat's (a much later, 1867 canonization) -- a live prayTertia query
|
||||
# for the Monastic 1617 track returns no Oratio at all, confirming
|
||||
# propers: null is correct.
|
||||
id: st-martin-i
|
||||
name: "St. Martin I, Pope and Martyr"
|
||||
rank: semiduplex
|
||||
common: common-of-a-martyr-bishop
|
||||
propers: null
|
||||
@@ -0,0 +1,8 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617), live
|
||||
# kalendar check (2025-11-11) -- winner outright, Duplex majus, over the
|
||||
# stub St. Menna (see st-menna.yml). Own proper collect and antiphon.
|
||||
id: st-martin-of-tours
|
||||
name: "St. Martin of Tours, Bishop and Confessor"
|
||||
rank: duplex-majus
|
||||
common: common-of-a-confessor-bishop
|
||||
propers: "st-martin-of-tours"
|
||||
@@ -0,0 +1,9 @@
|
||||
# Genuinely unwinnable stub (verified 2025-11-11) -- always commemorated
|
||||
# under St. Martin of Tours (see st-martin-of-tours.yml), never wins
|
||||
# outright; both are fixed, non-movable dates, so this isn't an artifact
|
||||
# of the tested year. rank/propers unverified placeholders.
|
||||
id: st-menna
|
||||
name: "St. Menna, Martyr"
|
||||
rank: simplex
|
||||
common: common-of-a-martyr
|
||||
propers: null
|
||||
@@ -0,0 +1,14 @@
|
||||
# A monastic-calendar-specific addition: the base Tridentine table
|
||||
# (1570.txt) has St. Pontian as Nov 19's sole entry, but the monastic-
|
||||
# specific delta table (M1617.txt) adds this saint as primary instead,
|
||||
# demoting Pontian to a commemoration (see st-pontian.yml) -- confirmed
|
||||
# live (Monastic Tridentinum 1617, 2025-11-19), winning outright at
|
||||
# Duplex. No unique collect: the raw file at this MM-DD slot
|
||||
# (Sancti/11-19.txt) is actually St. Elizabeth of Hungary's (a later,
|
||||
# 1235 canonization) -- a live prayTertia query for the Monastic 1617
|
||||
# track returns no Oratio at all, confirming propers: null is correct.
|
||||
id: st-odo
|
||||
name: "St. Odo, Abbot"
|
||||
rank: duplex
|
||||
common: common-of-an-abbot
|
||||
propers: null
|
||||
@@ -0,0 +1,11 @@
|
||||
# Genuinely unwinnable stub (verified 2032-11-26) -- always commemorated
|
||||
# under St. Silvester Abbot in the monastic calendar (see
|
||||
# st-silvester-abbot.yml), even though the base Tridentine table has him
|
||||
# as the sole entry here; both are fixed, non-movable dates, so this
|
||||
# isn't an artifact of the tested year. rank/propers unverified
|
||||
# placeholders.
|
||||
id: st-peter-of-alexandria
|
||||
name: "St. Peter of Alexandria, Bishop and Martyr"
|
||||
rank: simplex
|
||||
common: common-of-a-martyr-bishop
|
||||
propers: null
|
||||
@@ -0,0 +1,10 @@
|
||||
# Genuinely unwinnable stub (verified 2025-11-19) -- always commemorated
|
||||
# under St. Odo in the monastic calendar (see st-odo.yml), even though
|
||||
# the base Tridentine table has him as the sole entry here; both are
|
||||
# fixed, non-movable dates, so this isn't an artifact of the tested year.
|
||||
# rank/propers unverified placeholders.
|
||||
id: st-pontian
|
||||
name: "St. Pontian, Pope and Martyr"
|
||||
rank: simplex
|
||||
common: common-of-a-martyr-bishop
|
||||
propers: null
|
||||
@@ -0,0 +1,9 @@
|
||||
# Genuinely unwinnable stub (verified 2025-11-29) -- always commemorated
|
||||
# under the Vigil of St. Andrew (see vigil-of-st-andrew.yml), never wins
|
||||
# outright; both are fixed, non-movable dates, so this isn't an artifact
|
||||
# of the tested year. rank/propers unverified placeholders.
|
||||
id: st-saturninus
|
||||
name: "St. Saturninus, Martyr"
|
||||
rank: simplex
|
||||
common: common-of-a-martyr
|
||||
propers: null
|
||||
@@ -0,0 +1,15 @@
|
||||
# A monastic-calendar-specific reassignment, not a mistake: the base
|
||||
# Tridentine table (1570.txt) has St. Peter of Alexandria as Nov 26's
|
||||
# sole entry, but the monastic-specific delta table (M1617.txt) overrides
|
||||
# that day with this saint instead, demoting Peter to a commemoration
|
||||
# (see st-peter-of-alexandria.yml) -- confirmed live (Monastic
|
||||
# Tridentinum 1617, 2032-11-26), winning outright at Duplex. Own proper
|
||||
# collect, no unique antiphon of his own. Distinct from October's St.
|
||||
# Sylvester I, Pope (not in this pull's data) and December's St.
|
||||
# Sylvester I feast (Dec 31, not yet pulled) -- this is Sylvester Gozzolini,
|
||||
# founder of the Sylvestrine Benedictines.
|
||||
id: st-silvester-abbot
|
||||
name: "St. Silvester, Abbot"
|
||||
rank: duplex
|
||||
common: common-of-an-abbot
|
||||
propers: "st-silvester-abbot"
|
||||
@@ -0,0 +1,10 @@
|
||||
# A real vigil (2025-11-29, clean year). No unique collect: the raw
|
||||
# file's own [Oratio] is a plain cross-reference to a generic Common
|
||||
# formula (@Commune/C1v, "Oratio 2 loco"), not unique text, so
|
||||
# propers: null is correct (Common-of-Saints only) -- same treatment as
|
||||
# October's Ss. Placid and Companions.
|
||||
id: vigil-of-st-andrew
|
||||
name: "Vigil of St. Andrew"
|
||||
rank: vigil
|
||||
common: common-of-a-vigil
|
||||
propers: null
|
||||
@@ -254,5 +254,54 @@ days:
|
||||
"10-27": [vigil-of-ss-simon-and-jude]
|
||||
"10-28": [ss-simon-and-jude]
|
||||
"10-31": [vigil-of-all-saints]
|
||||
# November — 11/12 of the pre-1955 pull. All Saints' own propers were
|
||||
# backfilled this month (see all-saints-collect.yml). New exclusion
|
||||
# categories this month: All Souls' Day (Nov 2) is a fundamentally
|
||||
# different liturgical genre -- the Office of the Dead, not a saint's
|
||||
# feast at all, no Common-of-Saints structure to fall back on -- out of
|
||||
# scope the same way this app doesn't model the Requiem/funeral rite
|
||||
# anywhere else. Nov 3-7 are pure All-Saints-octave continuations (no
|
||||
# named saint). Ss. Four Crowned Martyrs (Nov 8, the octave's own final
|
||||
# day) hit the same unmodeled-octave gap as several saints in August/
|
||||
# September. The Dedication of the Basilica of the Most Holy Savior
|
||||
# (Nov 9, i.e. the Lateran) is a fixed feast of the Lord (named for the
|
||||
# Savior directly), excluded the same way the Transfiguration was in
|
||||
# August -- its secondary, St. Theodore, is excluded along with it for
|
||||
# the same unmodeled-primary reason. Unlike that one, the Nov 18
|
||||
# Dedication of the Basilicas of Ss. Peter and Paul is about the
|
||||
# Apostles, not the Lord, so it's kept in scope, same as the
|
||||
# Commemoration of St. Paul and the two Chair-of-Peter feasts. The
|
||||
# Presentation of the BVM (Nov 21, itself a monastic-calendar-only
|
||||
# addition) is a fixed BVM feast, excluded per the usual convention.
|
||||
#
|
||||
# Three monastic-calendar-specific reassignments this month, the most
|
||||
# of any month so far: St. Emilian (Nov 12) displaces St. Martin I,
|
||||
# Pope, who moves to Nov 14; St. Odo (Nov 19) is added outright,
|
||||
# demoting St. Pontian; St. Silvester, Abbot (Nov 26) displaces St.
|
||||
# Peter of Alexandria. Plus All Saints of the Benedictine Order (Nov
|
||||
# 13, Duplex II. classis) -- absent from the base table entirely, one
|
||||
# of the highest-ranked monastic-only additions in this whole pull.
|
||||
#
|
||||
# Also notable: St. Clement (Nov 23) transferring forward into St.
|
||||
# Chrysogonus's day (Nov 24) whenever Nov 23 falls on a Sunday is this
|
||||
# pull's first *single-day* transfer-plus-collision case (unlike
|
||||
# August's Finding-of-St.-Stephen situation, which needed an unmodeled
|
||||
# multi-day skip) -- this app's existing transfer machinery handles it
|
||||
# correctly; see tests/calendar/november-sanctoral.test.ts.
|
||||
"11-01": [all-saints]
|
||||
"11-10": [ss-tryphon-and-companions]
|
||||
"11-11": [st-martin-of-tours, st-menna]
|
||||
"11-12": [st-emilian]
|
||||
"11-13": [all-saints-of-the-benedictine-order]
|
||||
"11-14": [st-martin-i]
|
||||
"11-17": [st-gregory-thaumaturgus]
|
||||
"11-18": [dedication-of-the-basilicas-of-ss-peter-and-paul]
|
||||
"11-19": [st-odo, st-pontian]
|
||||
"11-22": [st-cecilia]
|
||||
"11-23": [st-clement, st-felicitas]
|
||||
"11-24": [st-chrysogonus]
|
||||
"11-25": [st-catherine]
|
||||
"11-26": [st-silvester-abbot, st-peter-of-alexandria]
|
||||
"11-29": [vigil-of-st-andrew, st-saturninus]
|
||||
"11-30": [st-andrew]
|
||||
"12-08": [immaculate-conception]
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
# Verified against Divinum Officium (web/www/horas/Latin+English/Sancti/
|
||||
# 11-01.txt) directly -- the live prayTertia query's English side didn't
|
||||
# render an Oratio translation for this date for reasons not fully
|
||||
# understood (the Latin side rendered correctly; every other saint this
|
||||
# pull has queried the same way), so the raw source files were read
|
||||
# directly instead this one time. The closing formula ("$Per Dominum" in
|
||||
# the raw file) is expanded to the standard form used throughout this
|
||||
# project, matching every other Duplex-rank collect.
|
||||
id: all-saints-collect
|
||||
text:
|
||||
la: |
|
||||
Orémus.
|
||||
Omnípotens sempitérne Deus, qui nos ómnium Sanctórum tuórum mérita sub una tribuísti celebritáte venerári: quǽsumus; ut desiderátam nobis tuæ propitiatiónis abundántiam, multiplicátis intercessóribus, largiáris.
|
||||
Per Dóminum nostrum Jesum Christum, Fílium tuum: qui tecum vivit et regnat in unitáte Spíritus Sancti, Deus, per ómnia sǽcula sæculórum.
|
||||
℟. Amen.
|
||||
en: |
|
||||
Let us pray.
|
||||
Almighty, eternal God, Who granted us to honor the merits of all Thy Saints in a single solemn festival, bestow on us, we beseech Thee, through their manifold intercession, that abundance of Thy mercy for which we yearn.
|
||||
Through Jesus Christ, thy Son our Lord, Who liveth and reigneth with thee, in the unity of the Holy Ghost, God, world without end.
|
||||
℟. Amen.
|
||||
status:
|
||||
la: verified
|
||||
en: verified
|
||||
@@ -0,0 +1,12 @@
|
||||
# Verified against Divinum Officium (Latin/English Sancti/11-30.txt's own
|
||||
# [Ant 1] — the Lauds-hour antiphon, not Terce's. That file's own
|
||||
# "(rubrica cisterciensis)" alternate is a different text entirely; the
|
||||
# plain default is used here for consistency with every other saint file
|
||||
# in this set.
|
||||
id: st-andrew-antiphon
|
||||
text:
|
||||
la: "Unus ex duóbus, * qui secúti sunt Dóminum, erat Andréas, frater Simónis Petri, allelúja."
|
||||
en: "One of the two * which followed the Lord was Andrew, Simon Peter's brother. Alleluia."
|
||||
status:
|
||||
la: verified
|
||||
en: verified
|
||||
@@ -0,0 +1,17 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617) — read
|
||||
# directly from the reference engine's own real-date output (2026-11-30).
|
||||
id: st-andrew-collect
|
||||
text:
|
||||
la: |
|
||||
Orémus.
|
||||
Majestátem tuam, Dómine, supplíciter exorámus: ut, sicut Ecclésiæ tuæ beátus Andréas Apóstolus éxstitit prædicátor et rector; ita apud te sit pro nobis perpétuus intercéssor.
|
||||
Per Dóminum nostrum Jesum Christum, Fílium tuum: qui tecum vivit et regnat in unitáte Spíritus Sancti, Deus, per ómnia sǽcula sæculórum.
|
||||
℟. Amen.
|
||||
en: |
|
||||
Let us pray.
|
||||
O Lord, we humbly beseech thy Majesty, that even as Thou didst give thy blessed Apostle Andrew to thy Church to be a teacher and a ruler on earth, so, now that he is with thee, he may continually make intercession for us.
|
||||
Through Jesus Christ, thy Son our Lord, Who liveth and reigneth with thee, in the unity of the Holy Ghost, God, world without end.
|
||||
℟. Amen.
|
||||
status:
|
||||
la: verified
|
||||
en: verified
|
||||
@@ -0,0 +1,17 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617) — read
|
||||
# directly from the reference engine's own real-date output (2032-11-25).
|
||||
id: st-catherine-collect
|
||||
text:
|
||||
la: |
|
||||
Orémus.
|
||||
Deus, qui dedísti legem Móysi in summitáte montis Sínai, et in eódem loco per sanctos Angelos tuos corpus beátæ Catharínæ Vírginis et Mártyris tuæ mirabíliter collocásti: præsta, quǽsumus; ut, ejus méritis et intercessióne, ad montem, qui Christus est, perveníre valeámus:
|
||||
Qui tecum vivit et regnat in unitáte Spíritus Sancti, Deus, per ómnia sǽcula sæculórum.
|
||||
℟. Amen.
|
||||
en: |
|
||||
Let us pray.
|
||||
O God, Who didst give the Law unto Moses upon the top of Mount Sinai, and there didst cause the body of thy blessed Virgin and Martyr Catharine to be marvelously laid by thine holy Angels, grant unto us, we beseech thee, for her sake and at her prayers, that we may finally attain unto that mountain which is Christ.
|
||||
Who with thee liveth and reigneth, in the unity of the Holy Spirit, God, world without end.
|
||||
℟. Amen.
|
||||
status:
|
||||
la: verified
|
||||
en: verified
|
||||
@@ -0,0 +1,10 @@
|
||||
# Verified against Divinum Officium (Latin/English Sancti/11-22.txt's own
|
||||
# [Ant 1] — the Lauds-hour antiphon, not Terce's. Refers to Valerian, her
|
||||
# husband in the traditional legend.
|
||||
id: st-cecilia-antiphon
|
||||
text:
|
||||
la: "Est secrétum, * Valeriáne, quod tibi volo dícere: Angelum Dei hábeo amatórem, qui nímio zelo custódit corpus meum."
|
||||
en: "Valerian! there is a secret * which I wish to tell thee. I have an Angel of God for a lover, and he is very jealous to keep my body."
|
||||
status:
|
||||
la: verified
|
||||
en: verified
|
||||
@@ -0,0 +1,17 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617) — read
|
||||
# directly from the reference engine's own real-date output (2032-11-22).
|
||||
id: st-cecilia-collect
|
||||
text:
|
||||
la: |
|
||||
Orémus.
|
||||
Deus, qui nos ánnua beátæ Cæcíliæ Vírginis et Mártyris tuæ solemnitáte lætíficas: da, ut, quam venerámur offício, étiam piæ conversatiónis sequámur exémplo.
|
||||
Per Dóminum nostrum Jesum Christum, Fílium tuum: qui tecum vivit et regnat in unitáte Spíritus Sancti, Deus, per ómnia sǽcula sæculórum.
|
||||
℟. Amen.
|
||||
en: |
|
||||
Let us pray.
|
||||
O God, Who year by year dost gladden thy people by the solemn feast of thy blessed Virgin and Martyr Cecilia, grant unto us, we beseech thee, not only devoutly to observe the same, but also to follow after the pattern of her godly conversation.
|
||||
Through Jesus Christ, thy Son our Lord, Who liveth and reigneth with thee, in the unity of the Holy Ghost, God, world without end.
|
||||
℟. Amen.
|
||||
status:
|
||||
la: verified
|
||||
en: verified
|
||||
@@ -0,0 +1,17 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617) — read
|
||||
# directly from the reference engine's own real-date output (2032-11-23).
|
||||
id: st-clement-collect
|
||||
text:
|
||||
la: |
|
||||
Orémus.
|
||||
Deus, qui nos ánnua beáti Cleméntis Mártyris tui atque Pontíficis solemnitáte lætíficas: concéde propítius; ut cujus natalítia cólimus, virtútem quoque passiónis imitémur.
|
||||
Per Dóminum nostrum Jesum Christum, Fílium tuum: qui tecum vivit et regnat in unitáte Spíritus Sancti, Deus, per ómnia sǽcula sæculórum.
|
||||
℟. Amen.
|
||||
en: |
|
||||
Let us pray.
|
||||
O God, Who dost gladden us by the yearly Feast-day of thine holy Martyr, Clement mercifully grant unto us who keep their birthday, the strength to imitate their patience under suffering.
|
||||
Through Jesus Christ, thy Son our Lord, Who liveth and reigneth with thee, in the unity of the Holy Ghost, God, world without end.
|
||||
℟. Amen.
|
||||
status:
|
||||
la: verified
|
||||
en: verified
|
||||
@@ -0,0 +1,9 @@
|
||||
# Verified against Divinum Officium (Latin/English Sancti/11-11.txt's own
|
||||
# [Ant 1] — the Lauds-hour antiphon, not Terce's.
|
||||
id: st-martin-of-tours-antiphon
|
||||
text:
|
||||
la: "O beátum virum, * cujus ánima paradísum póssidet! Unde exsúltant Ángeli, lætántur Archángeli, chorus Sanctórum proclámat, turba Vírginum invítat: Mane nobíscum in ætérnum."
|
||||
en: "O how blessed a man is he! * His soul hath entered into possession in Paradise. There the Angels cry aloud for joy, there the Archangels make glad, there the whole company of the Saints do shout, there the army of the Virgins do call others to follow, (saying:) Make thine everlasting abode with us."
|
||||
status:
|
||||
la: verified
|
||||
en: verified
|
||||
@@ -0,0 +1,17 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617) — read
|
||||
# directly from the reference engine's own real-date output (2025-11-11).
|
||||
id: st-martin-of-tours-collect
|
||||
text:
|
||||
la: |
|
||||
Orémus.
|
||||
Deus, qui cónspicis, quia ex nulla nostra virtúte subsístimus: concéde propítius; ut, intercessióne beáti Martíni Confessóris tui atque Pontíficis, contra ómnia advérsa muniámur.
|
||||
Per Dóminum nostrum Jesum Christum, Fílium tuum: qui tecum vivit et regnat in unitáte Spíritus Sancti, Deus, per ómnia sǽcula sæculórum.
|
||||
℟. Amen.
|
||||
en: |
|
||||
Let us pray.
|
||||
Grant, we beseech thee, O Almighty God, that the worshipful Feast of thy blessed Confessor and Bishop Martin, may avail us to the increase both of godliness toward thee, and healthfulness to our own souls.
|
||||
Through Jesus Christ, thy Son our Lord, Who liveth and reigneth with thee, in the unity of the Holy Ghost, God, world without end.
|
||||
℟. Amen.
|
||||
status:
|
||||
la: verified
|
||||
en: verified
|
||||
@@ -0,0 +1,17 @@
|
||||
# Verified against Divinum Officium (Monastic Tridentinum 1617) — read
|
||||
# directly from the reference engine's own real-date output (2032-11-26).
|
||||
id: st-silvester-abbot-collect
|
||||
text:
|
||||
la: |
|
||||
Orémus.
|
||||
Clementíssime Deus, qui sanctum Silvéstrum Abbátem, sǽculi hujus vanitátem in apérto túmulo pie meditántem, ad erémum vocáre, et præcláris vitæ méritis decoráre dignátus es: te súpplices exorámus; ut, ejus exémplo terréna despiciéntes, tui consórtio perfruámur ætérno.
|
||||
Per Dóminum nostrum Jesum Christum, Fílium tuum: qui tecum vivit et regnat in unitáte Spíritus Sancti, Deus, per ómnia sǽcula sæculórum.
|
||||
℟. Amen.
|
||||
en: |
|
||||
Let us pray.
|
||||
Most merciful God, Who when the holy Abbot Sylvester was devoutly meditating upon the vanity of this world beside an open grave, graciously willed to call him into the desert and enrich him with unusual merits, we humbly pray that, following his example, despising the things of earth, we may thoroughly enjoy Thy everlasting presence.
|
||||
Through Jesus Christ, thy Son our Lord, Who liveth and reigneth with thee, in the unity of the Holy Ghost, God, world without end.
|
||||
℟. Amen.
|
||||
status:
|
||||
la: verified
|
||||
en: verified
|
||||
@@ -27,7 +27,13 @@ describe('getDayLabel — ordinal temporal label', () => {
|
||||
});
|
||||
|
||||
it("Advent's own anchor Sunday is already week 1, not a separate anchor-week case", () => {
|
||||
expect(getDayLabel(resolveDay('2025-11-30'))).toBe('The 1st Sunday of Advent');
|
||||
// 2025-11-30 is also St. Andrew's own day (Duplex II. classis) — since
|
||||
// the November sanctoral pull, he's correctly commemorated alongside
|
||||
// Advent I rather than simply absent (confirmed against the live
|
||||
// reference engine, which shows the same pairing), so the label
|
||||
// reflects both, feast name first, same pattern as Trinity Sunday's
|
||||
// own St. Felix I case above.
|
||||
expect(getDayLabel(resolveDay('2025-11-30'))).toBe('St. Andrew, Apostle — The 1st Sunday of Advent');
|
||||
expect(getDayLabel(resolveDay('2025-12-01'))).toBe('Monday in the 1st week of Advent');
|
||||
});
|
||||
|
||||
|
||||
@@ -0,0 +1,87 @@
|
||||
import { describe, expect, it } from 'vitest';
|
||||
import { resolveDay } from '../../src/calendar';
|
||||
import { getDayCollect } from '../../src/hours/resolve-common';
|
||||
|
||||
// Clean per-annum years for these dates (no Sunday collision) — see
|
||||
// data/calendar/saints/*.yml for per-saint source detail.
|
||||
describe('November sanctoral pull (first pass)', () => {
|
||||
it('All Saints wins outright with a real proper collect, backfilled this month', () => {
|
||||
const day = resolveDay('2025-11-01');
|
||||
expect(day.winner).toEqual({ kind: 'sanctoral', id: 'all-saints', name: 'All Saints', rank: 'duplex-1-classis' });
|
||||
expect(getDayCollect(day).status.en).toBe('verified');
|
||||
});
|
||||
|
||||
it('St. Martin of Tours wins outright at Duplex majus with a real proper collect and antiphon, over a genuinely unwinnable stub', () => {
|
||||
const day = resolveDay('2025-11-11');
|
||||
expect(day.winner).toEqual({
|
||||
kind: 'sanctoral',
|
||||
id: 'st-martin-of-tours',
|
||||
name: 'St. Martin of Tours, Bishop and Confessor',
|
||||
rank: 'duplex-majus',
|
||||
});
|
||||
expect(day.commemorations).toEqual([
|
||||
{ kind: 'sanctoral', id: 'st-menna', name: 'St. Menna, Martyr', rank: 'simplex' },
|
||||
]);
|
||||
expect(getDayCollect(day).status.en).toBe('verified');
|
||||
});
|
||||
|
||||
it('a monastic-calendar-specific reassignment (St. Emilian) displaces what the base Tridentine table gives to St. Martin I, Pope, who moves to a different date entirely', () => {
|
||||
const emilianDay = resolveDay('2025-11-12');
|
||||
expect(emilianDay.winner).toEqual({
|
||||
kind: 'sanctoral',
|
||||
id: 'st-emilian',
|
||||
name: 'St. Emilian, Abbot',
|
||||
rank: 'duplex',
|
||||
});
|
||||
const martinIDay = resolveDay('2025-11-14');
|
||||
expect(martinIDay.winner).toEqual({
|
||||
kind: 'sanctoral',
|
||||
id: 'st-martin-i',
|
||||
name: 'St. Martin I, Pope and Martyr',
|
||||
rank: 'semiduplex',
|
||||
});
|
||||
});
|
||||
|
||||
it('All Saints of the Benedictine Order, a monastic-calendar-only addition absent from the base Tridentine table, wins outright at Duplex II. classis', () => {
|
||||
const day = resolveDay('2025-11-13');
|
||||
expect(day.winner).toEqual({
|
||||
kind: 'sanctoral',
|
||||
id: 'all-saints-of-the-benedictine-order',
|
||||
name: 'All Saints of the Order of St. Benedict',
|
||||
rank: 'duplex-2-classis',
|
||||
});
|
||||
expect(day.commemorations).toEqual([]);
|
||||
});
|
||||
|
||||
it('St. Clement transfers forward into St. Chrysogonus\'s day whenever his own date falls on a Sunday -- a single-day transfer this app models correctly, unlike August\'s multi-day-skip case', () => {
|
||||
const clean = resolveDay('2032-11-24'); // Nov 23, 2032 is not a Sunday
|
||||
expect(clean.winner).toEqual({
|
||||
kind: 'sanctoral',
|
||||
id: 'st-chrysogonus',
|
||||
name: 'St. Chrysogonus, Martyr',
|
||||
rank: 'simplex',
|
||||
});
|
||||
const transferred = resolveDay('2025-11-24'); // Nov 23, 2025 IS a Sunday
|
||||
expect(transferred.winner).toEqual({
|
||||
kind: 'sanctoral',
|
||||
id: 'st-clement',
|
||||
name: 'St. Clement I, Pope and Martyr',
|
||||
rank: 'semiduplex',
|
||||
});
|
||||
expect(transferred.commemorations).toEqual([
|
||||
{ kind: 'sanctoral', id: 'st-chrysogonus', name: 'St. Chrysogonus, Martyr', rank: 'simplex' },
|
||||
]);
|
||||
});
|
||||
|
||||
it('St. Andrew wins outright at Duplex II. classis with a real proper collect and antiphon, alone', () => {
|
||||
const day = resolveDay('2026-11-30');
|
||||
expect(day.winner).toEqual({
|
||||
kind: 'sanctoral',
|
||||
id: 'st-andrew',
|
||||
name: 'St. Andrew, Apostle',
|
||||
rank: 'duplex-2-classis',
|
||||
});
|
||||
expect(day.commemorations).toEqual([]);
|
||||
expect(getDayCollect(day).status.en).toBe('verified');
|
||||
});
|
||||
});
|
||||
@@ -86,11 +86,13 @@ describe('resolveOrdo("compline", ...)', () => {
|
||||
});
|
||||
|
||||
it('anticipates Advent I: the Saturday evening before switches to the Alma Redemptoris Mater and shows the anticipated day label', () => {
|
||||
// Nov 30, 2025 is Advent I Sunday.
|
||||
// Nov 30, 2025 is Advent I Sunday -- also St. Andrew's own day
|
||||
// (Duplex II. classis), correctly commemorated alongside it since the
|
||||
// November sanctoral pull (see tests/calendar/day-label.test.ts).
|
||||
const eve = resolveOrdo('compline', '2025-11-29');
|
||||
const last = eve.parts[eve.parts.length - 1];
|
||||
expect(last?.kind === 'preces' ? last.label : undefined).toBe('Alma Redemptoris Mater');
|
||||
expect(eve.dayLabel).toBe('The 1st Sunday of Advent');
|
||||
expect(eve.dayLabel).toBe('St. Andrew, Apostle — The 1st Sunday of Advent');
|
||||
|
||||
const dayBefore = resolveOrdo('compline', '2025-11-28');
|
||||
const lastBefore = dayBefore.parts[dayBefore.parts.length - 1];
|
||||
|
||||
Reference in New Issue
Block a user