De scripts a contratos

Lo que el sistema de tipos de Rust me enseñó sobre la composición de infraestructura — RustLab 2026, Bolonia

Jesús Pérez
La charla de RustLab 2026 trata de Provisioning: contratos tipados sobre toda la composición, un DAG de fórmulas ejecutado en paralelo con vuelta atrás, proveedores como interfaz enchufable, y los límites honestos de la analogía con el sistema de tipos.

De scripts a contratos

RustLab 2026 · Bolonia · sala RustLab Deep Space · 3 de noviembre de 2026, 12:15 · 45 minutos con preguntas.

▤  Leer las diapositivas ▶  Versión interactiva (Slidev) ⇩  PDF

Esta charla trata de Provisioning. Cuenta cómo se reconstruyó la plataforma alrededor de una idea —la infraestructura merece la misma disciplina de tipos que el código de aplicación— y dónde esa idea deja de funcionar.

Qué parte de Provisioning enseña la charla

  • Contratos tipados sobre la composición. No solo cada recurso: las relaciones entre ellos. Cada pieza de infraestructura es un esquema Nickel que se valida antes de ejecución, y TOML o YAML solo se generan a partir de él.
  • El DAG de fórmulas. Un workspace se compone como un grafo de dependencias tipado —containerd antes que etcd, etcd antes que Kubernetes, Kubernetes antes que Cilium— y el orquestador lo ejecuta en paralelo donde el grafo lo permite, con puntos de control y vuelta atrás.
  • Proveedores como interfaz. Una nube nueva es la implementación de un contrato, no un cambio en el núcleo de la plataforma.
  • Límites estrictos entre servicios. Las API de proveedor solo en el orquestador, la autorización solo en el Control Center bajo Cedar, los secretos solo a través del vault, y NATS JetStream como único intermediario entre ellos.

El recorrido

  • El problema: infraestructura que falla en silencio.
  • La idea: tipar la composición, no solo los recursos.
  • La implementación: lo que aportan el modelo de ownership y el sistema de traits de Rust, y dónde se rompe la analogía.
  • Los límites honestos: el estado externo y las APIs de la nube no respetan tu sistema de tipos.

Con un recorrido en directo por un clúster real que funciona sobre esta pila. Para desarrolladores Rust de nivel intermedio con algo de experiencia en infraestructura o despliegue; no hace falta conocer ninguna herramienta de IaC concreta.

Foto de portada: Piazza Maggiore, Bolonia — Max Nayman, Unsplash.

· lecturas

Danos tu opinión ↗