Kalle
3a0953f33d
Add Sentry enabled FF
E2E Tests / e2e (push) Waiting to run
Tests and checks on push / run-checks-and-tests (push) Waiting to run
Updates translation progress / update-translation-progress-issue (push) Waiting to run
2026-05-16 07:25:00 +03:00
Kalle
d004efa3b1
Optimize ReportedWeapon queries on user seasons page
E2E Tests / e2e (push) Has been cancelled
Tests and checks on push / run-checks-and-tests (push) Has been cancelled
Updates translation progress / update-translation-progress-issue (push) Has been cancelled
2026-05-14 22:03:37 +03:00
Kalle
4bc8033841
Collapse repeated manual badge grants into a count column
...
TournamentBadgeOwner previously stored manual grants as N identical
rows to represent "this user has this badge N times" — one user had
12,345 duplicate rows for a single badge. This adds a `count` column,
collapses NULL-tournamentId duplicates in the backfill, and rewrites
the BadgeOwner view to expose count via SUM. The table shrinks from
75,596 to 24,204 rows. Also adds an index on TournamentBadgeOwner(userId)
as defense-in-depth for direct lookups, and updates replaceOwners to
dedupe ownerIds at insert time. Profile-page query for the worst-case
user drops from ~4 ms to ~1–2 ms warm.
2026-05-14 18:09:41 +03:00
Kalle
a4ab792896
Log Routines as spans
2026-05-14 16:43:07 +03:00
Kalle
2a6c276431
Log SQL queries as spans
2026-05-14 16:43:07 +03:00
Josiah Glosson
3b7d941d59
Add /api/tournament/:id/streams route ( #3067 )
2026-05-14 16:33:36 +03:00
BrushMommy
099449cbc6
badge: add badge for Journey's End ( #3071 )
2026-05-14 16:31:10 +03:00
Kalle
ea5a78208b
Return 404 response if tournament id is not matching on match page
...
Just to avoid the page crashing if they somehow ended on URL like this
2026-05-14 15:02:15 +03:00
Kalle
70f2f49688
Replace URL.canParse with custom function
...
Still not baselinely widely available, so causes problems with some older browsers
2026-05-14 15:01:09 +03:00
dependabot[bot]
d8d6e565ff
build(deps): bump i18next-http-backend from 3.0.6 to 4.0.0 ( #3068 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-14 14:57:51 +03:00
dependabot[bot]
3e28315842
build(deps): bump the minor-and-patch group across 1 directory with 6 updates ( #3072 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-14 14:57:27 +03:00
Kalle
9278214d77
Fix can't add friend to pick-up scrim with no friend code
E2E Tests / e2e (push) Waiting to run
Tests and checks on push / run-checks-and-tests (push) Waiting to run
Updates translation progress / update-translation-progress-issue (push) Waiting to run
2026-05-14 07:20:58 +03:00
Kalle
460d74b655
Improve sound labels for clarity
E2E Tests / e2e (push) Waiting to run
Tests and checks on push / run-checks-and-tests (push) Waiting to run
Updates translation progress / update-translation-progress-issue (push) Waiting to run
2026-05-13 21:43:57 +03:00
Kalle
d18a5cd118
Tweak SQ settings page sound spacings
2026-05-13 21:38:49 +03:00
Kalle
5915915e3a
Update "Peak" SP widget name for clarity
2026-05-13 21:33:25 +03:00
Kalle
806207d34e
Fix SecurityError from comp-analyzer slider replaceState spam
...
Dragging the enemy SubDef / RES sliders on the comp-analyzer page
fired `useSearchParamState`'s setter on every intermediate value,
which calls `window.history.replaceState`. Browsers cap that at
100 calls per 10 seconds, so any sustained drag tripped:
SecurityError: Attempt to use history.replaceState()
more than 100 times per 10 seconds
Split the slider state into two cells: a local `useState` that drives
the slider thumb, label, and damage calculations on every change, and
the URL-backed hook value, which is only written on drag-end events
(`onPointerUp`, `onKeyUp`, `onBlur`). The URL now updates once per
interaction instead of once per pixel.
2026-05-13 21:24:02 +03:00
Kalle
24d6c20a42
Always pull latest skalop in the docker-compose file
2026-05-13 20:35:22 +03:00
Kalle
20118fb7a5
Fix WS revalidate on tournament bracket & match pages ( #3061 )
2026-05-13 20:17:29 +03:00
Kalle
eafd10f3a9
Fix tournament admin page e2e test
2026-05-13 17:28:49 +03:00
Kalle
1f415533f5
Fix crash when visiting tournament team page after tournament start who did not check in
E2E Tests / e2e (push) Waiting to run
Tests and checks on push / run-checks-and-tests (push) Waiting to run
Updates translation progress / update-translation-progress-issue (push) Waiting to run
2026-05-12 21:01:49 +03:00
Kalle
9ce94d71c5
Fix internal server error response when SQ match was already created
...
Closes #3058
2026-05-12 20:33:32 +03:00
Kalle
0bcbc83cb4
Fix splatnet room url detection logic
2026-05-12 20:32:06 +03:00
Kalle
fe782602fe
Default to rosters tab on match page + show pool/qr code indicator
...
Closes #3053
2026-05-12 20:32:06 +03:00
Kalle
8c24239e8c
Add Sqlite optimize pragma
2026-05-12 19:33:20 +03:00
Kalle
b4bdd9d0df
Optimize MatchTimer by skipping useless rerenders
...
E2E Tests / e2e (push) Waiting to run
Tests and checks on push / run-checks-and-tests (push) Waiting to run
Updates translation progress / update-translation-progress-issue (push) Waiting to run
Realistically not a problem but trying to systematically get rid of
all these useless rerenders no matter how small they are in impact
2026-05-11 21:10:53 +03:00
Kalle
24736c70d6
Deflake E2E test
E2E Tests / e2e (push) Waiting to run
Tests and checks on push / run-checks-and-tests (push) Waiting to run
Updates translation progress / update-translation-progress-issue (push) Waiting to run
2026-05-11 20:50:13 +03:00
Kalle
5f94206861
Upgrade react-router, react
2026-05-11 20:50:13 +03:00
Kalle
ee6e92967b
Allow reporting weapons after tournament has finalized
2026-05-11 20:50:13 +03:00
Kalle
a5e69273c7
New plus voting logic, add proper tie logic
2026-05-11 20:50:13 +03:00
Kalle
ce45bdb7f8
Do not allow making tournament draft if already was not draft
2026-05-11 20:50:13 +03:00
Kalle
e5c54bfd1e
Fix db migrations not ran in start command
2026-05-11 20:50:13 +03:00
Kalle
d5b882e19b
Update calculating.avif design
...
The old one has a "squishing" problem as it is different dimensions
than rest of the tier images.
2026-05-11 20:50:13 +03:00
Kalle
3dea845ce5
Cap identicon cache size
...
500 seems a reasonable size for what you would encounter at most in a view or two.
Realistically not an issue but just a defensive
fix.
2026-05-11 20:32:37 +03:00
Kalle
4a021cc1ce
Add useEffect clean up to YouTube embed
2026-05-11 20:26:50 +03:00
Kalle
49b563e5ef
Rename clearTimeout -> clearInterval for clarity
2026-05-11 19:38:00 +03:00
honk-s
a44137b91b
badge: add badge for Cats Have 7 Lives ( #3062 )
2026-05-11 17:27:10 +03:00
dependabot[bot]
33cb707e24
build(deps-dev): bump @biomejs/biome from 2.4.13 to 2.4.14 ( #3064 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-11 17:26:49 +03:00
dependabot[bot]
70446aa9cb
build(deps): bump the minor-and-patch group with 4 updates ( #3063 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-11 17:26:26 +03:00
Kalle
f9adca6af7
New Plus Voting pass criteria ( #2924 )
E2E Tests / e2e (push) Waiting to run
Tests and checks on push / run-checks-and-tests (push) Waiting to run
Updates translation progress / update-translation-progress-issue (push) Waiting to run
2026-05-10 16:26:08 +03:00
Kalle
876e0537b9
Filter out 3rd party errors
2026-05-10 14:22:40 +03:00
Kalle
f60966e11d
Cap placements bracket progression placements at 100
...
This matters as we have arrays where the size is the amount of placements.
Previously some users put 100k + placements
2026-05-10 14:22:40 +03:00
Kalle
2d48d71ccc
Optimize bracketIdxsForStandings and future proof bracketsReachableFrom
2026-05-10 14:22:40 +03:00
BrushMommy
c7ef9bb7bd
add equalizer badge ( #3059 )
2026-05-10 14:21:16 +03:00
dependabot[bot]
b3505d5fcf
build(deps): bump the minor-and-patch group across 1 directory with 10 updates ( #3055 )
...
E2E Tests / e2e (push) Waiting to run
Tests and checks on push / run-checks-and-tests (push) Waiting to run
Updates translation progress / update-translation-progress-issue (push) Waiting to run
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kalle <38327916+Sendouc@users.noreply.github.com>
2026-05-09 16:39:37 +03:00
Great-Hero-YELLOW
165fc53124
Stronghold Article "NA League 2026 Event 5 Regular Week 3" ( #3043 )
2026-05-09 16:10:27 +03:00
Great-Hero-YELLOW
8b2645b39d
Stronghold Article "May + June 2026 LANs" ( #3042 )
2026-05-09 16:10:10 +03:00
Great-Hero-YELLOW
f107242a01
Stronghold Article "NA League 2026 Event 4 Regular Week 2" ( #3041 )
2026-05-09 16:09:55 +03:00
Kalle
d4b60f5d1f
Add build allowlisted dep
2026-05-09 16:03:45 +03:00
Kalle
de72b46755
Upgrade pnpm to v11
...
Closes #3040
2026-05-09 15:41:41 +03:00
Kalle
521a3add7c
Do not show Own team/Opponent label when not in the match
...
Closes #3044
2026-05-09 15:41:41 +03:00