# Oscillation

Source: https://lemon.cy/glossary/oscillation/  
Publisher: Lemon.cy (Red Tribe Media Ltd, Limassol, Cyprus)  
Updated: 2026-09-10 · Verified against production: 2026-09-10

**Short answer:** A feed serving a booking's checkout date as A, then B, then A again on successive fetches, without any change on the platform. Lemon records the last committed direction and refuses to reset the job or message the cleaner while a date keeps reverting within 48 hours.

Oscillation is usually the signature of two platforms importing each other's calendars in a loop, so that each export reflects a different moment of the loop. Without a guard every flip is a date change: job rescheduled, cleaner messaged, job rescheduled back, cleaner messaged again. Lemon's own history includes an SMS storm from exactly this.

The guard records each committed change in a database table shared by every server (`booking_oscillation_events`); a change that reverts or repeats the previous one within `OSCILLATION_TTL_MS = 48h` is marked as oscillation. The stored checkout still follows the feed so the record stays loosely in sync, but the job and the cleaner are left alone.

## Related

- [Why does my synced checkout date keep flipping between two dates?](https://lemon.cy/learn/ical-date-oscillation-checkout-flip-flop/)
- [Forward-trim](https://lemon.cy/glossary/forward-trim/)
