Author Common-of-a-Confessor-Bishop Lauds/Vespers chapter/responsory/hymn/versicle
Deploy / deploy (push) Successful in 1m22s
Deploy / deploy (push) Successful in 1m22s
Third Common category (17 real users) with no Lauds/Vespers bundle
authored. Live-verified against Divinum Officium (Monastic Tridentinum
1617) votive=C4: chapter Sir 44:16-17 "Ecce sacérdos magnus," Lauds hymn
"Jesu Redémptor ómnium," shared versicle "Justum dedúxit Dóminus per vias
rectas." Found the Vespers hymn is byte-identical to Common-of-a-
Confessor-Not-Bishop's own ("Iste Conféssor Dómini sacrátus") even though
the chapter, both responsories, and the Lauds hymn all genuinely differ
between the two categories -- reused that already-authored text verbatim
rather than re-deriving it.
No real Duplex-II-classis+ saint exists in this category, so the Vespers
proof uses St. Ubald's real First-Vespers anticipation instead of a
votive-only proof. Updates one existing test (2026-04-20, Paschaltide
seasonal office) whose date turned out to also anticipate St. Anselm's
First Vespers, previously masked by this same gap.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014axryJBrRswYh2niA7WCUc
This commit is contained in:
@@ -2880,6 +2880,28 @@ Woman/Widow), plus the ~31 individual saints found to have their own real `ex Pr
|
|||||||
Sanctorum` content in the reference source rather than a shared Common (need per-saint import,
|
Sanctorum` content in the reference source rather than a shared Common (need per-saint import,
|
||||||
not a category-level fix).
|
not a category-level fix).
|
||||||
|
|
||||||
|
### Common-of-a-Confessor-Bishop Lauds/Vespers bundle authored (2026-08-26)
|
||||||
|
|
||||||
|
Same fix pattern, third category (17 real users). Live-verified against Divinum Officium
|
||||||
|
(Monastic Tridentinum 1617) `votive=C4`: chapter Sir 44:16-17 ("Ecce sacérdos magnus"), Lauds
|
||||||
|
hymn "Jesu Redémptor ómnium," shared versicle "Justum dedúxit Dóminus per vias rectas." One real
|
||||||
|
finding: this category's **Vespers hymn is byte-identical to Common-of-a-Confessor-Not-Bishop's
|
||||||
|
own** ("Iste Conféssor Dómini sacrátus") even though the chapter, both responsories, and the
|
||||||
|
Lauds hymn all genuinely differ between the two categories (confirmed via `votive=C4` vs `C5` —
|
||||||
|
not a copy-paste mistake). Reused the already-authored Latin/English verbatim from `vespers-
|
||||||
|
hymn-common-of-a-confessor-not-bishop.yml` rather than re-deriving it. No real Duplex-II-classis+
|
||||||
|
saint exists in this category (all Simplex/Semiduplex/plain-Duplex, same structural pattern as
|
||||||
|
the other categories so far), so the Vespers proof uses St. Ubald's real First-Vespers
|
||||||
|
anticipation (May 15 evening → May 16) instead of a votive-only proof.
|
||||||
|
|
||||||
|
Updates one existing test whose date turned out to also anticipate St. Anselm's First Vespers
|
||||||
|
(04-20 → 04-21), previously masked by this same gap — the Paschaltide-seasonal-office proof,
|
||||||
|
moved to the clean 04-18, same "collision unmasked by the fix" pattern as the Several-Martyrs
|
||||||
|
entry above.
|
||||||
|
|
||||||
|
`npm test` (482 tests), `tsc --noEmit` both pass. **Still open**: 7 Common categories remain
|
||||||
|
(Confessor, Virgin, Virgin-Martyr, Doctor, Apostle, Several-Confessors, Holy Woman/Widow).
|
||||||
|
|
||||||
## 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,15 @@
|
|||||||
|
# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds
|
||||||
|
# `votive=C4` live query, 2026-08 -- same votive-office-view reasoning as
|
||||||
|
# vespers-hymn-common-of-a-martyr-bishop.yml's header. Same chapter reused
|
||||||
|
# for Vespers -- no separate vespers-capitulum-<id> file authored, per
|
||||||
|
# vespers.ts's vespersCapitulumForOverride fallback.
|
||||||
|
id: lauds-capitulum-common-of-a-confessor-bishop
|
||||||
|
text:
|
||||||
|
la: "Ecce sacérdos magnus, qui in diébus suis plácuit Deo, et invéntus est justus: et in témpore iracúndiæ factus est reconciliátio."
|
||||||
|
en: "Behold an high priest, who in his days pleased God, and was found righteous, and in the time of wrath he was made a propitiation."
|
||||||
|
citation:
|
||||||
|
la: "Sir 44:16-17"
|
||||||
|
en: "Sir 44:16-17"
|
||||||
|
status:
|
||||||
|
la: verified
|
||||||
|
en: verified
|
||||||
@@ -0,0 +1,101 @@
|
|||||||
|
# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds
|
||||||
|
# `votive=C4` live query, 2026-08 -- see lauds-capitulum-common-of-a-
|
||||||
|
# confessor-bishop.yml's header for why the votive-office view was used.
|
||||||
|
# "Jesu Redémptor ómnium" -- a genuinely distinct Lauds hymn from Common-
|
||||||
|
# of-a-Confessor-Not-Bishop's own "Jesu coróna célsior" (TODO.md's own
|
||||||
|
# earlier finding, from the votive-office naming: C4 = "Confessoris
|
||||||
|
# Pontificis," C5 = "Confessoris non Pontificis," two real separate
|
||||||
|
# categories, not a naming coincidence).
|
||||||
|
id: lauds-hymn-common-of-a-confessor-bishop
|
||||||
|
text:
|
||||||
|
la: >-
|
||||||
|
Jesu Redémptor ómnium,
|
||||||
|
|
||||||
|
Perpes coróna Prǽsulum,
|
||||||
|
|
||||||
|
In hac die cleméntius
|
||||||
|
|
||||||
|
Nostris favéto précibus.
|
||||||
|
|
||||||
|
|
||||||
|
Tui sacri qua nóminis
|
||||||
|
|
||||||
|
Conféssor almus cláruit:
|
||||||
|
|
||||||
|
Hujus celébrat ánnua
|
||||||
|
|
||||||
|
Devóta plebs solémnia.
|
||||||
|
|
||||||
|
|
||||||
|
Qui rite mundi gáudia
|
||||||
|
|
||||||
|
Hujus cadúca réspuens,
|
||||||
|
|
||||||
|
Cum Ángelis cæléstibus
|
||||||
|
|
||||||
|
Lætus potítur prǽmiis.
|
||||||
|
|
||||||
|
|
||||||
|
Hujus benígnus ánnue
|
||||||
|
|
||||||
|
Nobis sequi vestígia:
|
||||||
|
|
||||||
|
Hujus precátu, sérvulis
|
||||||
|
|
||||||
|
Dimítte noxam críminis.
|
||||||
|
|
||||||
|
|
||||||
|
Sit Christe, Rex piíssime,
|
||||||
|
|
||||||
|
Tibi, Patríque glória,
|
||||||
|
|
||||||
|
Cum Spíritu Paráclito,
|
||||||
|
|
||||||
|
Et nunc, et in perpétuum. Amen.
|
||||||
|
en: >-
|
||||||
|
Jesu, the world's Redeemer, O hear;
|
||||||
|
|
||||||
|
thy bishops' fadeless crown, draw near:
|
||||||
|
|
||||||
|
Accept with gentlest love today
|
||||||
|
|
||||||
|
The prayers and praises that we pay.
|
||||||
|
|
||||||
|
|
||||||
|
The meek confessor of thy name
|
||||||
|
|
||||||
|
Today attained a glorious fame;
|
||||||
|
|
||||||
|
Whose yearly feast, in solemn state,
|
||||||
|
|
||||||
|
Thy faithful people celebrate.
|
||||||
|
|
||||||
|
|
||||||
|
The world and all its boasted good,
|
||||||
|
|
||||||
|
As vain and passing, he eschewed;
|
||||||
|
|
||||||
|
And therefore with angelic bands,
|
||||||
|
|
||||||
|
In endless joy forever stands.
|
||||||
|
|
||||||
|
|
||||||
|
Grant then that we, most gracious God,
|
||||||
|
|
||||||
|
May follow in the steps he trod:
|
||||||
|
|
||||||
|
And, at his prayer, thy servants free
|
||||||
|
|
||||||
|
From stain of all iniquity.
|
||||||
|
|
||||||
|
|
||||||
|
To thee, O Christ, our loving King,
|
||||||
|
|
||||||
|
All glory, praise, and thanks we bring:
|
||||||
|
|
||||||
|
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=C4` live query, 2026-08 -- see lauds-capitulum-common-of-a-
|
||||||
|
# confessor-bishop.yml's header for why the votive-office view was used.
|
||||||
|
id: lauds-responsory-common-of-a-confessor-bishop
|
||||||
|
text:
|
||||||
|
la: |
|
||||||
|
R.br. Amávit eum Dóminus, * Et ornávit eum.
|
||||||
|
℟. Amávit eum Dóminus, * Et ornávit eum.
|
||||||
|
℣. Stolam glóriæ índuit eum.
|
||||||
|
℟. Et ornávit eum.
|
||||||
|
℣. Glória Patri, et Fílio, * et Spirítui Sancto.
|
||||||
|
℟. Amávit eum Dóminus, * Et ornávit eum.
|
||||||
|
en: |
|
||||||
|
R.br. The Lord loved him, * and beautified him.
|
||||||
|
℟. The Lord loved him, * and beautified him.
|
||||||
|
℣. He clothed him with a robe of glory.
|
||||||
|
℟. And beautified him.
|
||||||
|
℣. Glory be to the Father, and to the Son, * and to the Holy Ghost.
|
||||||
|
℟. The Lord loved him, * and beautified him.
|
||||||
|
status:
|
||||||
|
la: verified
|
||||||
|
en: verified
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds
|
||||||
|
# `votive=C4` live query, 2026-08 -- same versicle as Vespers (see
|
||||||
|
# vespers-versicle-common-of-a-confessor-bishop.yml).
|
||||||
|
id: lauds-versicle-common-of-a-confessor-bishop
|
||||||
|
text:
|
||||||
|
la: |
|
||||||
|
℣. Justum dedúxit Dóminus per vias rectas.
|
||||||
|
℟. Et osténdit illi regnum Dei.
|
||||||
|
en: |
|
||||||
|
℣. The Lord guided the just in right paths.
|
||||||
|
℟. And showed him the kingdom of God.
|
||||||
|
status:
|
||||||
|
la: verified
|
||||||
|
en: verified
|
||||||
@@ -0,0 +1,107 @@
|
|||||||
|
# Verified against Divinum Officium (Monastic Tridentinum 1617), Vespers
|
||||||
|
# `votive=C4` live query, 2026-08 -- byte-identical Latin to Common-of-a-
|
||||||
|
# Confessor-Not-Bishop's own Vespers hymn ("Iste Conféssor Dómini
|
||||||
|
# sacrátus," the Monastic-track pre-Urban VIII recension -- see that
|
||||||
|
# file's own header for the textual-variant note). A real, confirmed
|
||||||
|
# overlap, not a copy-paste mistake: the reference engine's C4 (Confessor
|
||||||
|
# Bishop) and C5 (Confessor Not Bishop) votive views render the identical
|
||||||
|
# Vespers hymn text, even though their Lauds hymns, chapters, and
|
||||||
|
# responsories all genuinely differ (see lauds-hymn-common-of-a-
|
||||||
|
# confessor-bishop.yml's header). Latin and English (an original
|
||||||
|
# translation, not the reference engine's own, for the same reason
|
||||||
|
# recorded in the Confessor-Not-Bishop file) reused verbatim from
|
||||||
|
# vespers-hymn-common-of-a-confessor-not-bishop.yml rather than
|
||||||
|
# re-translated, for consistency across the two categories that share it.
|
||||||
|
id: vespers-hymn-common-of-a-confessor-bishop
|
||||||
|
text:
|
||||||
|
la: >-
|
||||||
|
Iste Conféssor Dómini sacrátus,
|
||||||
|
|
||||||
|
Festa plebs cujus celébrat per orbem,
|
||||||
|
|
||||||
|
Hódie lætus méruit secréta
|
||||||
|
|
||||||
|
Scándere cæli.
|
||||||
|
|
||||||
|
|
||||||
|
Qui pius, prudens, húmilis, pudícus,
|
||||||
|
|
||||||
|
Sóbrius, castus fuit et quiétus,
|
||||||
|
|
||||||
|
Vita dum præsens vegetávit ejus
|
||||||
|
|
||||||
|
Córporis artus.
|
||||||
|
|
||||||
|
|
||||||
|
Ob sacrum cujus túmulum frequénter
|
||||||
|
|
||||||
|
Membra languéntum modo sanitáti,
|
||||||
|
|
||||||
|
Quólibet morbo fúerint graváta,
|
||||||
|
|
||||||
|
Restituúntur.
|
||||||
|
|
||||||
|
|
||||||
|
Unde nunc noster chorus in honórem
|
||||||
|
|
||||||
|
Ipsius, hymnum canit hunc libénter:
|
||||||
|
|
||||||
|
Ut piis ejus méritis juvémur
|
||||||
|
|
||||||
|
Omne per ævum.
|
||||||
|
|
||||||
|
|
||||||
|
Sit salus illi, decus atque virtus,
|
||||||
|
|
||||||
|
Qui supra cæli résidens cacúmen,
|
||||||
|
|
||||||
|
Tótius mundi máchinam gubérnat
|
||||||
|
|
||||||
|
Trinus et unus. Amen.
|
||||||
|
en: >-
|
||||||
|
This is the Lord's own hallowed confessor,
|
||||||
|
|
||||||
|
Whose feast today the nations round are keeping;
|
||||||
|
|
||||||
|
Joyful, he merited this day to enter
|
||||||
|
|
||||||
|
Heaven's hid glory.
|
||||||
|
|
||||||
|
|
||||||
|
Dutiful, prudent, humble, chaste, he flourished,
|
||||||
|
|
||||||
|
Sober and quiet, pure in all his living,
|
||||||
|
|
||||||
|
While in his body yet the breath of this life
|
||||||
|
|
||||||
|
Quickened his members.
|
||||||
|
|
||||||
|
|
||||||
|
Often at his consecrated tomb, the
|
||||||
|
|
||||||
|
Limbs of those worn by long and grievous sickness,
|
||||||
|
|
||||||
|
Whatsoever ill had laid them low, are
|
||||||
|
|
||||||
|
Wholly restored.
|
||||||
|
|
||||||
|
|
||||||
|
Therefore our choir today, in glad thanksgiving,
|
||||||
|
|
||||||
|
Sings in his honor this our joyful anthem:
|
||||||
|
|
||||||
|
That by his merits, freely won through goodness,
|
||||||
|
|
||||||
|
We may be aided.
|
||||||
|
|
||||||
|
|
||||||
|
Praise be to Him, all honor, might, dominion,
|
||||||
|
|
||||||
|
Who from the height of heaven's throne is reigning,
|
||||||
|
|
||||||
|
Governing all the fabric of creation,
|
||||||
|
|
||||||
|
Three and yet One. Amen.
|
||||||
|
status:
|
||||||
|
la: verified
|
||||||
|
en: draft
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
# Verified against Divinum Officium (Monastic Tridentinum 1617), Vespers
|
||||||
|
# `votive=C4` live query, 2026-08 -- see lauds-capitulum-common-of-a-
|
||||||
|
# confessor-bishop.yml's header for why the votive-office view was used.
|
||||||
|
id: vespers-responsory-common-of-a-confessor-bishop
|
||||||
|
text:
|
||||||
|
la: |
|
||||||
|
R.br. Elégit eum Dóminus * Sacerdótem sibi.
|
||||||
|
℟. Elégit eum Dóminus * Sacerdótem sibi.
|
||||||
|
℣. Ad sacrificándum ei hóstiam laudis.
|
||||||
|
℟. Sacerdótem sibi.
|
||||||
|
℣. Glória Patri, et Fílio, * et Spirítui Sancto.
|
||||||
|
℟. Elégit eum Dóminus * Sacerdótem sibi.
|
||||||
|
en: |
|
||||||
|
R.br. The Lord hath chosen him * for a Priest unto Himself.
|
||||||
|
℟. The Lord hath chosen him * for a Priest unto Himself.
|
||||||
|
℣. To offer up unto Him the sacrifice of praise.
|
||||||
|
℟. For a Priest unto Himself.
|
||||||
|
℣. Glory be to the Father, and to the Son, * and to the Holy Ghost.
|
||||||
|
℟. The Lord hath chosen him * for a Priest unto Himself.
|
||||||
|
status:
|
||||||
|
la: verified
|
||||||
|
en: verified
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
# Verified against Divinum Officium (Monastic Tridentinum 1617), Vespers
|
||||||
|
# `votive=C4` live query, 2026-08 -- same versicle as Lauds (see lauds-
|
||||||
|
# versicle-common-of-a-confessor-bishop.yml).
|
||||||
|
id: vespers-versicle-common-of-a-confessor-bishop
|
||||||
|
text:
|
||||||
|
la: |
|
||||||
|
℣. Justum dedúxit Dóminus per vias rectas.
|
||||||
|
℟. Et osténdit illi regnum Dei.
|
||||||
|
en: |
|
||||||
|
℣. The Lord guided the just in right paths.
|
||||||
|
℟. And showed him the kingdom of God.
|
||||||
|
status:
|
||||||
|
la: verified
|
||||||
|
en: verified
|
||||||
@@ -170,6 +170,17 @@ describe('resolveOrdo("lauds", ...)', () => {
|
|||||||
expect(hymn?.kind === 'hymn' ? hymn.text.text.la : undefined).toContain('Martyr Dei, qui únicum');
|
expect(hymn?.kind === 'hymn' ? hymn.text.text.la : undefined).toContain('Martyr Dei, qui únicum');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("uses Common-of-a-Confessor-Bishop's real office bundle on St. Ubald's own day, not the ferial default", () => {
|
||||||
|
// St. Ubald (May 16, Semiduplex, common-of-a-confessor-bishop) has no
|
||||||
|
// proper Lauds content of his own -- see vespers-hymn-common-of-a-
|
||||||
|
// confessor-bishop.yml's header.
|
||||||
|
const ordo = resolveOrdo('lauds', '2026-05-16');
|
||||||
|
const chapter = ordo.parts.find((p) => p.kind === 'chapter');
|
||||||
|
expect(chapter?.kind === 'chapter' ? chapter.text.citation?.en : undefined).toBe('Sir 44:16-17');
|
||||||
|
const hymn = ordo.parts.find((p) => p.kind === 'hymn');
|
||||||
|
expect(hymn?.kind === 'hymn' ? hymn.text.text.la : undefined).toContain('Jesu Redémptor ómnium');
|
||||||
|
});
|
||||||
|
|
||||||
it('includes the Kyrie + Our Father lead-in right after the Benedictus, before the day collect (either form)', () => {
|
it('includes the Kyrie + Our Father lead-in right after the Benedictus, before the day collect (either form)', () => {
|
||||||
const ordo = resolveOrdo('lauds', FERIAL_TUESDAY);
|
const ordo = resolveOrdo('lauds', FERIAL_TUESDAY);
|
||||||
const litanyIndex = ordo.parts.findIndex((p) => p.kind === 'preces' && p.text.text.la?.includes('Kýrie, eléison'));
|
const litanyIndex = ordo.parts.findIndex((p) => p.kind === 'preces' && p.text.text.la?.includes('Kýrie, eléison'));
|
||||||
|
|||||||
@@ -250,6 +250,19 @@ describe('resolveOrdo("vespers", ...)', () => {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("uses Common-of-a-Confessor-Bishop's real office bundle for St. Ubald's First Vespers", () => {
|
||||||
|
// St. Ubald (May 16, Semiduplex, common-of-a-confessor-bishop) claims
|
||||||
|
// First Vespers over May 15's own evening (no stronger rival that
|
||||||
|
// year). Live-verified against Divinum Officium (Monastic Tridentinum
|
||||||
|
// 1617) votive=C4 -- see vespers-hymn-common-of-a-confessor-bishop.yml's
|
||||||
|
// header.
|
||||||
|
const ordo = resolveOrdo('vespers', '2026-05-15');
|
||||||
|
const chapter = ordo.parts.find((p) => p.kind === 'chapter');
|
||||||
|
expect(chapter?.kind === 'chapter' ? chapter.text.citation?.en : undefined).toBe('Sir 44:16-17');
|
||||||
|
const hymn = ordo.parts.find((p) => p.kind === 'hymn');
|
||||||
|
expect(hymn?.kind === 'hymn' ? hymn.text.text.la : undefined).toContain('Iste Conféssor Dómini sacrátus');
|
||||||
|
});
|
||||||
|
|
||||||
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).
|
||||||
@@ -299,8 +312,13 @@ describe('resolveOrdo("vespers", ...)', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it("renders Paschaltide's seasonal office, sharing its chapter with Lauds", () => {
|
it("renders Paschaltide's seasonal office, sharing its chapter with Lauds", () => {
|
||||||
// 2026-04-20 is in eastertide (Easter 2026-04-05).
|
// 2026-04-18 is in eastertide (Easter 2026-04-05) -- deliberately not
|
||||||
const ordo = resolveOrdo('vespers', '2026-04-20');
|
// 04-20, whose own evening (as of the Common-of-a-Confessor-Bishop
|
||||||
|
// office-bundle authoring below) now correctly anticipates St.
|
||||||
|
// Anselm's First Vespers on 04-21 instead of falling through to this
|
||||||
|
// seasonal default; 04-18's own evening has no adjacent sanctoral
|
||||||
|
// saint at all, so it stays a clean plain-Paschaltide proof.
|
||||||
|
const ordo = resolveOrdo('vespers', '2026-04-18');
|
||||||
const chapter = ordo.parts.find((p) => p.kind === 'chapter');
|
const chapter = ordo.parts.find((p) => p.kind === 'chapter');
|
||||||
expect(chapter?.kind === 'chapter' ? chapter.text.citation?.en : undefined).toBe('Rom 6:9-10');
|
expect(chapter?.kind === 'chapter' ? chapter.text.citation?.en : undefined).toBe('Rom 6:9-10');
|
||||||
const hymn = ordo.parts.find((p) => p.kind === 'hymn');
|
const hymn = ordo.parts.find((p) => p.kind === 'hymn');
|
||||||
|
|||||||
Reference in New Issue
Block a user