aboutsummaryrefslogtreecommitdiff
path: root/internal/casino/config_validate.go
diff options
context:
space:
mode:
authorhistoria <[not public]>2026-10-05 17:39:06 -0400
committerhistoria <[not public]>2026-10-05 17:39:06 -0400
commitec703a39738fefb60817f5659f76f8e683f8d301 (patch)
tree00d1242d9f94bc2fec48331d8c02909be6b37f7a /internal/casino/config_validate.go
parent516fd29da423432ef6dfded21a984f1d15dcab1a (diff)
downloadthehouseoficarus-ec703a39738fefb60817f5659f76f8e683f8d301.tar.gz
fix: admin undo/redo failure, video poker cabinet ids, room ref behavior
Diffstat (limited to 'internal/casino/config_validate.go')
-rw-r--r--internal/casino/config_validate.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/internal/casino/config_validate.go b/internal/casino/config_validate.go
index 74dc0a4..41d5b83 100644
--- a/internal/casino/config_validate.go
+++ b/internal/casino/config_validate.go
@@ -359,8 +359,12 @@ func ValidateRoomConfigs(tables []TableConfig, machines []MachineConfig) error {
for _, c := range tables {
check("table", c.ID, c.Validate())
if c.Game == GameVideoPoker {
+ // Cabinets are addressed by their unique ID (not the game name), so
+ // claim the ID as an address. Skipping the claim let a cabinet ID
+ // collide with a machine variant/game name and become unreachable.
+ checkAddressable(strings.ToLower(c.ID), c.ID)
continue
- } // Cabinets are addressed by unique ID, not game name.
+ }
checkAddressable(strings.ToLower(string(c.Game)), c.ID)
}
// A machine addresses by its variant when one is declared; a bare game