Saltar a contenido

Bloque 1: Los 12 Principios Inmutables

Los principios definen el qué y el por qué de SmallCountry. Son la constitución del sistema: no dependen de herramientas concretas, versiones de software ni tecnologías específicas. Son inmutables por diseño.


1. Fuente única de verdad versionada

Todo cambio en el sistema —infraestructura, configuración, documentación, automatizaciones y prompts de IA— nace como un commit en Forgejo. Cualquier divergencia entre el estado declarado y el real detiene los despliegues y fuerza una decisión humana.

2. Reconstruibilidad total desde cero

El sistema completo debe poder regenerarse desde un entorno base limpio usando exclusivamente declaraciones automatizadas. La infraestructura es efímera; el código y los datos son lo permanente.

3. Aislamiento del núcleo y perímetro único de acceso

Los servicios internos no se exponen a redes externas. Un único punto de entrada controlado (NetBird) verifica la identidad antes de permitir tráfico. Los servicios públicos se sirven desde un enclave externo aislado y unidireccional (Zona Cero).

4. Segmentación estricta de redes con denegación por defecto

Los dominios funcionales —gestión, servicios de usuario, IoT— operan en bridges independientes con política Default Deny entre ellos. Una intrusión en un servicio no se propaga.

5. Resiliencia física delegada al hardware

Los elementos con consecuencias irreversibles (bomba del pozo, riego) mantienen su capacidad de operación autónoma aunque todo el software falle. La lógica de supervivencia reside en el hardware.

6. Arquitectura por capas funcionales independientes

Tres capas separadas: Edge (autonomía local), Tiempo real (Node-RED + MQTT (protocolo de mensajería ligera para IoT)), Lógica (n8n). Ninguna depende de la superior para su función crítica.

7. Soberanía operativa y operación local

El sistema no depende de servicios externos. Los datos externos se cachean localmente. La operación normal es en modo local; internet es aprovisionamiento voluntario.

8. Observabilidad integral desde el origen

Todo servicio nace instrumentado. Push (MQTT (protocolo de mensajería ligera para IoT)) para el edge, Pull (Prometheus/Alloy) para la infraestructura. OpenTelemetry como tejido transversal del ecosistema.

9. Silencio operativo y notificación por síntomas

El sistema solo interrumpe cuando hay que actuar. Las tareas exitosas no notifican. Las alertas se disparan ante síntomas, no ante causas.

10. Asistencia inteligente con supervisión humana obligatoria

La IA puede analizar, sugerir y diagnosticar, pero nunca ejecuta acciones sin revisión humana. La última palabra es siempre de la persona.

11. Contención de recursos y degradación planificada

Cada LXC (contenedor ligero de Proxmox) tiene límites duros de RAM y CPU. Ante saturación, se degrada de forma ordenada: primero lo accesorio, siempre lo esencial.

12. Conocimiento compartido y autonomía de las personas usuarias

El sistema se documenta y versiona. Cada usuario puede realizar sus tareas sin intervención administrativa. Si requiere admin, es deuda de diseño.


Volver al manual