Refactoring how we're doing sessions to avoid the initial blinking.

i'm not sure i understand this line, why are we only doing this on failure?