Files
system-docs/v4-archive/margaret/README.md

80 lines
1.6 KiB
Markdown
Raw Normal View History

# 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/<h_entrada>` | 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*