-
0.19.0
Stablereleased this
2026-08-04 16:30:32 -05:00 | 186 commits to main since this releaseAdded
-
data/champion-synergies.json— a new published artifact, and a new URL.
How a champion's record at one role varies with who they were on a team with,
modelled on op.gg's/lol/champions/<champion>/synergies/<role>page.It is the counters self-join with the predicate inverted: a different role on
the same side of thewinpartition is an ally. Every participant has four
of them, so the same crawl yields 40 rows per match here against counters' 10.
No additional Riot requests, no op.gg pages, no new column.Nothing consumes this yet, and nothing has to. A new URL nobody fetches
strands nobody, so it publishes now and lol-companion can mirror the schema on
its own schedule. The usual mirror-first ordering binds from the moment a
consumer ships.Two things a reader must get right:
- Entry totals are not the sum over
allies. Each game contributes four
ally rows, so the sum is four times the champion-role's real record. The
entry'sgames/wins/winRateare measured separately and are the
champion-role's actual record — genuinely useful in their own right, and
not the truncated-sum conventionCounterEntrySchemadocuments. - Every symmetric pair is stored twice. (Evelynn JUNGLE, Lux UTILITY) and
(Lux UTILITY, Evelynn JUNGLE) carry identical numbers by construction. The
duplication matches how the file is read at champ select; halving it under a
canonical ordering is a lever held in reserve.
Size, measured at ~93 bytes per cell under the compact printer: ~3 MB at
half occupancy, ~5.3 MB saturated, over a cell space of ~274 champion-roles
x ~220 reachable ally champion-roles. Larger than the plan's 2 MB guess, and
shipped as designed anyway — the same call, and the same standing compaction
lever, aschampion-runes.jsongoing 532 KB → 2.56 MB across a patch. - Entry totals are not the sum over
-
SYNERGIES_ENABLED(default on),SYNERGIES_PATH,SYNERGIES_OUT, and a
synergiesrow inpublish_stateso it gets the same staleness alarm as
every other artifact. No coverage floor and no wall-clock budget: like the
ranked rune and counters builds this is a database query, not a page crawl.
Notes
- No consumer change is required. lol-companion does not fetch this URL and
is unaffected until it opts in. - The file grows across a patch as cells fill, in the same way runes does. Set
SYNERGIES_ENABLED=falseif the size becomes a problem before the dedup lever
is taken.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-