Simple state machines
A Framework for interacting with Amino
Typed, attested, Rust-native Kubernetes runtime. The engine that runs the land (terreno). Pillar 7 runtime half; sibling to magma. Spec: theory/ENGENHO.md.
engenho-apiserver — HTTP K8s API wrapping engenho-store. Translates kubectl REST operations into typed ResourceCommand proposals via the distributed substrate. Layer R7 of the engenho K8s base layer.
Typed schema for engenho/k3s cluster configuration: every network knob + GitOps bootstrap, validated at construction and renderable to k3s config.yaml + cmdline flags + bootstrap manifests.
CLI binary: read a YAML ClusterConfig, validate, emit k3s config.yaml + cmdline args + auto-apply manifests. Consumed by nixos-k3s-vm at NixOS build time.
engenho-config — the top-level shikumi-back typed configuration surface for the whole engenho substrate. EngenhoConfig owns cluster + revoada + teia + scheduler + controllers + consistency sub-structs; each provides shikumi::TieredConfig with reasonable prescribed_default()s so 90% of operators get a working substrate from cargo run.
engenho-controllers — the engenho K8s controller suite. Hosts the Controller trait + canonical implementations: ReplicaSetController (R9), DeploymentController (R9.5), ServiceController (R9.6), GC (R9.7). Each is a thin reconcile loop on engenho-store. Same shape as engenho-scheduler — the second-site for the controller pattern.
Reqwest-backed implementation of engenho-types' KubeClient + Watcher traits. Speaks the upstream Kubernetes REST API over HTTPS with rustls + the four standard auth methods (anonymous, bearer token, client cert, exec plugin).
OpenAPI v3 → typed Rust source generator for engenho-types. Reads BLAKE3-attested vendored K8s schemas + emits one Rust struct per kind with `impl KubeResource`. Per theory/ENGENHO.md §IV — generation over composition (Pillar 12).
engenho-kubelet — the missing piece between 'Pod object in the store' and 'container running on host'. Per-node controller that watches Pods bound to its node + materializes containers via a pluggable ContainerRuntime backend (PodmanBackend / CriBackend / RunwasiBackend / FakeBackend for tests).
MCP server exposing the engenho cluster operator surface — typed reader catalog (P0) and writer catalog (P2+).
engenho's distribution layer — dynamic K8s control-plane / worker role shifting via Raft consensus + gossip membership + P2P content sync + BLAKE3 attested transitions. Read docs/DISTRIBUTED.md.
engenho-scheduler — the first real K8s controller on the engenho substrate. Reconciles pending Pods (no spec.nodeName) by picking a Node via a pluggable SchedulingStrategy trait + patching the Pod through StoreMesh. R8 of the engenho K8s base layer.