Build the Vespers ordo: mechanism, weekday content, seasonal content

Wires resolveOrdo('vespers', ...) end to end: opening versicle,
weekday psalmody (4 groups, handling the joined Ps 115+116 and the
split Ps 138/143 via a PsalmRef-like shape), the chapter/responsory/
hymn/versicle office bundle, Magnificat, day-collects — reusing
resolveEveningDay so First/Second Vespers precedence and the cross-day
commemoration (both added in the previous commit) apply automatically
— and a closing that reuses Lauds' own conclusio, since no distinct
"Vespera" version of that exact text turned up in the source.

getMagnificatAntiphon mirrors getBenedictusAntiphon's saint/temporal-id
lookup order, but also falls back to real content Benedictus has no
equivalent of: the classic ferial set that quotes the Magnificat's own
text in sequence across the week, with the correct Monastic-rubric
variant picked for Tue/Thu/Fri/Sat (two of those needed a fresh
translation where the Monastic Latin diverges from the given English
in content, not just wording).

Also includes Vespers' own seasonal content (Advent/Lent/Passiontide/
Paschaltide chapter+responsory+hymn+versicle), transcribed from the
same source blocks as the weekday content, with the Monastic-specific
hymn variants hand-applied from the source's substitution notation
against each base Roman text (one transcription slip caught and fixed
mid-pass: the Passiontide hymn's closing lines had been copied from
the Roman text instead of the Monastic one actually being
transcribed). Passiontide's own responsory/hymn correctly omit the
Gloria Patri, matching real rubric and the source data as given.

All weekday/seasonal content marked `draft`, not `verified` — read
directly from the reference source, not cross-checked against a live
rendering per day the way the psalmody was.

Six other hours' resolvePart switches needed the three new HourPart
kinds ('vespers-psalmody', 'vespers-office', 'magnificat') added to
their exhaustive not-used lists so they still typecheck; three
pre-existing tests assumed Vespers was still "coming soon" and are
updated to exercise Matins (still the genuine stub) instead.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-13 20:14:19 -04:00
parent 979bbe6aa4
commit de83786793
45 changed files with 1649 additions and 12 deletions
@@ -0,0 +1,63 @@
# Sourced from Divinum Officium's Monastic block ("[HymnusM Day5 Vespera]",
# Psalterium/Special/Major Special.txt): six substitutions against the base
# "[Hymnus Day5 Vespera]" text (replacing the opening line entirely,
# "Hóminis superne Cónditor" -> "Plasmátor hóminis Deus", and rewording
# most of stanzas 2-3), applied by hand here — not live-query-verified
# (see TODO.md). English has no separate Monastic variant in the source.
id: vespers-hymn-friday
text:
la: |
Plasmátor hóminis Deus,
Qui cuncta solus órdinans,
Humum jubes prodúcere
Reptántis et feræ genus:
Qui magna rerum córpora,
Dictu jubéntis vívida,
Ut sérviant per órdinem,
Subdens dedísti hómini:
Repélle, a servis tuis,
Quidquid per immundítiam
Aut móribus se súggerit,
Aut áctibus se intérserit.
Da gaudiórum prǽmia,
Da gratiárum múnera:
Dissólve litis víncula:
Astrínge pacis fœ́dera.
Præsta, Pater piíssime,
Patríque compar Únice,
Cum Spíritu Paráclito
Regnans per omne sǽculum.
Amen.
en: |
Maker of man, who from thy throne
Dost order all things, God alone;
By whose decree the teeming earth
To reptile and to beast gave birth:
The mighty forms that fill the land,
Instinct with life at thy command,
Are given subdued to humankind
For service in their rank assigned.
From all thy servants drive away
Whate'er of thought impure to-day
Hath been with open action blent,
Or mingled with the heart's intent.
In heaven thine endless joys bestow,
And grant thy gifts of grace below;
From chains of strife our souls release,
Bind fast the gentle bands of peace.
Grant this, O Father, ever One
With Christ, thy sole-begotten Son,
Whom, with the Spirit we adore,
One God, both now and evermore.
Amen.
status:
la: draft
en: draft