# Secretaría **Nombres:** Clara (personal), Margaret (corporativo) **Estado:** Implementado --- ## Descripción Punto de entrada inmutable del sistema. Todo dato que ingresa queda registrado exactamente como llegó. --- ## Principio ``` ┌─────────────────────────────────────────────────────────────────┐ │ │ │ Todo lo que entra se registra. │ │ Nada se modifica. Nada se elimina. │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## Características | Característica | Valor | |----------------|-------| | Mutabilidad | **Inmutable** | | Persistencia | Permanente | | Eliminación | Prohibida | --- ## Registra - Fecha y hora - Origen - Usuario - Contenido - Hash SHA-256 de archivos --- ## Clara vs Margaret | Aspecto | Clara | Margaret | |---------|-------|----------| | Contexto | Personal (DECK) | Corporativo (CORP) | | Usuarios | Uno | Múltiples | | Tabla recepción | Menor | Mayor | | Funcionalidad | Equivalente | Equivalente | --- ## Flujo de Entrada ``` PACKET / API / Manual │ ▼ ┌─────────────────┐ │ Secretaría │ │ Clara/Margaret │ ├─────────────────┤ │ • Registrar │ │ • Hashear │ │ • Almacenar │ │ • Confirmar │ └────────┬────────┘ │ ├──► Producción (si encaja) │ └──► Administración (si no encaja) ``` --- ## Schema ```sql CREATE TABLE secretaria_log ( id BIGSERIAL PRIMARY KEY, h_entrada VARCHAR(64) UNIQUE NOT NULL, ts TIMESTAMPTZ DEFAULT NOW(), origen VARCHAR(100), usuario_id INTEGER, tipo_contenido VARCHAR(50), contenido JSONB, archivos_hashes JSONB, metadata JSONB ); ``` --- ## API | Endpoint | Método | Descripción | |----------|--------|-------------| | /ingesta | POST | Nueva entrada | | /ingesta/{h_entrada} | GET | Consultar entrada | | /ingesta/verificar | POST | Verificar hash |