# MARGARET ![Estado](https://img.shields.io/badge/Estado-IMPLEMENTADO-brightgreen) **Log de entrada CORP - Sistema TZZR** ## Rol Secretaria de entrada para CORP (servidor empresarial). Variante de CLARA con funcionalidades adicionales. ## Posicion en el Flujo ``` PACKET (App) --> MARGARET --> MASON --> FELDMAN | └--> R2 (archivos) ``` ## Endpoints | Metodo | Ruta | Descripcion | |--------|------|-------------| | GET | `/health` | Estado del servicio | | POST | `/ingest` | Recibir contenedor | | GET | `/query/` | Consultar por hash | | GET | `/list` | Listar entradas | ## Autenticacion Todas las rutas (excepto `/health`) requieren: ``` X-Auth-Key: {h_instancia} ``` ## Despliegue ```bash # En CORP cd /opt/margaret cp .env.example .env # Editar .env con credenciales docker compose up -d ``` ## Configuracion Ver `.env.example` para variables requeridas: - `H_INSTANCIA`: Hash unico de CORP - `DB_*`: Credenciales PostgreSQL - `R2_*`: Credenciales Cloudflare R2 ## Base de Datos Ejecutar `init.sql` en PostgreSQL: ```bash sudo -u postgres psql -d corp -f init.sql ``` ## Comparacion | Aspecto | CLARA (DECK) | MARGARET (CORP) | |---------|--------------|-----------------| | Servidor | Personal | Empresarial | | Log | Inmutable | Inmutable | | Puerto | 5051 | 5051 | | Bucket R2 | deck | corp | ## Funcion 1. Recibe contenedor de PACKET 2. Envia archivos a R2 3. Registra metadata + ubicacion R2 4. **NO agrega informacion** 5. **NO procesa** 6. **NO modifica** --- *Componente del sistema TZZR - Implementado 2025-12-24*