exec("CREATE TABLE IF NOT EXISTS discovery_connectors ( id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, organization_id INT NOT NULL, name VARCHAR(120) NOT NULL, connector_type ENUM('network','aws','azure','gcp','cmdb','agent','custom') NOT NULL DEFAULT 'network', config JSON NULL, api_key_id INT UNSIGNED NULL, status ENUM('active','paused','error') NOT NULL DEFAULT 'active', schedule ENUM('manual','hourly','daily','weekly') NOT NULL DEFAULT 'manual', last_run_at TIMESTAMP NULL, last_status VARCHAR(20) NULL, last_discovered INT NULL, last_message VARCHAR(255) NULL, created_by INT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, UNIQUE KEY uq_dc_org_name (organization_id, name), INDEX idx_dc_org (organization_id), INDEX idx_dc_key (api_key_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci"); echo " + discovery_connectors OK\n"; $pdo->exec("CREATE TABLE IF NOT EXISTS discovery_runs ( id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, connector_id INT UNSIGNED NOT NULL, organization_id INT NOT NULL, started_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, finished_at TIMESTAMP NULL, status ENUM('running','ok','error') NOT NULL DEFAULT 'ok', discovered_assets INT NOT NULL DEFAULT 0, discovered_flows INT NOT NULL DEFAULT 0, message VARCHAR(255) NULL, INDEX idx_dr_conn (connector_id), INDEX idx_dr_org (organization_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci"); echo " + discovery_runs OK\n"; $pdo->exec("CREATE TABLE IF NOT EXISTS network_flows ( id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, organization_id INT NOT NULL, src VARCHAR(190) NOT NULL, dst VARCHAR(190) NOT NULL, port INT NULL, protocol VARCHAR(12) NULL, direction ENUM('internal','inbound','outbound') NOT NULL DEFAULT 'internal', discovery_source VARCHAR(40) NOT NULL DEFAULT 'manual', external_ref VARCHAR(190) NULL, last_seen_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, UNIQUE KEY uq_flow (organization_id, external_ref), INDEX idx_flow_org (organization_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci"); echo " + network_flows OK\n"; echo "Migrazione 064 — connettori discovery OK. Prossima mig=065.\n";