-
released this
2026-08-25 21:04:13 -05:00 | 65 commits to main since this releaseFixed
- A passing network blip was logged as an unfixable bug.
pollSummoner
sorts poll failures witherr instanceof TypeError, on the reasoning that a
TypeError can only come from our own mapper reading a field Riot omitted. But
fetchreports every transport failure as a bareTypeError: fetch failed,
so DNS hiccups, resets and timeouts all landed in that branch and were logged
at ERROR asBug mapping Riot spectator response — game will NOT be announced. Both claims were false: nothing was wrong with the mapper, and the
next cycle announced the game normally. Production logs show the contradiction
a millisecond apart —Riot API network errorimmediately followed by
Bug mapping Riot spectator responsefor the same failure. RiotApiClientBasenow wraps transport failures in a new exported
RiotNetworkError, preserving the original ascause. It is not a
TypeError, so it falls to the transient branch and a genuine mapping bug
still reaches the error branch — which is what theinstanceof TypeErrortest
meant all along. That test was added to stop mapping bugs hiding under
"transient network error" (the missing-perkscrash on Classic games); this
is the same misfiling in reverse, and both directions are now pinned by tests.
Behaviour is unchanged — both branches already returned
'skipped', counted
the summoner in the cycle summary, and retried next cycle. This is log accuracy
only, which matters because these logs are the instrument used to diagnose the
shared-key 429s in 1.13.0.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- A passing network blip was logged as an unfixable bug.