calendar: exempt Vigils from Our Lady's Saturday's demotion
Deploy / deploy (push) Successful in 49s

Refined per direct correction: Our Lady's Saturday is really only a
Simplex-strength standing, not a privileged-feria-minor-shaped one --
a Vigil keeps forcing its own primacy on a Saturday the same way it
already does any other day (see calendar/commemorations.ts's own
transferDirectionOf special-casing for Vigils elsewhere). Only a
Simplex saint alone now loses to it; a Vigil, along with anything
Semiduplex-or-higher, wins outright and Marian Saturday doesn't apply.

Un-does the two test-date moves this same regression prompted last
time (Vigil of St. Lawrence, Vigil of St. John Baptist) -- both dates'
original years work again now that the fix is right.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-11 14:20:13 -04:00
parent 0404642614
commit 2247e8c27f
4 changed files with 34 additions and 26 deletions
+2 -5
View File
@@ -40,11 +40,8 @@ describe('June sanctoral pull (first pass)', () => {
});
it('the Nativity of St. John the Baptist wins outright at Duplex I. classis, distinct from his Vigil the day before', () => {
// 2035-06-23 is a Saturday -- collides with the generic Saturday-of-
// Mary votive this test isn't about (see tests/calendar/marian-
// saturday.test.ts); 2027 keeps both dates on plain midweek days.
const vigil = resolveDay('2027-06-23');
const nativity = resolveDay('2027-06-24');
const vigil = resolveDay('2035-06-23');
const nativity = resolveDay('2035-06-24');
expect(vigil.winner).toEqual({
kind: 'sanctoral',
id: 'vigil-of-st-john-the-baptist',