calendar: model Our Lady's Saturday as a real occurrence outcome
Deploy / deploy (push) Successful in 49s
Deploy / deploy (push) Successful in 49s
On a free Saturday (nothing privileged already claims it, no active octave), the day's own identity is now "Our Lady's Saturday" rather than an anonymous ordinary-feria -- mirrors privileged-feria-minor exactly, per direct instruction: Semiduplex-or-higher still wins outright (Marian Saturday doesn't apply at all); below that (Simplex, and Vigil, both under semiduplex on the FeastClass scale) loses and is commemorated instead. Layered additively after decideOccurrence, same shape as applyOctaves -- never touches decideOccurrence's own rules. Needed a real winner identity (not just the plain temporal feria id) so day-label/antiphon/collect sourcing can recognize it -- added a temporal-feasts record purely for that, and taught getDayLabel to check it for any named temporal winner (a small, free improvement for Christmas/Pentecost's own labels too, previously unhandled). hours: build the duplex-majus+ Lauds psalmody override (per-feast) lauds-psalmody no longer unconditionally uses the plain weekday default: a duplex-majus-or-higher sanctoral winner, or Our Lady's Saturday (unconditional, no rank threshold -- it isn't competing with the weekday default the way a saint is), now substitutes its own proper psalm groups/antiphons/canticle. Per-feast, not per-Common, per direct instruction, even though most duplex-majus+ saints across the year don't have one authored yet and fall back to the plain weekday default until they do. Content for the worked example (St. Lawrence's own day) surfaced a real bug while sourcing it: st-lawrence-antiphon.yml had been read from the Roman/secular rite's own [Ant 1], not Monastic 1617's actual Benedictus antiphon for that day -- corrected from a fresh live query. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
+10
-7
@@ -89,13 +89,16 @@ export type HourPart =
|
||||
// number of antiphoned psalm groups, then a weekday-variable OT canticle,
|
||||
// then the Laudate psalms under one more shared antiphon) doesn't fit any
|
||||
// existing part kind, and hardcoding psalm numbers in lauds.yml can't
|
||||
// work since they differ by weekday. Known, deliberate gap: does NOT
|
||||
// model the Commune/feast override of this whole block (real practice
|
||||
// substitutes an entirely different set of psalms+antiphons+canticle on
|
||||
// a Semiduplex-or-higher day) — every day currently gets the plain
|
||||
// ferial weekday distribution regardless of who wins. Fixing that is a
|
||||
// separate, larger propers-authoring task (a full Common-of-Saints psalm
|
||||
// set per Common), not started yet.
|
||||
// work since they differ by weekday. A duplex-majus-or-higher sanctoral
|
||||
// winner, or Marian Saturday, substitutes its own proper psalmody
|
||||
// instead — see hours/lauds-psalmody-overrides.ts's
|
||||
// getPsalmodyOverrideFor, gated by direct instruction at duplex-majus+
|
||||
// rather than every rank real historical practice would (most saints
|
||||
// were added in ways that override the daily psalms — not wanted here).
|
||||
// Authored per-feast, not per-Common (explicit choice) — known,
|
||||
// deliberate gap: most duplex-majus+ saints across the year don't have
|
||||
// one of these authored yet and fall back to the plain weekday default
|
||||
// until they do (same incremental-content pattern as everywhere else).
|
||||
| { kind: 'lauds-psalmody' }
|
||||
// Lauds only. The weekday-resolved chapter/short-responsory/hymn/closing
|
||||
// versicle bundle that follows the psalmody — see hours/lauds.ts and
|
||||
|
||||
Reference in New Issue
Block a user