Commit Graph
2500 Commits
Author SHA1 Message Date
zkldi 681a3965a6 Merge pull request #738 from TNG-dev/zkldi/rival-pb-compare 2022-11-01 23:48:15 +00:00
zkldi 1d2f94a8aa feat: rival folder compare 2022-11-01 22:17:38 +00:00
zkldi 8f903103ad feat: allow more than 100 best pbs in rival compare 2022-11-01 14:27:37 +00:00
zkldi 9c632f7684 temp: add logging for sv6c static requests 2022-11-01 01:11:21 +00:00
zkldi faf4ff16ed feat: initial comparePBsTable draft 2022-11-01 00:59:19 +00:00
zkldi 73f929b3e4 feat: initial pb-union code 2022-10-30 19:24:17 +00:00
zkldi b318fa44dc refactor: rename score-leaderboard to PB leaderboard 2022-10-30 18:40:23 +00:00
zkldi 1f9f62fc7c feat: add migration script for old charts 2022-10-30 17:03:28 +00:00
zkldi f7f2eedf32 fix: accidental false types 2022-10-30 17:02:58 +00:00
zkldi 2bb54cdaaa fix(lr2hook): handle early exiting *properly* 2022-10-30 15:47:29 +00:00
zkldi 824df0ae21 fix: critical misstep in folder code (thanks tests) 2022-10-30 13:55:09 +00:00
zkldi e73bf2abc8 fix: dont do bulkwrites if empty
thanks mongo
2022-10-30 13:42:13 +00:00
zkldi 77f782eac6 fix: make initfolderchartlookup race-safe 2022-10-30 13:36:12 +00:00
zkldi 0de9214d55 fix: typo 2022-10-30 01:58:44 +00:00
zkldi a8ebb2c3c0 feat: add migration to fix borked bms charts 2022-10-28 03:26:21 +01:00
zkldi 96b9b21cab fix(critical): sync correct seeds!
whoops
2022-10-28 03:07:42 +01:00
zkldi 5a591c4f94 feat: backsync to staging and prod always 2022-10-28 00:54:20 +01:00
zkldi 1635bc7574 fix: bms-table-sync should just update levels, not add new folders/tables 2022-10-27 20:28:40 +01:00
zkldi 7eaa8bc06b fix(lr2hook): reject BP if user failed
LR2Hook sends invalid BP if the user ends up exiting the song early.
We need to handle this, and not accept it.
2022-10-27 19:46:33 +01:00
zkldi d89e3fbbb5 fix: tests 2022-10-22 19:46:02 +01:00
zkldi cd743c4f0e fix: tests compile lol 2022-10-22 19:36:03 +01:00
zkldi 53ddd4c247 feat: tests, static-import rejection 2022-10-22 19:31:34 +01:00
zkldi b78a000c13 feat: kshook static import settings 2022-10-22 19:31:23 +01:00
zkldi 103689593c feat: kshook settings 2022-10-22 19:31:13 +01:00
zkldi deb2329993 feat: sv6c static importing 2022-10-22 19:27:49 +01:00
zkldi 5ae4d720c7 test: add regression tests for sdvxInGameID importing 2022-10-22 12:41:26 +01:00
zkldi b650213cc2 feat: enable batch manual errmsgs in client before uploading
this runs prudence schemas on the browser

straightforward enough, required a little refactoring, but we're good.
2022-10-21 01:48:50 +01:00
zkldi d17bb49a6e fix: remove misleading comment in sdvx class handler 2022-10-21 00:46:55 +01:00
zkldi 5e6151633f docs: mention gifs 2022-10-20 20:53:21 +01:00
zkldi 64ca19e772 fix: tests pass for real 2022-10-20 12:27:48 +01:00
zkldi ed1a199c16 fix: more test fixes
i'm getting very frustrated with this code rn
2022-10-20 11:59:05 +01:00
zkldi 82a9cc77aa fix: we can't use pnpm ts-node
i have no idea why this doesn't work but I don't have the time
to investigate properly at the moment.

How bizarre. We definitely have ts-node installed,
and pnpm ts-node should work reliably.

If anything, what we're doing right now *shouldn't* work!
2022-10-20 11:49:40 +01:00
zkldi c07b63f42d style: local man forgets to run linter 2022-10-20 11:43:18 +01:00
zkldi 2e6e9e3e76 feat: actually support casthour and add regression tests 2022-10-20 11:41:15 +01:00
zkldi e2b3a8545d fix: use pnpm ts-node instead of ts-node 2022-10-20 11:28:27 +01:00
zkldi 7397406caa feat: support casthour 2022-10-19 19:50:49 +01:00
zkldi 839fac7bbc refactor!: rename milestones to quests and milestone-sets to questlines 2022-10-18 19:04:29 +01:00
zkldi 910a6756f8 fix: offByOne in initial rival ranking set 2022-10-17 00:21:37 +01:00
zkldi ca4f4be9c0 fix: strict cookie settings also apply to staging
at the moment they were only applied to prod,
which means that browsers wont accept the login cookies

this issue only affects staging
lol
2022-10-16 23:54:19 +01:00
zkldi ffb776e691 feat: recalc rivalRankings when you set new rivals
UNTESTED! lol
2022-10-16 23:47:18 +01:00
zkldi 946752853b fix: override types so AWS passes checks. 2022-10-16 23:05:15 +01:00
zkldi dd5fc52e1e fix: make tests pass 2022-10-16 22:01:14 +01:00
zkldi 0985ca4f8c Merge pull request #715 from TNG-dev/zkldi/rivals 2022-10-16 19:27:00 +01:00
zkldi 1be6acb326 fix: make server tests compile and work 2022-10-16 19:19:58 +01:00
zkldi 3e8dd5a4a6 feat: rivals scorederboard 2022-10-16 18:03:11 +01:00
zkldi 5941902257 feat: set default rival or global rankings 2022-10-16 15:26:00 +01:00
zkldi 0b54d6d862 feat: rival ranking in UI 2022-10-15 02:49:41 +01:00
zkldi 2c3af78b7c feat: rival ranking on server 2022-10-14 23:53:35 +01:00
zkldi d70e30e727 feat: rival chart dropdown
+ more stuff, score graph dropdowns, etc.
2022-10-14 21:21:45 +01:00
zkldi 0e36b17827 fix(critical): Pin prudence to an exact version
This is a long one.

So, `instanceof` in Typescript is incredibly flimsy. There's a
documented bug with what happens when you extend built-in classes, such
as Error or Array. You can read more about it here: https://github.com/Microsoft/TypeScript/wiki/FAQ#why-doesnt-extending-built-ins-like-error-array-and-map-work

However, this normally works fine. A previous commit moved some schemas
from server/ to common/, our gameSpecific UGPT settings schemas. This
caused them to break in an interesting way. For any schema recursive
with a depth greater than 1, all errors would be ignored. Why on earth
was this happening?

Well Prudence passes errors up the stack with a "return Err" -> "if
ret instanceof Err: return Err" kind of approach. This normally works
fine.

The real kicker here is that because server/ and common/ were on 0.9.7
and 0.9.8 respectively, the "Err" instance in question would actually be
erased when ran at runtime. The "if ret instance of Err" would fail,
because the Err would be from 0.9.7, not 0.9.8. This subtle difference
in file results in catastrophic damage.

In short. InstanceOf is a footgun. I hate it. Lets never do it again.
Thanks.
2022-10-14 01:09:31 +01:00