added PICK SKY ready gate: SigReservation.ready + countdown_remaining fields, Room.SKY_SELECT status + sig_select_started_at, sig_ready + sig_confirm views, WS notifiers for countdown_start/cancel/polarity_room_done/pick_sky_available, migration 0031, PICK SKY btn in hex center at SKY_SELECT, tray cell 2 sig card placeholder; FTs SRG1-8 written (pending JS/consumer)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -33,10 +33,12 @@ class Room(models.Model):
|
||||
|
||||
ROLE_SELECT = "ROLE_SELECT"
|
||||
SIG_SELECT = "SIG_SELECT"
|
||||
SKY_SELECT = "SKY_SELECT"
|
||||
IN_GAME = "IN_GAME"
|
||||
TABLE_STATUS_CHOICES = [
|
||||
(ROLE_SELECT, "Role Select"),
|
||||
(SIG_SELECT, "Significator Select"),
|
||||
(SKY_SELECT, "Sky Select"),
|
||||
(IN_GAME, "In Game"),
|
||||
]
|
||||
|
||||
@@ -50,6 +52,7 @@ class Room(models.Model):
|
||||
table_status = models.CharField(
|
||||
max_length=20, choices=TABLE_STATUS_CHOICES, null=True, blank=True
|
||||
)
|
||||
sig_select_started_at = models.DateTimeField(null=True, blank=True)
|
||||
renewal_period = models.DurationField(null=True, blank=True, default=timedelta(days=7))
|
||||
created_at = models.DateTimeField(auto_now_add=True)
|
||||
board_state = models.JSONField(default=dict)
|
||||
@@ -369,6 +372,8 @@ class SigReservation(models.Model):
|
||||
role = models.CharField(max_length=2)
|
||||
polarity = models.CharField(max_length=7, choices=POLARITY_CHOICES)
|
||||
reserved_at = models.DateTimeField(auto_now_add=True)
|
||||
ready = models.BooleanField(default=False)
|
||||
countdown_remaining = models.IntegerField(null=True, blank=True)
|
||||
|
||||
class Meta:
|
||||
constraints = [
|
||||
|
||||
Reference in New Issue
Block a user