-
v3.17.0 — Classic Rift tier badges
StableAll checks were successfulCI / build-and-test (push) Successful in 1m51sreleased this
2026-08-07 23:38:30 -05:00 | 10 commits to main since this releaseFixed
-
Classic Rift shows tier badges, and guesses enemy lanes again. Both
symptoms read the same per-role tier snapshot, and that snapshot was built
fromchampion-counters.jsonunconditionally — a file keyed by live champion
ids. Every60xxxlookup missed, so classic cells rendered no badge and every
locked enemy fell into the board's "Unassigned" group until the user picked a
lane by hand.champion-counters-classic.jsonhas carried a completetierListsince data
v0.11.0 and the app has been downloading it since 3.14.0 for counters. It is
now read for tiers too: 90 champion-roles across all five lanes, keyed by the
same60xxxids champ select already hands us.
Changed
-
One tier snapshot holds both rosters, and the board needs no mode signal.
Riot allocated the Classic Rift roster at60000 + base id, so a classic id
can never equal a live one and a single map can carry both without a
collision. Every renderer consumer of that map does an exact-id lookup — the
badge reads its own cell'schampionId, the lane inference reads each
enemy's — so a classic cell finds classic rows and a live cell finds live ones
out of the same map, with no map-id plumbing reaching the renderer at all.The provider still keeps the two apart internally.
getAll()answers for the
live roster only, because its consumer — the Suggested Picks candidate pool —
walks a role's entire list and offers everything inside the user's meta
filter, where a merged map would suggest Jade Annie in a ranked game. -
The classic counters fetch is awaited before the tier snapshot is built.
It was fire-and-forget, which lost the race it needed to win: the tier refresh
reads the artifact synchronously and has nothing to fall back on when it is
missing. The file may still legitimately 404 — the producer's classic pass is
opt-in and the mode is limited-time — so a rejection is caught rather than
allowed to skip the publish, and there is deliberately no scrape behind it.
buildOpggTierListUrltakes noqueueparameter, and ranked rows served as
classic would be the confident wrong answer rather than a missing one.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-