{"slug":"boreal-relay","name":"Boreal Relay","description":"A BYOK AI support assistant with approved answers, conversation history, feedback, and safe human handoff.","author":"scottnanc","active_installs":0,"version":"2.1.2","wp_org_url":"https://wordpress.org/plugins/boreal-relay/","is_closed":false,"cleanup":{"has_uninstall_hook":true,"drops_tables_on_uninstall":true,"deletes_options_on_uninstall":false},"tables":[{"table_name":"boreal_relay_conversations","full_table_name":"wp_boreal_relay_conversations","description":"Stores boreal relay conversations data created by this plugin.","detection_method":"static","confidence":"medium","columns":[{"name":"id","type":"BIGINT(20) UNSIGNED","nullable":false,"primary_key":true},{"name":"session_id","type":"VARCHAR(64)","nullable":false,"primary_key":false},{"name":"role","type":"ENUM('user','assistant')","nullable":false,"primary_key":false},{"name":"message","type":"LONGTEXT","nullable":false,"primary_key":false},{"name":"confidence","type":"FLOAT","nullable":true,"primary_key":false},{"name":"escalated","type":"TINYINT(1)","nullable":true,"primary_key":false},{"name":"page_url","type":"VARCHAR(500)","nullable":true,"primary_key":false},{"name":"helpful","type":"TINYINT(1)","nullable":true,"primary_key":false},{"name":"created_at","type":"DATETIME","nullable":true,"primary_key":false},{"name":"question","type":"TEXT","nullable":false,"primary_key":false},{"name":"answer","type":"LONGTEXT","nullable":false,"primary_key":false},{"name":"category","type":"VARCHAR(100)","nullable":true,"primary_key":false},{"name":"source","type":"ENUM('seed','learned','admin')","nullable":true,"primary_key":false},{"name":"approved","type":"TINYINT(1)","nullable":true,"primary_key":false},{"name":"use_count","type":"INT","nullable":true,"primary_key":false},{"name":"created_at","type":"DATETIME","nullable":true,"primary_key":false},{"name":"updated_at","type":"DATETIME","nullable":true,"primary_key":false},{"name":"session_id","type":"VARCHAR(64)","nullable":false,"primary_key":false},{"name":"trigger_message","type":"LONGTEXT","nullable":false,"primary_key":false},{"name":"ai_reply","type":"LONGTEXT","nullable":false,"primary_key":false},{"name":"customer_name","type":"VARCHAR(100)","nullable":true,"primary_key":false},{"name":"customer_email","type":"VARCHAR(200)","nullable":true,"primary_key":false},{"name":"customer_phone","type":"VARCHAR(50)","nullable":true,"primary_key":false},{"name":"status","type":"ENUM('open','in_progress','resolved')","nullable":true,"primary_key":false},{"name":"resolved_by","type":"VARCHAR(100)","nullable":true,"primary_key":false},{"name":"notes","type":"TEXT","nullable":true,"primary_key":false},{"name":"created_at","type":"DATETIME","nullable":true,"primary_key":false},{"name":"updated_at","type":"DATETIME","nullable":true,"primary_key":false}],"create_sql":"CREATE TABLE IF NOT EXISTS wp_boreal_relay_conversations ( id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, session_id VARCHAR(64) NOT NULL, role ENUM('user','assistant') NOT NULL, message LONGTEXT NOT NULL, confidence FLOAT DEFAULT NULL, escalated TINYINT(1) DEFAULT 0, page_url VARCHAR(500) DEFAULT NULL, helpful TINYINT(1) DEFAULT NULL, created_at DATETIME DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id), KEY session_id (session_id), KEY created_at (created_at) ) $charset_collate;\"; $sql_knowledge = \"CREATE TABLE IF NOT EXISTS wp_boreal_relay_knowledge ( id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, question TEXT NOT NULL, answer LONGTEXT NOT NULL, category VARCHAR(100) DEFAULT 'general', source ENUM('seed','learned','admin') DEFAULT 'admin', approved TINYINT(1) DEFAULT 1, use_count INT DEFAULT 0, created_at DATETIME DEFAULT CURRENT_TIMESTAMP, updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id), KEY category (category), KEY approved (approved) ) $charset_collate;\"; $sql_escalations = \"CREATE TABLE IF NOT EXISTS wp_boreal_relay_escalations ( id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, session_id VARCHAR(64) NOT NULL, trigger_message LONGTEXT NOT NULL, ai_reply LONGTEXT NOT NULL, customer_name VARCHAR(100) DEFAULT NULL, customer_email VARCHAR(200) DEFAULT NULL, customer_phone VARCHAR(50) DEFAULT NULL, status ENUM('open','in_progress','resolved') DEFAULT 'open', resolved_by VARCHAR(100) DEFAULT NULL, notes TEXT DEFAULT NULL, created_at DATETIME DEFAULT CURRENT_TIMESTAMP, updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id), KEY status (status), KEY created_at (created_at) ) $charset_collate;\"; dbDelta( $sql_conversations );"},{"table_name":"boreal_relay_escalations","full_table_name":"wp_boreal_relay_escalations","description":"Stores boreal relay escalations data created by this plugin.","detection_method":"static","confidence":"medium","columns":[],"create_sql":null},{"table_name":"boreal_relay_knowledge","full_table_name":"wp_boreal_relay_knowledge","description":"Stores boreal relay knowledge data created by this plugin.","detection_method":"static","confidence":"medium","columns":[],"create_sql":null}],"table_count":3}