caixa-mesh — typed renderer that emits cluster mesh primitives
from an :kind Aplicacao caixa.
See theory/MESH-COMPOSITION.md for the design frame: a typed
Aplicacao composes Servicos into a graph with WIT-typed contracts,
mesh policies, and explicit placement. caixa-mesh is the renderer
that turns that typed graph into the cluster-side primitives:
- programs.yaml fan-out — one entry per
:membros, consumed by lareira-fleet-programs (V0; this crate) - Cilium NetworkPolicy — one per distinct
:contratos(:de, :para)pair, identity-based L7 allow-list (M3.x next) - Gateway + HTTPRoute — one per
:entrada, K8s Gateway API external ingress (M3.x next)
Same caixa-<target> naming convention as [caixa_helm] +
[caixa_flux]: a typed renderer that takes a typed Caixa and emits
the canonical source for <target>.
V0 contract:
use Caixa;
use programs_for_aplicacao;
let aplicacao: Caixa = from_lisp?;
let entries: = programs_for_aplicacao?;
// → one entry per :membros, suitable for fan-out into the
// cluster's lareira-fleet-programs HelmRelease.