waitFor's internal polling setInterval is itself faked when vi.useFakeTimers() is active, causing it to hang indefinitely. Replace the affected assertions with act + multiple Promise.resolve() to flush React state updates, and a direct assertion after act+vi.advanceTimersByTime instead of a second waitFor. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>