[
  {
    "type": "alter_table",
    "description": "Spec 050 fleet-health: make deviceDiagnostics.usbReceiptAttached nullable (tri-state). NULL = device hasn't reported USB state yet (older app build); only an explicit 0 should raise a 'printer not attached' alert, so unknown must stay distinct from false.",
    "database": "kiosk_buykiosk",
    "check_query": "SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'kiosk_buykiosk' AND TABLE_NAME = 'deviceDiagnostics' AND COLUMN_NAME = 'usbReceiptAttached' AND IS_NULLABLE = 'YES'",
    "sql": "ALTER TABLE `deviceDiagnostics` MODIFY COLUMN `usbReceiptAttached` TINYINT(1) DEFAULT NULL COMMENT 'USB receipt printer attached; NULL = not reported (tri-state)'"
  },
  {
    "type": "alter_table",
    "description": "Spec 050 fleet-health: make deviceDiagnostics.usbReceiptPermission nullable (tri-state).",
    "database": "kiosk_buykiosk",
    "check_query": "SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'kiosk_buykiosk' AND TABLE_NAME = 'deviceDiagnostics' AND COLUMN_NAME = 'usbReceiptPermission' AND IS_NULLABLE = 'YES'",
    "sql": "ALTER TABLE `deviceDiagnostics` MODIFY COLUMN `usbReceiptPermission` TINYINT(1) DEFAULT NULL COMMENT 'USB receipt printer permission; NULL = not reported (tri-state)'"
  },
  {
    "type": "alter_table",
    "description": "Spec 050 fleet-health: make deviceDiagnostics.usbLabelAttached nullable (tri-state).",
    "database": "kiosk_buykiosk",
    "check_query": "SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'kiosk_buykiosk' AND TABLE_NAME = 'deviceDiagnostics' AND COLUMN_NAME = 'usbLabelAttached' AND IS_NULLABLE = 'YES'",
    "sql": "ALTER TABLE `deviceDiagnostics` MODIFY COLUMN `usbLabelAttached` TINYINT(1) DEFAULT NULL COMMENT 'USB label printer attached; NULL = not reported (tri-state)'"
  },
  {
    "type": "alter_table",
    "description": "Spec 050 fleet-health: make deviceDiagnostics.usbLabelPermission nullable (tri-state).",
    "database": "kiosk_buykiosk",
    "check_query": "SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'kiosk_buykiosk' AND TABLE_NAME = 'deviceDiagnostics' AND COLUMN_NAME = 'usbLabelPermission' AND IS_NULLABLE = 'YES'",
    "sql": "ALTER TABLE `deviceDiagnostics` MODIFY COLUMN `usbLabelPermission` TINYINT(1) DEFAULT NULL COMMENT 'USB label printer permission; NULL = not reported (tri-state)'"
  }
]
