HASH f168d089b070
DATE 2026-05-07
SUBJECT ookstats + web: account leaderboards, alts UI, per-season profile
FILES 0 CHANGED
HASH f168d089b070
DATE 2026-05-07
SUBJECT ookstats + web: account leaderboards,
alts UI, per-season profile
FILES 0 CHANGED
*** PATCH TOO LARGE - DIFFSTAT ONLY ***
┌─ DIFFSTAT ─────────────────────────────────────────────────────────────────┐
│ account-manual-links.json | 19 + │
│ nix/pkgs/ookstats/src/cmd/accounts.go | 143 + │
│ nix/pkgs/ookstats/src/cmd/analyze-accounts.go | 460 + │
│ nix/pkgs/ookstats/src/cmd/build.go | 46 + │
│ nix/pkgs/ookstats/src/cmd/generate.go | 75 +- │
│ nix/pkgs/ookstats/src/cmd/investigate-account.go | 648 + │
│ nix/pkgs/ookstats/src/cmd/process.go | 61 + │
│ .../ookstats/src/internal/blizzard/profiles.go | 11 + │
│ nix/pkgs/ookstats/src/internal/blizzard/types.go | 9 + │
│ .../ookstats/src/internal/database/accounts.go | 157 + │
│ .../ookstats/src/internal/database/migrations.go | 18 + │
│ nix/pkgs/ookstats/src/internal/database/schema.go | 27 + │
│ .../generator/account_alltime_leaderboard.go | 199 + │
│ .../src/internal/generator/account_leaderboards.go | 321 + │
│ .../generator/account_season_runs_leaderboard.go | 284 + │
│ .../generator/account_total_runs_leaderboard.go | 319 + │
│ .../src/internal/generator/leaderboards.go | 24 + │
│ .../generator/player_alltime_leaderboard.go | 279 + │
│ .../src/internal/generator/player_leaderboards.go | 39 +- │
│ .../generator/player_season_runs_leaderboard.go | 282 + │
│ .../ookstats/src/internal/generator/players.go | 366 +- │
│ .../src/internal/loader/account_rankings.go | 283 + │
│ nix/pkgs/ookstats/src/internal/loader/accounts.go | 393 + │
│ nix/pkgs/ookstats/src/internal/loader/players.go | 104 + │
│ .../ookstats/src/internal/pipeline/accounts.go | 350 + │
│ .../ookstats/src/internal/pipeline/fingerprints.go | 18 + │
│ .../playerid/account_fingerprint_trusted.json | 5015 +++++++ │
│ .../ookstats/src/internal/playerid/manual_links.go | 103 + │
│ nix/pkgs/ookstats/src/internal/playerid/trusted.go | 63 + │
│ web/package-lock.json | 13350 ++++++++++++------- │
│ web/package.json | 3 +- │
│ web/src/components/AccountAlts/AccountAlts.astro | 193 + │
│ web/src/components/AccountAlts/AccountAlts.scss | 98 + │
│ .../components/Gear/GearSlotCard/GearSlotCard.scss | 28 +- │
│ .../Gear/GearSpecPicker/GearSpecPicker.astro | 65 +- │
│ web/src/components/HelpHint/HelpHint.scss | 4 +- │
│ web/src/components/Home/Carousel/Carousel.astro | 16 +- │
│ .../Home/ChallengeRun/ChallengeRun.astro | 6 +- │
│ .../Home/PlayerRankRow/PlayerRankRow.astro | 12 +- │
│ .../LeaderboardScopeFilter.astro | 60 +- │
│ .../LeaderboardTable/LeaderboardTable.astro | 109 +- │
│ .../LeaderboardTypeNav/LeaderboardTypeNav.astro | 37 +- │
│ .../ClassFilterSelect/ClassFilterSelect.astro | 31 +- │
│ .../PlayerBestRuns/PlayerBestRuns.astro | 1 - │
│ .../PlayerProfile/PlayerHeader/PlayerHeader.astro | 194 +- │
│ .../PlayerProfile/PlayerHeader/PlayerHeader.scss | 202 +- │
│ .../PlayerProfile/RanksCard/RanksCard.astro | 93 + │
│ .../PlayerProfile/RanksCard/RanksCard.scss | 76 + │
│ .../Stats/ActivityChart/ActivityChart.astro | 4 +- │
│ .../Stats/CompletionTiers/CompletionTiers.astro | 10 +- │
│ web/src/components/Stats/KpiCard/KpiCard.astro | 3 +- │
│ .../SpecDistributionChart.scss | 44 +- │
│ web/src/components/Table/Table.astro | 2 +- │
│ web/src/components/Table/Table.scss | 26 +- │
│ web/src/discord/autocomplete/classes.ts | 48 +- │
│ web/src/discord/autocomplete/dungeons.ts | 50 +- │
│ web/src/discord/autocomplete/players.ts | 90 +- │
│ web/src/layouts/PageLayout.astro | 8 +- │
│ web/src/layouts/PlayerProfileLayout.astro | 92 +- │
│ web/src/layouts/PlayerProfileLayout.scss | 25 + │
│ web/src/lib/api.ts | 51 + │
│ web/src/lib/types.ts | 83 + │
│ web/src/lib/utils.ts | 148 + │
│ .../[season]/characters/[...scope].astro | 264 + │
│ .../[season]/players/[...scope].astro | 219 +- │
│ .../players/total-runs/[...scope].astro | 172 +- │
│ web/src/pages/player/[...slug].astro | 10 +- │
│ 67 files changed, 20169 insertions(+), 5874 deletions(-) │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ DIFFSTAT ───────────────────────────┐
│ account-manual-links.json │
│ | 19 + │
│ nix/pkgs/ookstats/src/cmd/accounts.go │
│ | 143 + │
│ nix/pkgs/ookstats/src/cmd/analyze-accounts. │
│ go | 460 + │
│ nix/pkgs/ookstats/src/cmd/build.go │
│ | 46 + │
│ nix/pkgs/ookstats/src/cmd/generate.go │
│ | 75 +- │
│ nix/pkgs/ookstats/src/cmd/investigate-accou │
│ nt.go | 648 + │
│ nix/pkgs/ookstats/src/cmd/process.go │
│ | 61 + │
│ .../ookstats/src/internal/blizzard/profiles │
│ .go | 11 + │
│ nix/pkgs/ookstats/src/internal/blizzard/typ │
│ es.go | 9 + │
│ .../ookstats/src/internal/database/accounts │
│ .go | 157 + │
│ .../ookstats/src/internal/database/migratio │
│ ns.go | 18 + │
│ nix/pkgs/ookstats/src/internal/database/sch │
│ ema.go | 27 + │
│ .../generator/account_alltime_leaderboard.g │
│ o | 199 + │
│ .../src/internal/generator/account_leaderbo │
│ ards.go | 321 + │
│ .../generator/account_season_runs_leaderboa │
│ rd.go | 284 + │
│ .../generator/account_total_runs_leaderboar │
│ d.go | 319 + │
│ .../src/internal/generator/leaderboards.go │
│ | 24 + │
│ .../generator/player_alltime_leaderboard.go │
│ | 279 + │
│ .../src/internal/generator/player_leaderboa │
│ rds.go | 39 +- │
│ .../generator/player_season_runs_leaderboar │
│ d.go | 282 + │
│ .../ookstats/src/internal/generator/players │
│ .go | 366 +- │
│ .../src/internal/loader/account_rankings.go │
│ | 283 + │
│ nix/pkgs/ookstats/src/internal/loader/accou │
│ nts.go | 393 + │
│ nix/pkgs/ookstats/src/internal/loader/playe │
│ rs.go | 104 + │
│ .../ookstats/src/internal/pipeline/accounts │
│ .go | 350 + │
│ .../ookstats/src/internal/pipeline/fingerpr │
│ ints.go | 18 + │
│ .../playerid/account_fingerprint_trusted.js │
│ on | 5015 +++++++ │
│ .../ookstats/src/internal/playerid/manual_l │
│ inks.go | 103 + │
│ nix/pkgs/ookstats/src/internal/playerid/tru │
│ sted.go | 63 + │
│ web/package-lock.json │
│ | 13350 ++++++++++++------- │
│ web/package.json │
│ | 3 +- │
│ web/src/components/AccountAlts/AccountAlts. │
│ astro | 193 + │
│ web/src/components/AccountAlts/AccountAlts. │
│ scss | 98 + │
│ .../components/Gear/GearSlotCard/GearSlotCa │
│ rd.scss | 28 +- │
│ .../Gear/GearSpecPicker/GearSpecPicker.astr │
│ o | 65 +- │
│ web/src/components/HelpHint/HelpHint.scss │
│ | 4 +- │
│ web/src/components/Home/Carousel/Carousel.a │
│ stro | 16 +- │
│ .../Home/ChallengeRun/ChallengeRun.astro │
│ | 6 +- │
│ .../Home/PlayerRankRow/PlayerRankRow.astro │
│ | 12 +- │
│ .../LeaderboardScopeFilter.astro │
│ | 60 +- │
│ .../LeaderboardTable/LeaderboardTable.astro │
│ | 109 +- │
│ .../LeaderboardTypeNav/LeaderboardTypeNav.a │
│ stro | 37 +- │
│ .../ClassFilterSelect/ClassFilterSelect.ast │
│ ro | 31 +- │
│ .../PlayerBestRuns/PlayerBestRuns.astro │
│ | 1 - │
│ .../PlayerProfile/PlayerHeader/PlayerHeader │
│ .astro | 194 +- │
│ .../PlayerProfile/PlayerHeader/PlayerHeader │
│ .scss | 202 +- │
│ .../PlayerProfile/RanksCard/RanksCard.astro │
│ | 93 + │
│ .../PlayerProfile/RanksCard/RanksCard.scss │
│ | 76 + │
│ .../Stats/ActivityChart/ActivityChart.astro │
│ | 4 +- │
│ .../Stats/CompletionTiers/CompletionTiers.a │
│ stro | 10 +- │
│ web/src/components/Stats/KpiCard/KpiCard.as │
│ tro | 3 +- │
│ .../SpecDistributionChart.scss │
│ | 44 +- │
│ web/src/components/Table/Table.astro │
│ | 2 +- │
│ web/src/components/Table/Table.scss │
│ | 26 +- │
│ web/src/discord/autocomplete/classes.ts │
│ | 48 +- │
│ web/src/discord/autocomplete/dungeons.ts │
│ | 50 +- │
│ web/src/discord/autocomplete/players.ts │
│ | 90 +- │
│ web/src/layouts/PageLayout.astro │
│ | 8 +- │
│ web/src/layouts/PlayerProfileLayout.astro │
│ | 92 +- │
│ web/src/layouts/PlayerProfileLayout.scss │
│ | 25 + │
│ web/src/lib/api.ts │
│ | 51 + │
│ web/src/lib/types.ts │
│ | 83 + │
│ web/src/lib/utils.ts │
│ | 148 + │
│ .../[season]/characters/[...scope].astro │
│ | 264 + │
│ .../[season]/players/[...scope].astro │
│ | 219 +- │
│ .../players/total-runs/[...scope].astro │
│ | 172 +- │
│ web/src/pages/player/[...slug].astro │
│ | 10 +- │
│ 67 files changed, 20169 insertions(+), 5874 │
│ deletions(-) │
└──────────────────────────────────────────────┘
[ BACK TO LOG ]
──────────────────────────────────────────────────────────────────────────────────────
OOKNET
────────────────────────────────────────────────
OOKNET