Give temporal commemorations at Lauds/Vespers a real Ant+V/R+collect bundle

getDayCollects previously rendered a commemorated Sunday/privileged
feria (calendar/commemorations.ts's ordinary-sunday/privileged-sunday/
privileged-feria-minor branches) as a bare, unlabeled collect -- no
antiphon, no versicle, no indication it was even a commemoration. Only
sanctoral commemorations had gotten the fuller bundle treatment
(2026-08-30 pass). Adds temporalCommemorationPart, reusing the temporal
day's own benedictus/magnificat antiphon and weekday-keyed versicle (the
same content it would use had it won outright), falling back to a
labeled bare collect or honest "missing" block when no antiphon is
authored for that id.

Verified live for Nov 1, 2026 (All Saints on a Sunday): both Lauds and
Vespers now show "Commemoration of The 22nd Sunday after Trinity" with
real antiphon and versicle instead of a silent bare prayer.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LGsATZvfnpQ81HQuoF5JuL
This commit is contained in:
2026-09-05 20:07:05 -04:00
parent a095ed8e31
commit 7f97934282
5 changed files with 69 additions and 26 deletions
+10 -9
View File
@@ -98,18 +98,19 @@ describe('Lauds psalmody override (duplex-majus+ sanctoral, and Marian Saturday)
'He hath made us',
);
// One extra collect (the commemorated Sunday's own, still an
// unlabeled 'prayer' -- a temporal commemoration, not a sanctoral
// one) plus the Simplex saint already commemorated under that Sunday
// before Christ the King displaced it too, now a labeled 'preces'
// block rather than a third bare 'prayer' -- see
// tests/calendar/christ-the-king.test.ts.
// The day's own single collect (Christ the King's) plus two labeled
// 'preces' commemoration bundles: the commemorated Sunday's own (a
// temporal commemoration, now the fuller Ant+V/R+collect bundle since
// post-pentecost-22 has a real Benedictus antiphon authored -- see
// resolve-common.ts's temporalCommemorationPart) and the Simplex saint
// already commemorated under that Sunday before Christ the King
// displaced it too -- see tests/calendar/christ-the-king.test.ts.
const collects = ordo.parts.filter((p) => p.kind === 'prayer');
expect(collects.length).toBe(2);
const sanctoralCommemoration = ordo.parts.find(
expect(collects.length).toBe(1);
const commemorations = ordo.parts.filter(
(p) => p.kind === 'preces' && p.label?.startsWith('Commemoration of'),
);
expect(sanctoralCommemoration).toBeDefined();
expect(commemorations.length).toBe(2);
const SUFFRAGE_LABELS = new Set([
'Of the Holy Cross',