fix: restore signs after navigation

This commit is contained in:
2026-09-03 02:59:10 +03:00
parent cce018d3cb
commit 4404c07f93
5 changed files with 71 additions and 8 deletions

View File

@@ -458,4 +458,30 @@ describe('clock-driven sign lifecycle', () => {
candidateId: 'experience',
}))).toBeNull();
});
it('starts a fresh passive sign traversal after explicit navigation', () => {
const controller = createSignController();
controller.sample(sample());
controller.sample(sample({ now: 1_200, direction: 0, deltaY: 0 }));
controller.sample(sample({ now: 2_600, direction: 0, deltaY: 0 }));
controller.sample(sample({ now: 3_300, direction: 0, deltaY: 0 }));
expect(controller.sample(sample({
now: 3_400,
source: 'explicit-navigation',
activeSectionId: 'contact',
candidateId: null,
candidateDistanceVh: null,
}))).toBeNull();
expect(controller.sample(sample({
now: 3_500,
source: 'explicit-navigation',
activeSectionId: 'start',
}))).toBeNull();
expect(controller.sample(sample({ now: 3_600 }))).toMatchObject({
targetId: 'profile',
phase: 'anticipate',
});
});
});