Conversation
Adds Kills Per Min, Hero Damage Per Min and Tower Damage Per Min buttons. Kept in a separate export from the shared match data columns so the Histograms and Trends pages, which import the same list, don't gain buttons the histograms endpoint can't serve. Requires the matching API support for per-minute sort fields.
Xvie
force-pushed
the
feat/per-minute-records
branch
from
September 11, 2026 09:16
716905f to
2ed195a
Compare
Xvie
marked this pull request as ready for review
September 11, 2026 09:25
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds Kills Per Min, Hero Damage Per Min and Tower Damage Per Min to the player Records page, so a long game no longer takes every damage record by default. In the screenshot the 22 minute Phantom Assassin game outranks a 62 minute Invoker game that has more than twice the absolute hero damage.
Depends on odota/core#2983 — those sort fields don't exist in the API yet, so the column stays blank until that ships.
Kept in a separate export from the default
matchDataColumnslist rather than added to it, sinceHistograms.tsxandTrends.tsximport the same default. Theth_strings already existed from the benchmarks work, so only the threeheading_button labels are new.Ideally these would just go in the shared list and work everywhere, and
Trendswould in fact work as-is once odota/core#2983 lands, since it projects the field rather than hitting a whitelist. The blocker is histograms:bucketSizeisMath.ceil((max + 1) / buckets), so the width can never drop below 1, andkills_per_minhas a whole range under 1 — on a real 975 match account it puts 974 matches in bucket 0 and 1 in bucket 1.kdaonly escapes this because its range is large. Serving these from/histogramsneeds fractional bucket widths without changing how the existing integer fields bucket, which felt like its own change rather than something to bundle here. Happy to follow up with it, and the separate export goes away when that lands.npm run buildpasses. I couldn't runnpm testlocally —testcafe/testsUtility.tstargets port 5000, which macOS AirPlay Receiver occupies on my machine.