Fix St. Gabriel's Lauds/Vespers capitulum copy-paste bug
Deploy / deploy (push) Successful in 1m31s

lauds-capitulum-st-gabriel-archangel.yml carried Apparition of St.
Michael's own capitulum ("Significávit Deus...") under Gabriel's id --
found in passing while authoring his Matins psalmody. His real
capitulum, read directly from the reference engine's Sancti/03-24.txt
([Capitulum Laudes]), is Daniel's own account of the angel's visitation
(Dan 9:21-22), genuinely proper to Gabriel, not shared with Apparition
despite sharing the same hymn. No separate vespers-capitulum file exists
for this id, so the fix covers both hours via vespersCapitulumForOverride.

Updated tests/hours/lauds.test.ts: removed Gabriel from the shared-
chapter assertion loop (Guardian Angels/Raphael still legitimately share
Apparition's chapter, confirmed via their own saint files' explicit
source cross-references) and added a dedicated test for his own chapter.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PhysogLP9eCeKS7JEwRi6y
This commit is contained in:
2026-08-28 04:31:47 -04:00
parent 0725019e67
commit 87d28a14bd
2 changed files with 33 additions and 8 deletions
+19 -2
View File
@@ -261,10 +261,11 @@ describe('resolveOrdo("lauds", ...)', () => {
// source's own SanctiM/10-02.txt cross-references St. Michael's
// Apparition (Sancti/05-08) directly for the chapter/responsory at
// every hour -- real proper content, not a Common fallback. See
// lauds-capitulum-guardian-angels.yml's header.
// lauds-capitulum-guardian-angels.yml's header. St. Gabriel is NOT
// part of this group (see below) -- his own chapter is genuinely
// proper, not shared, despite sharing the same hymn.
for (const [date, id] of [
['2026-10-02', 'guardian-angels'],
['2026-03-24', 'st-gabriel-archangel'],
['2026-10-24', 'st-raphael-archangel'],
] as const) {
const ordo = resolveOrdo('lauds', date);
@@ -275,6 +276,22 @@ describe('resolveOrdo("lauds", ...)', () => {
}
});
it("resolves St. Gabriel's own genuinely proper chapter (Dan 9:21-22), not Apparition's", () => {
// lauds-capitulum-st-gabriel-archangel.yml previously carried
// Apparition's own capitulum ("Significávit Deus...") under
// Gabriel's id by mistake -- a copy-paste bug found while authoring
// his Matins psalmody (2026-08-28). His real Lauds/Vespers capitulum,
// read directly from Sancti/03-24.txt's own [Capitulum Laudes]
// block, is Daniel's account of the angel's visitation -- shares the
// hymn with the other Archangel feasts, but not this chapter.
const ordo = resolveOrdo('lauds', '2026-03-24');
const chapter = ordo.parts.find((p) => p.kind === 'chapter');
expect(chapter?.kind === 'chapter' ? chapter.text.citation?.en : undefined).toBe('Dan 9:21-22');
expect(chapter?.kind === 'chapter' ? chapter.text.text.la : undefined).toContain('Ecce vir Gábriel');
const hymn = ordo.parts.find((p) => p.kind === 'hymn');
expect(hymn?.kind === 'hymn' ? hymn.text.text.la : undefined).toContain('Christe sanctórum decus Angelórum');
});
it("uses common-of-several-confessors's real office bundle (= Confessor-Not-Bishop content) on Ss. Seven Founders' own day", () => {
// Read directly from the source (Sancti/02-12.txt): its own [Rule]
// says plain "vide C5" -- see lauds-capitulum-common-of-several-