[
  {
    "type": "alter_table",
    "description": "Add waitTimeFactor column - store-level multiplier for wait time calculation",
    "database": "kiosk_buykiosk",
    "check_query": "SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'kiosk_buykiosk' AND TABLE_NAME = 'stores' AND COLUMN_NAME = 'waitTimeFactor'",
    "sql": "ALTER TABLE `stores` ADD COLUMN `waitTimeFactor` DECIMAL(3,2) NOT NULL DEFAULT 1.00 COMMENT 'Multiplier for wait time calculation (e.g., 0.7 = 70% of calculated time)' AFTER `estimateInterval`"
  },
  {
    "type": "alter_table",
    "description": "Add waitTimeIntervalLower column - configurable lower bound for wait time range",
    "database": "kiosk_buykiosk",
    "check_query": "SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'kiosk_buykiosk' AND TABLE_NAME = 'stores' AND COLUMN_NAME = 'waitTimeIntervalLower'",
    "sql": "ALTER TABLE `stores` ADD COLUMN `waitTimeIntervalLower` SMALLINT UNSIGNED NOT NULL DEFAULT 10 COMMENT 'Minutes to subtract for wait time lower bound' AFTER `waitTimeFactor`"
  },
  {
    "type": "alter_table",
    "description": "Add waitTimeIntervalUpper column - configurable upper bound for wait time range",
    "database": "kiosk_buykiosk",
    "check_query": "SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'kiosk_buykiosk' AND TABLE_NAME = 'stores' AND COLUMN_NAME = 'waitTimeIntervalUpper'",
    "sql": "ALTER TABLE `stores` ADD COLUMN `waitTimeIntervalUpper` SMALLINT UNSIGNED NOT NULL DEFAULT 10 COMMENT 'Minutes to add for wait time upper bound' AFTER `waitTimeIntervalLower`"
  },
  {
    "type": "alter_table",
    "description": "Add mpcLocked column - lock MPC to prevent changes",
    "database": "kiosk_buykiosk",
    "check_query": "SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'kiosk_buykiosk' AND TABLE_NAME = 'stores' AND COLUMN_NAME = 'mpcLocked'",
    "sql": "ALTER TABLE `stores` ADD COLUMN `mpcLocked` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0 COMMENT 'Lock MPC value to prevent changes' AFTER `waitTimeIntervalUpper`"
  },
  {
    "type": "alter_table",
    "description": "Add mpcCustomEnabled column - allow custom MPC input",
    "database": "kiosk_buykiosk",
    "check_query": "SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'kiosk_buykiosk' AND TABLE_NAME = 'stores' AND COLUMN_NAME = 'mpcCustomEnabled'",
    "sql": "ALTER TABLE `stores` ADD COLUMN `mpcCustomEnabled` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0 COMMENT 'Allow custom MPC input instead of preset values only' AFTER `mpcLocked`"
  }
]
