Fix Vespers status wrongly saying "Second Vespers" when a Sunday anticipates it
Deploy / deploy (push) Successful in 1m29s

getVespersStatusLabel detected First-Vespers anticipation only via
winner.vespersFrom, a tag only ever set for a sanctoral tomorrow-winner
(tagVespersFrom). When Vespers anticipates a Sunday that wins its own
day outright (a temporal winner, e.g. 2026-08-29 anticipating 2026-08-30
since the Decollation of St. John Baptist is below the duplex-2-classis
floor that would let it keep its own evening), the tag never gets set
and the status wrongly read "Second Vespers (of today)" even though the
whole page was showing tomorrow's identity.

Comparing the resolved day's date against the originally-requested date
detects anticipation uniformly regardless of winner kind, so this drops
the vespersFrom dependency entirely.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ME8QNPdEmHSbSx1r6VmDRG
This commit is contained in:
2026-08-30 06:10:52 -04:00
parent 95901ef56a
commit 5ae1f3a3e0
4 changed files with 63 additions and 6 deletions
+1 -1
View File
@@ -23,7 +23,7 @@ export function renderDayNav(container: HTMLElement): void {
const day = isEveningHour ? resolveEveningDay(date) : resolveDay(date);
const dateLabel = formatDateLong(date);
const dayLabel = getDayLabel(day);
const vespersStatus = selectedHour === 'vespers' ? getVespersStatusLabel(day) : undefined;
const vespersStatus = selectedHour === 'vespers' ? getVespersStatusLabel(day, date) : undefined;
const prevUrl = urlFor(addDays(date, -1), selectedHour, languages);
const nextUrl = urlFor(addDays(date, 1), selectedHour, languages);
const todayUrl = urlFor(todayIso(), todayTargetHour(), languages);