feat(v1.5.2): Execute database migrations and complete setup
- Execute all 6 migrations on Desk CRM production database - Create missing tables: cr_lsps, cr_agent_lsps, cr_lsp_usage - Create archive tables: cr_*_usage_archive (4 tables) - Create system tables: cr_migrations, cr_maintenance_log - Make all scripts executable (chmod +x) - Total cr_* tables: 38 Migration files: - 001_initial_schema.sql - 002_add_lsps.sql - 003_add_relationships.sql - 004_add_telemetry.sql - 005_add_archive_tables.sql - 006_add_maintenance_log.sql Scripts: - session-init.sh, session-end.sh - inject-context.sh, inject-agent-context.sh - record-usage.sh, db-backup.sh, sync-to-mysql.sh Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
109
migrations/001_initial_schema.sql
Normal file
109
migrations/001_initial_schema.sql
Normal file
@@ -0,0 +1,109 @@
|
||||
-- Migration: 001_initial_schema
|
||||
-- Author: Descomplicar®
|
||||
-- Date: 2026-02-01
|
||||
-- Description: Tabelas core da infraestrutura Claude Code
|
||||
|
||||
-- UP
|
||||
|
||||
-- Agentes especializados
|
||||
CREATE TABLE IF NOT EXISTS cr_agents (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
name VARCHAR(100) NOT NULL UNIQUE,
|
||||
description TEXT,
|
||||
model VARCHAR(50) DEFAULT 'sonnet',
|
||||
category VARCHAR(50),
|
||||
status ENUM('active', 'inactive', 'deprecated') DEFAULT 'active',
|
||||
desk_task INT,
|
||||
file_path VARCHAR(255),
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- Skills invocáveis
|
||||
CREATE TABLE IF NOT EXISTS cr_skills (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
name VARCHAR(100) NOT NULL UNIQUE,
|
||||
description TEXT,
|
||||
category VARCHAR(50),
|
||||
status ENUM('active', 'inactive', 'deprecated') DEFAULT 'active',
|
||||
desk_task INT,
|
||||
file_path VARCHAR(255),
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- Servidores MCP
|
||||
CREATE TABLE IF NOT EXISTS cr_mcps (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
name VARCHAR(100) NOT NULL UNIQUE,
|
||||
description TEXT,
|
||||
transport ENUM('stdio', 'sse', 'http') DEFAULT 'stdio',
|
||||
status ENUM('active', 'inactive', 'error') DEFAULT 'active',
|
||||
gateway_url VARCHAR(255),
|
||||
tools_count INT DEFAULT 0,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- Software Development Kits
|
||||
CREATE TABLE IF NOT EXISTS cr_sdks (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
name VARCHAR(100) NOT NULL UNIQUE,
|
||||
description TEXT,
|
||||
category VARCHAR(50),
|
||||
status ENUM('active', 'inactive', 'deprecated') DEFAULT 'active',
|
||||
version VARCHAR(20),
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- Ferramentas por MCP
|
||||
CREATE TABLE IF NOT EXISTS cr_mcp_tools (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
mcp_id INT NOT NULL,
|
||||
name VARCHAR(100) NOT NULL,
|
||||
description TEXT,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
FOREIGN KEY (mcp_id) REFERENCES cr_mcps(id) ON DELETE CASCADE,
|
||||
UNIQUE KEY unique_mcp_tool (mcp_id, name)
|
||||
);
|
||||
|
||||
-- Plugins instalados
|
||||
CREATE TABLE IF NOT EXISTS cr_plugins (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
name VARCHAR(100) NOT NULL UNIQUE,
|
||||
version VARCHAR(20),
|
||||
marketplace VARCHAR(100),
|
||||
status ENUM('active', 'disabled', 'pending') DEFAULT 'active',
|
||||
installed_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- Hooks configurados
|
||||
CREATE TABLE IF NOT EXISTS cr_hooks (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
event VARCHAR(50) NOT NULL,
|
||||
plugin_name VARCHAR(100),
|
||||
command TEXT NOT NULL,
|
||||
description TEXT,
|
||||
timeout INT DEFAULT 5000,
|
||||
status ENUM('active', 'disabled') DEFAULT 'active',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- Índices
|
||||
CREATE INDEX idx_agents_status ON cr_agents(status);
|
||||
CREATE INDEX idx_agents_category ON cr_agents(category);
|
||||
CREATE INDEX idx_skills_status ON cr_skills(status);
|
||||
CREATE INDEX idx_skills_category ON cr_skills(category);
|
||||
CREATE INDEX idx_mcps_status ON cr_mcps(status);
|
||||
CREATE INDEX idx_sdks_status ON cr_sdks(status);
|
||||
|
||||
-- DOWN
|
||||
DROP TABLE IF EXISTS cr_hooks;
|
||||
DROP TABLE IF EXISTS cr_plugins;
|
||||
DROP TABLE IF EXISTS cr_mcp_tools;
|
||||
DROP TABLE IF EXISTS cr_sdks;
|
||||
DROP TABLE IF EXISTS cr_mcps;
|
||||
DROP TABLE IF EXISTS cr_skills;
|
||||
DROP TABLE IF EXISTS cr_agents;
|
||||
Reference in New Issue
Block a user