В let offset хранится предыдущее значение.
А как параметр функции при вызове передается текущее значение.
updateOffset(10);
updateOffset(20);
updateOffset(101); // сработало
updateOffset(110);
updateOffset(120);
updateOffset(105);
updateOffset(99); // сработало
updateOffset(80);