Author Common-of-Several-Martyrs Lauds/Vespers chapter/responsory/hymn/versicle
Deploy / deploy (push) Successful in 1m24s

Next-largest remaining Common category (22 real users) with no Lauds/
Vespers bundle authored, same fix pattern as Confessor-Not-Bishop and
Martyr(-Bishop). Live-verified against Divinum Officium (Monastic
Tridentinum 1617) votive=C3: chapter Sap 3:1-3, Lauds hymn "Rex glorióse
Mártyrum," Vespers hymn "Sanctórum méritis ínclyta gáudia," shared
versicle "Exsultábunt Sancti in glória." Cross-checked votive=C3/C3a/C3b
byte-identical, confirming the Missal-collect split (plain-martyrs vs.
Pope-martyrs) doesn't carry through to this Office bundle. Proof tested
on Ss. Placid and Companions (Duplex II. classis, real un-outranked
Second Vespers).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014axryJBrRswYh2niA7WCUc
This commit is contained in:
2026-08-26 07:45:12 -04:00
parent 7816450086
commit 52d6810f3a
9 changed files with 325 additions and 0 deletions
+20
View File
@@ -2860,6 +2860,26 @@ Matins-psalmody category tier does.
with no Lauds/Vespers bundle authored (Confessor, Confessor-Bishop, Virgin, Virgin-Martyr, with no Lauds/Vespers bundle authored (Confessor, Confessor-Bishop, Virgin, Virgin-Martyr,
Doctor, Apostle, Several-Martyrs, Several-Confessors, Holy Woman/Widow). Doctor, Apostle, Several-Martyrs, Several-Confessors, Holy Woman/Widow).
### Common-of-Several-Martyrs Lauds/Vespers bundle authored (2026-08-26)
Same fix pattern as the two entries above, next by impact (22 real users found live, the
largest of the remaining categories — see the "checked the reference source first" audit this
session that corrected the earlier gap list into real-Commune/real-Proprio/collision buckets
per category). Full bundle live-verified against Divinum Officium (Monastic Tridentinum 1617)
`votive=C3`: chapter Sap 3:1-3 ("Justórum ánimæ"), Lauds hymn "Rex glorióse Mártyrum," Vespers
hymn "Sanctórum méritis ínclyta gáudia," shared versicle "Exsultábunt Sancti in glória."
Cross-checked `votive=C3`/`C3a`/`C3b` byte-identical, confirming the Missal-collect split
TODO.md records elsewhere (plain-martyrs vs. Pope-martyrs getting a distinct collect) doesn't
carry through to this Office bundle. Proof tested on Ss. Placid and Companions (Oct 5, Duplex
II. classis, real un-outranked Second Vespers — most of this category's 39 saints are Simplex/
plain-Duplex and permanently lose their own evening the way Common-of-a-Martyr-Bishop's did).
`npm test` (480 tests), `tsc --noEmit` both pass. **Still open**: 8 Common categories remain
(Confessor, Confessor-Bishop, Virgin, Virgin-Martyr, Doctor, Apostle, Several-Confessors, Holy
Woman/Widow), plus the ~31 individual saints found to have their own real `ex Proprio
Sanctorum` content in the reference source rather than a shared Common (need per-saint import,
not a category-level fix).
## Known, deliberate simplifications (not bugs — working as designed) ## Known, deliberate simplifications (not bugs — working as designed)
- `getDayCollects`: each collect in a multi-collect day renders as its own - `getDayCollects`: each collect in a multi-collect day renders as its own
@@ -0,0 +1,22 @@
# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds
# `votive=C3` live query, 2026-08 -- same votive-office-view reasoning as
# vespers-hymn-common-of-a-martyr-bishop.yml's header (this Common's real
# saints are scattered across the calendar with no cheap guarantee of an
# un-outranked day, so the votive view gets the category's true content
# directly instead). Byte-identical to `votive=C3a`/`C3b`, confirming the
# Missal-collect split TODO.md records (plain groups of martyrs vs.
# Pope-martyr groups getting a distinct, more triumphal collect) doesn't
# carry through to this Office bundle -- both variants share one real
# chapter/responsory/hymn/versicle here. Same chapter reused for Vespers
# -- no separate vespers-capitulum-<id> file authored, per vespers.ts's
# vespersCapitulumForOverride fallback.
id: lauds-capitulum-common-of-several-martyrs
text:
la: "Justórum ánimæ in manu Dei sunt, et non tanget illos torméntum mortis. Visi sunt óculis insipiéntium mori: illi autem sunt in pace."
en: "But the souls of the just are in the hand of God, and the torment of death shall not touch them. In the sight of the unwise they seemed to die, but they are in peace."
citation:
la: "Sap 3:1-3"
en: "Wis 3:1-3"
status:
la: verified
en: verified
@@ -0,0 +1,80 @@
# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds
# `votive=C3` live query, 2026-08 -- see lauds-capitulum-common-of-
# several-martyrs.yml's header for why the votive-office view was used.
# "Rex glorióse Mártyrum" -- the classic Common-of-Several-Martyrs Lauds
# hymn, a single genuine recension found in the reference engine.
id: lauds-hymn-common-of-several-martyrs
text:
la: >-
Rex glorióse Mártyrum,
Coróna confiténtium,
Qui respuéntes térrea
Perdúcis ad cæléstia:
Aurem benígnam prótinus
Appóne nostris vócibus:
Trophǽa sacra pángimus:
Ignósce quod delíquimus.
Tu vincis in Martýribus,
Parcéndo Confessóribus:
Tu vince nostra crímina,
Donándo indulgéntiam.
Deo Patri sit glória,
Ejúsque soli Fílio,
Cum Spíritu Paráclito,
Et nunc et in perpétuum. Amen.
en: >-
O glorious King of martyr hosts,
Thou crown that each confessor boasts,
Who leadest to celestial day
Those who have cast earth's joys away:
Thine ear in mercy, Saviour, lend,
While unto thee our prayers ascend;
And as we count their triumphs won,
Forgive the sins that we have done.
Martyrs in thee their triumphs gain,
From thee confessors grace obtain;
O'ercome in us the lust of sin,
That we thy pardoning love may win.
To thee who, dead, again dost live,
All glory, Lord, thy people give;
All glory, as is ever meet,
To Father and to Paraclete. Amen.
status:
la: verified
en: verified
@@ -0,0 +1,22 @@
# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds
# `votive=C3` live query, 2026-08 -- see lauds-capitulum-common-of-
# several-martyrs.yml's header for why the votive-office view was used.
id: lauds-responsory-common-of-several-martyrs
text:
la: |
R.br. Lætámini in Dómino, * Et exsultáte justi.
℟. Lætámini in Dómino, * Et exsultáte justi.
℣. Et gloriámini omnes recti corde.
℟. Et exsultáte justi.
℣. Glória Patri, et Fílio, * et Spirítui Sancto.
℟. Lætámini in Dómino, * Et exsultáte justi.
en: |
R.br. Be glad in the Lord, * and rejoice, ye righteous.
℟. Be glad in the Lord, * and rejoice, ye righteous.
℣. And shout for joy, all ye that are upright in heart.
℟. And rejoice, ye righteous.
℣. Glory be to the Father, and to the Son, * and to the Holy Ghost.
℟. Be glad in the Lord, * and rejoice, ye righteous.
status:
la: verified
en: verified
@@ -0,0 +1,14 @@
# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds
# `votive=C3` live query, 2026-08 -- same versicle as Vespers -- see
# vespers-versicle-common-of-several-martyrs.yml's header.
id: lauds-versicle-common-of-several-martyrs
text:
la: |
℣. Exsultábunt Sancti in glória.
℟. Lætabúntur in cubílibus suis.
en: |
℣. The saints shall rejoice in glory:
℟. They shall be joyful in their beds.
status:
la: verified
en: verified
@@ -0,0 +1,115 @@
# Verified against Divinum Officium (Monastic Tridentinum 1617), Vespers
# `votive=C3` live query, 2026-08 -- "Sanctórum méritis ínclyta gáudia,"
# byte-identical to `votive=C3a`/`C3b` -- see lauds-capitulum-common-of-
# several-martyrs.yml's header for the fuller gap/sourcing writeup.
id: vespers-hymn-common-of-several-martyrs
text:
la: >-
Sanctórum méritis ínclyta gáudia
Pangámus, sócii, géstaque fórtia:
Nam gliscit ánimus prómere cántibus
Victórum genus óptimum.
Hi sunt quos rétinens mundus inhórruit:
Ipsum nam stérili flore peráridum
Sprevére pénitus, teque secúti sunt,
Rex Christe bone cǽlitus.
Hi pro te fúrias atque ferócia
Calcárunt hóminum, sǽvaque vérbera:
Cessit his lácerans fórtiter úngula,
Nec carpsit penetrália.
Cædúntur gládiis more bidéntium:
Non murmur résonat, non querimónia:
Sed corde tácito mens bene cónscia
Consérvat patiéntiam.
Quæ vox, quæ póterit lingua retéxere,
Quæ tu Martyribus múnera prǽparas?
Rubri nam flúido sánguine láureis
Ditántur bene fúlgidis.
Te summa Déitas únaque póscimus,
Ut culpas ábluas, nóxia súbtrahas,
Des pacem fámulis, nos quoque glóriam
Per cuncta tibi sǽcula. Amen.
en: >-
Sing, O sons of the Church sounding the martyrs' praise!
God's true soldiers applaud, who, in their weary days,
Won bright trophies of good, glad be the voice ye raise,
While these heroes of Christ ye sing!
They, while yet in the world were by the world abhorred;
Felt how fading the joys, fleeting the wealth it stored;
Spurned all pleasure for thee, and at thy call, O Lord,
Came forth strong in thy name, as King.
Lord, how bravely they bore fury and pain for thee!
Scourge, rod, sword, and the rack strongly endured; but free
Sang out, bold in thy love, longing on high to be;
Earth's might never their souls could bend.
While they, shedding their blood, victims for Jesus fell,
No sound out of their lips came of their throes to tell;
Bowed low, patient and meek, loving the Lord so well,
Turned they still to the Christ, their friend.
What joys, bright with the blood shed for thy love they share,
Those brave martyrs of thine crowned with thy laurels rare;
Man's tongue never can tell, never can half declare,
How pure now is their bliss above!
Yet we, Father on high, God of eternal might,
Lift weak voices in prayer asking for peace and light;
Cleanse thou out of our hearts every stain and blight,
So our songs may be songs of love. Amen.
status:
la: verified
en: verified
@@ -0,0 +1,22 @@
# Verified against Divinum Officium (Monastic Tridentinum 1617), Vespers
# `votive=C3` live query, 2026-08 -- see lauds-capitulum-common-of-
# several-martyrs.yml's header for why the votive-office view was used.
id: vespers-responsory-common-of-several-martyrs
text:
la: |
R.br. Exsúltent justi * In conspéctu Dei.
℟. Exsúltent justi * In conspéctu Dei.
℣. Et delecténtur in lætítia.
℟. In conspéctu Dei.
℣. Glória Patri, et Fílio, * et Spirítui Sancto.
℟. Exsúltent justi * In conspéctu Dei.
en: |
R.br. Let the righteous rejoice * before God.
℟. Let the righteous rejoice * before God.
℣. Yea, let them exceedingly rejoice.
℟. Before God.
℣. Glory be to the Father, and to the Son, * and to the Holy Ghost.
℟. Let the righteous rejoice * before God.
status:
la: verified
en: verified
@@ -0,0 +1,14 @@
# Verified against Divinum Officium (Monastic Tridentinum 1617), Vespers
# `votive=C3` live query, 2026-08 -- same versicle as Lauds (see lauds-
# versicle-common-of-several-martyrs.yml).
id: vespers-versicle-common-of-several-martyrs
text:
la: |
℣. Exsultábunt Sancti in glória.
℟. Lætabúntur in cubílibus suis.
en: |
℣. The saints shall rejoice in glory:
℟. They shall be joyful in their beds.
status:
la: verified
en: verified
+16
View File
@@ -234,6 +234,22 @@ describe('resolveOrdo("vespers", ...)', () => {
} }
}); });
it("uses Common-of-Several-Martyrs' real office bundle on Ss. Placid and Companions' own day (Duplex II. classis, keeps own Vespers)", () => {
// Live-verified against Divinum Officium (Monastic Tridentinum 1617)
// votive=C3 -- see vespers-hymn-common-of-several-martyrs.yml's header.
const ordo = resolveOrdo('vespers', '2026-10-05');
const chapter = ordo.parts.find((p) => p.kind === 'chapter');
expect(chapter?.kind === 'chapter' ? chapter.text.citation?.en : undefined).toBe('Wis 3:1-3');
const hymn = ordo.parts.find((p) => p.kind === 'hymn');
expect(hymn?.kind === 'hymn' ? hymn.text.text.la : undefined).toContain('Sanctórum méritis ínclyta gáudia');
for (const part of ordo.parts) {
if (part.kind === 'chapter' || part.kind === 'responsory' || part.kind === 'hymn' || part.kind === 'versicle') {
expect(part.text.status.la).toBe('verified');
expect(part.text.status.en).toBe('verified');
}
}
});
it("renders Passiontide's seasonal office, with the Gloria Patri omitted from the responsory", () => { it("renders Passiontide's seasonal office, with the Gloria Patri omitted from the responsory", () => {
// 2026-03-25 is a Wednesday in Passiontide (Passion Sunday 2026-03-22 // 2026-03-25 is a Wednesday in Passiontide (Passion Sunday 2026-03-22
// through Holy Saturday 2026-04-04). // through Holy Saturday 2026-04-04).