-
v0.20.2
Stablereleased this
2026-08-04 21:14:24 -05:00 | 154 commits to main since this releaseFixed
Marksmen publish boots again.
parseItemCatalogdecided boot-ness from Data Dragon'sBootstag, and Data Dragon does not tag the whole tree: on 16.15.1 Gunmetal Greaves (3172) — the tier-3 every attack-speed champion upgrades into — is tagged["AttackSpeed","LifeSteal","NonbootsMovement"]while all eight of its siblings carryBoots. It was therefore not a boot, and at 1,100g it was under the completed-item gold floor, so it was not a legendary either. It fell through both filters and disappeared from the artifact entirely.Visible in the first published file: 56 of 300 champion-roles had an empty
bootslist, Caitlyn bottom among them.Boot-ness is a fact about the build tree, so it is now read from the build tree — the transitive closure of
intofrom everyBoots-tagged Rift item. Over 16.15.1 that closure adds exactly 3172 and pulls in nothing priced at or above the completed floor, so no legendary is reclassified by widening it.Classification happens at build time from raw stored ids, so this repairs every row already in the database. No re-crawl — the next publish carries the boots.
champion-builds.jsonno longer overstates theownedhalf's sample. Its provenancematchescame frommatchCount, which counts every match on the patch — including those crawled before theitemscolumn shipped in 0.17.0, which carry the empty sentinel and back none of theownedpercentages. On 16.15 that reported 10,133 against a real 152.New
Store.itemMatchCountcounts through the sameITEM_ROW_FILTERthe ownership aggregate runs through, so the number and the rows behind it agree. The other five artifacts keepmatchCount, which is correct for them.
Gate green: typecheck, lint, 525 tests across 29 files, build. Boots closure verified against live Data Dragon 16.15.1 (boots 19 → 20, no legendary reclassified).
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)