- Core captain_claude.py orchestrator - Context manager with SQL schemas - Provider adapters (Anthropic, OpenAI) - Execution scripts
40 lines
1.3 KiB
PL/PgSQL
40 lines
1.3 KiB
PL/PgSQL
-- ============================================
|
|
-- CONTEXT MANAGER - BASE TYPES
|
|
-- Sistema local de gestión de contexto para IA
|
|
-- ============================================
|
|
|
|
-- Extension para UUIDs
|
|
CREATE EXTENSION IF NOT EXISTS "pgcrypto";
|
|
|
|
-- ============================================
|
|
-- TIPOS ENUMERADOS
|
|
-- ============================================
|
|
|
|
CREATE TYPE mensaje_role AS ENUM ('user', 'assistant', 'system', 'tool');
|
|
CREATE TYPE context_source AS ENUM ('memory', 'knowledge', 'history', 'ambient', 'dataset');
|
|
CREATE TYPE algorithm_status AS ENUM ('draft', 'testing', 'active', 'deprecated');
|
|
CREATE TYPE metric_type AS ENUM ('relevance', 'token_efficiency', 'response_quality', 'latency');
|
|
|
|
-- ============================================
|
|
-- FUNCIÓN: Timestamp de actualización
|
|
-- ============================================
|
|
|
|
CREATE OR REPLACE FUNCTION update_updated_at_column()
|
|
RETURNS TRIGGER AS $$
|
|
BEGIN
|
|
NEW.updated_at = CURRENT_TIMESTAMP;
|
|
RETURN NEW;
|
|
END;
|
|
$$ LANGUAGE plpgsql;
|
|
|
|
-- ============================================
|
|
-- FUNCIÓN: Hash SHA-256
|
|
-- ============================================
|
|
|
|
CREATE OR REPLACE FUNCTION sha256_hash(content TEXT)
|
|
RETURNS VARCHAR(64) AS $$
|
|
BEGIN
|
|
RETURN encode(digest(content, 'sha256'), 'hex');
|
|
END;
|
|
$$ LANGUAGE plpgsql IMMUTABLE;
|