Exchange APIs will rate limit you and it will look like a bug
First time it happened I spent an evening convinced something was broken in my setup. It wasn't. I was simply asking too often and getting throttled, and the symptom was intermittent missing updates rather than a clear error.
Two things that helped: back off rather than retry immediately, and treat a gap in updates as a state you handle rather than an impossibility. Logic that assumes a continuous stream will behave strangely the moment the stream isn't continuous.