[
  {
    "type": "alter_table",
    "description": "Add overrideByEmployeeId column to workbook_punch_log for manager override audit trail",
    "database": "{{store}}",
    "check_query": "SELECT 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'workbook_punch_log' AND NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'workbook_punch_log' AND COLUMN_NAME = 'overrideByEmployeeId')",
    "check_expects": "not_empty",
    "sql": "ALTER TABLE `workbook_punch_log` ADD COLUMN `overrideByEmployeeId` INT(10) UNSIGNED NULL COMMENT 'Manager employeeID if override was used' AFTER `responseData`"
  },
  {
    "type": "alter_table",
    "description": "Add overrideReason column to workbook_punch_log for manager override audit trail",
    "database": "{{store}}",
    "check_query": "SELECT 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'workbook_punch_log' AND NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'workbook_punch_log' AND COLUMN_NAME = 'overrideReason')",
    "check_expects": "not_empty",
    "sql": "ALTER TABLE `workbook_punch_log` ADD COLUMN `overrideReason` VARCHAR(255) NULL COMMENT 'Optional reason for manager override' AFTER `overrideByEmployeeId`"
  }
]
