c69310c625
The rate-limit branch added by the original PR did sleep+continue with no attempt to record the last error, so persistent iLink -2 responses exhausted the retry loop and hit 'assert last_error is not None', raising AssertionError instead of a descriptive RuntimeError. Record last_error = RuntimeError(...) before continuing, and break out of the loop on the final attempt instead of sleeping uselessly.