60da11a6bd
Deploy / deploy (push) Successful in 2m0s
Passion Sunday through Holy Saturday (14 days) all collapsed onto just two ids (passion-sunday/palm-sunday) via resolveTemporalId's coarse governing-Sunday bucketing, so the day-label header showed the same generic "Weekday in Passiontide" phrase for all 14, and Maundy Thursday/Good Friday/Holy Saturday silently rendered Palm Sunday's own collect and antiphons. Fixed via the same movable-feast override architecture already used for Corpus Christi/Ascension (calendar/movable-feasts.ts's anchor-based override), leaving resolveTemporalId itself untouched: each of the 12 non-Sunday days gets its own real winner id, its own authored collect/Benedictus/Magnificat content, and its own temporal-feasts display record, closing both the label bug and the underlying content gap in one mechanism. day-label.ts's temporalLabel and collectCommemorations also now recognize any named temporal identity (not just Ember days), so a saint winning outright on one of these days still surfaces the day's own real name as a commemoration. A broader audit of every ALWAYS_OVERRIDE_TEMPORAL_IDS entry found the same class of gap elsewhere: Corpus Christi and Sacred Heart were completely unauthored across collect/Benedictus/Magnificat/Matins reading, and Ascension/Trinity Sunday/Christ the King were missing pieces too. All authored now, live-verified against the reference engine. Added a general fallback in resolve-common.ts (missing day-specific content degrades to the coarse Sunday's own instead of rendering blank) so this class of gap degrades gracefully if it recurs. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Lu3sgMFpwud3CerW9r6LYc
33 lines
1.8 KiB
YAML
33 lines
1.8 KiB
YAML
# Read from the reference engine: web/www/horas/Latin/Tempora/Quad5-1.txt
|
|
# ([Officium]/[Rank] header: "Feria Secunda infra Hebdomadam Passionis" /
|
|
# "Feria major" -- not a FeastClass-shaped rank at all, just a plain
|
|
# privileged feria, so `rank` is deliberately omitted below, same
|
|
# reasoning as every other day in this six-file batch). Previously not
|
|
# modeled as its own record: `resolveTemporalId` already carves out
|
|
# Passiontide as its own season, but every feria from Monday through
|
|
# Saturday of Passion week fell back to reusing `passion-sunday`'s own
|
|
# collect/antiphons wholesale (see `resolve-common.ts`'s
|
|
# `ALWAYS_OVERRIDE_TEMPORAL_IDS` and ``getTemporalProperWithFallback`` for
|
|
# the mechanism this record now plugs into) -- this file (and its five
|
|
# siblings) gives the day a real identity of its own instead.
|
|
#
|
|
# `rank` omitted on purpose (see calendar/types.ts's `FeastClass` --
|
|
# "Feria major" has no equivalent tier): `calendar/movable-feasts.ts`'s
|
|
# `applyMovableFeasts` defaults an anchor record with no `rank` to
|
|
# `simplex`, which is exactly the right behavior here -- on the ordinary
|
|
# case (no real sanctoral winner yet, i.e. `resolvedWinner.kind ===
|
|
# 'temporal'`), this record unconditionally takes over as the day's
|
|
# identity; on the rare case a real Duplex+ saint already outranks a
|
|
# privileged Lenten feria (the separate, pre-existing threshold in
|
|
# `calendar/commemorations.ts`), that saint still wins the rank contest
|
|
# here too and this record is demoted to a mere commemoration, leaving
|
|
# existing precedence behavior for Passion week completely unchanged.
|
|
id: monday-passion-week
|
|
name: "Monday of Passion Week"
|
|
# Nominative form of the reference engine's own title, matching this
|
|
# app's naming convention (see ascension.yml's own note on this).
|
|
nameLa: "Feria Secunda infra Hebdomadam Passionis"
|
|
anchor:
|
|
kind: easter
|
|
offset: -13
|