hours: build Lauds
Deploy / deploy (push) Successful in 48s

Opening versicle; Ps 66 (fixed, no antiphon at all); the weekday-
variable psalm groups (Ps 50 plus 1-2 more, framed by their own
antiphon each, wholesale-substituted by Sunday's Ps 50+117-share-one-
antiphon shape); the weekday OT canticle; the Laudate psalms (148-150)
under one more shared antiphon; the weekday chapter/responsory/hymn/
versicle bundle; the Benedictus (framed by a day-resolved antiphon,
same incipit-or-full/full-repeat shape as Compline's Nunc Dimittis);
the Kyrie/Pater-noster short litany; the day's collect(s) — winner
plus one per commemoration, via the new getDayCollects; the four
Tridentine suffrages (omitted on a Double-or-higher feast); the
conclusio; the closing versicle (the silent Our Father that precedes
it isn't re-rendered, its text having already appeared once at the
short litany); and the closing Marian antiphon, reusing Compline's own
mechanism exactly.

Known, deliberate gap, not yet fixed: the psalmody doesn't model the
Commune/feast override real practice applies on a Semiduplex-or-higher
day (substituting an entirely different psalm+canticle set) — every
day currently gets the plain ferial weekday distribution regardless of
who wins. That's a separate, larger propers-authoring task (a full
Common-of-Saints psalm set per Common).

Also a simplification in getDayCollects: each collect in a multi-
collect day renders as its own complete "Let us pray ... Amen." block,
rather than the more compressed real form (one "Let us pray," only the
last collect's doxology).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-11 11:45:25 -04:00
parent 70fbdd12d0
commit 5830e4cfd2
12 changed files with 547 additions and 11 deletions
+25
View File
@@ -0,0 +1,25 @@
# Ordo verified against Divinum Officium (Monastic Tridentinum 1617), Lauds
# live query, 2026-08-11 — see src/hours/lauds.ts for how each part
# resolves, and data/hours/lauds-antiphons.yml / lauds-canticles/*.yml /
# propers/common/lauds-*.yml for the underlying weekday content.
#
# The suffrages (Holy Cross, BVM, Ss. Peter & Paul, Peace) are gated by
# omitOnDouble — see hours/types.ts's 'suffrages' doc comment for the
# caveat on what else real practice also suppresses them for that isn't
# modeled yet.
id: lauds
parts:
- kind: opening-versicle
- kind: lauds-psalmody
- kind: lauds-office
- kind: benedictus
- kind: preces
textRef: { source: common, id: lauds-short-litany }
- kind: day-collects
- kind: suffrages
omitOnDouble: true
- kind: preces
textRef: { source: common, id: lauds-conclusio }
- kind: versicle
textRef: { source: common, id: lauds-closing-versicle }
- kind: marian-antiphon