ctm / mb2-doc

Mb2, poker software
https://devctm.com
7 stars 2 forks source link

Player re-entered after re-entries were over (I think) #1303

Closed ctm closed 6 months ago

ctm commented 6 months ago

Make sure people can't re-enter after re-entries are supposed to have expired.

See if GamboMouse re-entered during Level 10 in this evening's WYWAE TOC tournament. If so, fix it, since re-entries were supposed to be only through level 9.

ctm commented 6 months ago

Sure enough, it happened.

mb2=> select id, short_name, last_late_registration_round, last_re_entry_round from events where id = 5109;
  id  |    short_name    | last_late_registration_round | last_re_entry_round 
------+------------------+------------------------------+---------------------
 5109 | embargo_2024_toc |                            9 |                   9
(1 row)

mb2=> select public_table_messages.id, received_at at time zone 'america/denver', hand_id, substr(message::text, 0, 50) from public_table_messages where table_id = 5651 and player_id is null and id <= 10445436 order by received_at desc limit 100;
    id    |          timezone          | hand_id |                      substr                       
----------+----------------------------+---------+---------------------------------------------------
 10445436 | 2024-02-01 20:02:28.722074 |  392172 | {"NewPlayersAdded": [5109, [13]]}
 10445435 | 2024-02-01 20:02:27.795383 |  392172 | {"EndOfHand": {"penalties": [], "player_amounts":
...
 10445389 | 2024-02-01 20:02:09.015611 |  392172 | {"Dealing": ["2000 4000 Texas Hold’em (High only)
...
 10445376 | 2024-02-01 20:02:02.037017 |  392169 | {"Bust": [13, null, 5109, 0, 1018, 0, null, true,
 10445375 | 2024-02-01 20:02:02.015702 |  392169 | {"EndOfHand": {"penalties": [], "player_amounts":
...
 10445326 | 2024-02-01 20:01:36.665201 |  392169 | {"Dealing": ["2000 4000 Texas Hold’em (High only)
 10445321 | 2024-02-01 20:01:33.674327 |  392167 | {"EndOfHand": {"penalties": [], "player_amounts":
...
 10445319 | 2024-02-01 20:01:33.651263 |  392167 | {"Folds": [48, false, null, null]}
...
 10445279 | 2024-02-01 20:01:14.273521 |  392167 | {"Dealing": ["2000 4000 Texas Hold’em (High only)
 10445271 | 2024-02-01 20:01:11.282508 |  392166 | {"EndOfHand": {"penalties": [], "player_amounts":
 10445270 | 2024-02-01 20:01:11.26673  |  392166 | {"ReturnUncalled": [48, 1500]}
 10445269 | 2024-02-01 20:01:11.26125  |  392166 | {"Folds": [1018, false, null, null]}
 10445263 | 2024-02-01 20:01:07.629815 |  392166 | {"OnLevel": ["Level 10", [299999, "2024-02-02T03:

There's code that adjusts certain values when breaks are removed for synchronized breaks. My guess is that code isn't adjusting the one associated with re-entries. It's probably doing it for late-registration though.

ctm commented 6 months ago

The method I was thinking of is TournamentStructure::adjust_for_disappearing_breaks and sure enough, it's called with last_late_registration, but ignores re_entry_info. Oops.

ctm commented 6 months ago

Fixed in master. Will go out with next deploy.