Give every day of Passiontide its own real propers and label
Deploy / deploy (push) Successful in 2m0s
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
This commit is contained in:
@@ -128,8 +128,16 @@ describe('the Easter-octave backlog (Palm Sunday through Low Sunday)', () => {
|
||||
// St. George, Semiduplex; St. Fidelis of Sigmaringen, Duplex) is
|
||||
// below duplex-majus.
|
||||
const holyMonday = resolveDay('2033-04-11');
|
||||
expect(holyMonday.winner).toEqual({ kind: 'temporal', id: 'palm-sunday' });
|
||||
expect(holyMonday.commemorations).toEqual([]);
|
||||
// Monday of Holy Week now has its own real winner id (see
|
||||
// calendar/movable-feasts.ts's Passiontide-day override, 2026-09-06)
|
||||
// rather than inheriting Palm Sunday's own coarse id — the override
|
||||
// mechanism pushes a `{kind:'temporal', id:'palm-sunday'}`
|
||||
// commemoration for the coarse id it replaces, same shape every other
|
||||
// movable feast (Ascension, Corpus Christi) already does; harmless,
|
||||
// since day-label.ts's collectCommemorations deliberately drops any
|
||||
// commemoration whose id equals the plain governing weekday.
|
||||
expect(holyMonday.winner).toEqual({ kind: 'temporal', id: 'monday-holy-week' });
|
||||
expect(holyMonday.commemorations).toEqual([{ kind: 'temporal', id: 'palm-sunday' }]);
|
||||
expect(holyMonday.transferredAway?.candidate.id).toBe('st-leo-i');
|
||||
|
||||
for (const afterLowSunday of ['2033-04-25', '2033-04-26', '2033-04-27', '2033-04-28', '2033-04-29']) {
|
||||
|
||||
Reference in New Issue
Block a user