[
  {
    "type": "alter_table",
    "description": "Add store hours columns to stores table (Spec 018: Store Configuration)",
    "database": "kiosk_buykiosk",
    "check_query": "SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'kiosk_buykiosk' AND TABLE_NAME = 'stores' AND COLUMN_NAME = 'defaultOpenTime'",
    "sql": "ALTER TABLE `stores` ADD COLUMN `defaultOpenTime` VARCHAR(5) DEFAULT '09:00' COMMENT 'Default store open time HH:MM', ADD COLUMN `defaultCloseTime` VARCHAR(5) DEFAULT '21:00' COMMENT 'Default store close time HH:MM', ADD COLUMN `hoursLastUpdated` TIMESTAMP NULL DEFAULT NULL COMMENT 'Last time hours were modified', ADD COLUMN `hoursUpdatedByUserId` INT UNSIGNED NULL DEFAULT NULL COMMENT 'User who last modified hours'"
  },
  {
    "type": "create_table",
    "description": "Create storeOperatingHours table for per-day operating hours (Spec 018)",
    "database": "kiosk_buykiosk",
    "check_query": "SHOW TABLES LIKE 'storeOperatingHours'",
    "sql": "CREATE TABLE `storeOperatingHours` (\n  `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,\n  `typeNum` VARCHAR(10) NOT NULL,\n  `dayOfWeek` TINYINT UNSIGNED NOT NULL COMMENT '0=Sunday, 6=Saturday',\n  `openTime` VARCHAR(5) NULL DEFAULT NULL COMMENT 'HH:MM format, NULL means use default',\n  `closeTime` VARCHAR(5) NULL DEFAULT NULL COMMENT 'HH:MM format, NULL means use default',\n  `isClosed` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '1=closed on this day',\n  `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,\n  `updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `uk_store_day` (`typeNum`, `dayOfWeek`),\n  KEY `idx_typenum` (`typeNum`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Per-day operating hours for stores (Spec 018)'"
  },
  {
    "type": "create_table",
    "description": "Create storeHolidayHours table for holiday/special date overrides (Spec 018)",
    "database": "kiosk_buykiosk",
    "check_query": "SHOW TABLES LIKE 'storeHolidayHours'",
    "sql": "CREATE TABLE `storeHolidayHours` (\n  `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,\n  `typeNum` VARCHAR(10) NOT NULL,\n  `holidayDate` DATE NOT NULL COMMENT 'Specific date for override',\n  `holidayName` VARCHAR(100) NULL DEFAULT NULL COMMENT 'Optional name (e.g., Christmas)',\n  `openTime` VARCHAR(5) NULL DEFAULT NULL COMMENT 'HH:MM format, NULL with isClosed=1 means closed',\n  `closeTime` VARCHAR(5) NULL DEFAULT NULL COMMENT 'HH:MM format',\n  `isClosed` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '1=closed on this date',\n  `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,\n  `updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `uk_store_date` (`typeNum`, `holidayDate`),\n  KEY `idx_typenum` (`typeNum`),\n  KEY `idx_date` (`holidayDate`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Holiday/special date hour overrides for stores (Spec 018)'"
  }
]
