Revert ordinary-Sunday Semiduplex to transferring, per direct instruction
Deploy / deploy (push) Successful in 1m9s
Deploy / deploy (push) Successful in 1m9s
Keeps Simplex commemorating in place, but a Semiduplex feast on an ordinary Sunday goes back to transferring off to the next open day — this app's own design choice, not a correction against a reference engine. The transfer mechanism is already generic: this file's `decideOccurrence` only signals "couldn't hold onto this candidate" for the day itself; calendar/index.ts's resolveDay is what independently checks each neighboring day's own native occurrence for an incoming transfer and claims it — no separate lookback logic needed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -122,16 +122,16 @@ describe('decideOccurrence — ordinary-sunday', () => {
|
||||
expect(result.transfer).toBeUndefined();
|
||||
});
|
||||
|
||||
it('semiduplex stays and is commemorated, not transferred', () => {
|
||||
// Live-verified (both Tridentine 1906 and Divino Afflatu 1954): St.
|
||||
// Gregory Thaumaturgus (Semiduplex) lands on the 6th Sunday after
|
||||
// Epiphany and is commemorated right there, not pushed to the next
|
||||
// open day — same treatment as Simplex above, not a separate
|
||||
// "too important to merely commemorate" tier.
|
||||
it('semiduplex gets nothing here — transfers forward', () => {
|
||||
// Per direct instruction: a Semiduplex feast on an ordinary Sunday is
|
||||
// pushed off to the next open day (typically the Monday right after)
|
||||
// rather than merely commemorated — see decideOccurrence's own
|
||||
// `ordinary-sunday` case for the two-part transfer mechanism this
|
||||
// signal feeds into.
|
||||
const result = decideOccurrence('ordinary-sunday', 'post-epiphany-2', saint('semiduplex'));
|
||||
expect(result.winner).toEqual({ kind: 'temporal', id: 'post-epiphany-2' });
|
||||
expect(result.commemorations).toEqual([{ kind: 'sanctoral', id: 'x', name: 'St. Ereden', rank: 'semiduplex' }]);
|
||||
expect(result.transfer).toBeUndefined();
|
||||
expect(result.commemorations).toEqual([]);
|
||||
expect(result.transfer).toEqual({ candidate: saint('semiduplex'), direction: 'forward' });
|
||||
});
|
||||
|
||||
it('vigil gets nothing here — transfers backward', () => {
|
||||
|
||||
Reference in New Issue
Block a user