Files
vu/src/data/hours/vespers.yml
T
will 5298cbe4a3 Add suffrages to Vespers, shared with Lauds' existing mechanism
Vespers had no suffrages (Holy Cross, BVM, Joseph, Apostles, Peace)
at all -- types.ts even documented it as Lauds-only. Live-verified
against the reference engine (Monastic Tridentinum 1617): the
"Suffragium" block after the day's collect(s) renders byte-identical
after both Lauds and Vespers, so this was an honest content gap, not
a deliberate omission.

Extracted the suffrage ids/labels and full omission logic (Double-or-
higher, Christ the King, Advent/Christmastide/Passiontide, active
octaves, Cross/Marian-Saturday special cases) out of lauds.ts into a
shared resolveSuffrages() in resolve-common.ts, and wired it into
vespers.ts/vespers.yml the same way Lauds already uses it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014axryJBrRswYh2niA7WCUc
2026-08-26 06:45:20 -04:00

40 lines
1.7 KiB
YAML

# Ordo assembled from Divinum Officium's Monastic block (see the
# individual data/propers/common/vespers-*.yml and data/hours/vespers-
# antiphons.yml/vespers-magnificat-antiphons.yml files for sourcing) — not
# live-query-verified end-to-end (see TODO.md).
#
# Resolves off resolveEveningDay, not resolveDay — see hours/vespers.ts —
# so First/Second Vespers precedence and the cross-day commemoration both
# apply before any part below ever runs.
#
# The closing reuses `lauds-conclusio` (Benedicamus Domino / Fidelium
# animae) rather than a Vespers-specific id — no distinct "Vespera"
# version of this exact closing turned up in the source, and it's the
# same fixed formula in real practice after either hour; flagged here in
# case that assumption turns out wrong.
#
# `vespers-preces` mirrors Lauds' own `lauds-preces` exactly: the short
# Sunday/feast litany (reusing `lauds-short-litany` — confirmed byte-
# identical at both hours by live query) versus the fuller Tridentine
# 1906/1910 ferial Preces on a ferial or vigil day — see hours/types.ts's
# 'vespers-preces' doc comment.
#
# `suffrages` (Holy Cross, BVM, Joseph, Ss. Peter & Paul, Peace) reuses
# Lauds' own mechanism and content ids wholesale — live-verified
# 2026-08-25 against Monastic Tridentinum 1617 that the "Suffragium"
# block after Vespers' collect is byte-identical to the one after Lauds',
# not a Lauds-specific thing. See hours/resolve-common.ts's
# resolveSuffrages for the full omission logic.
id: vespers
parts:
- kind: opening-versicle
- kind: vespers-psalmody
- kind: vespers-office
- kind: magnificat
- kind: vespers-preces
- kind: day-collects
- kind: suffrages
omitOnDouble: true
- kind: preces
textRef: { source: common, id: lauds-conclusio }