Principles
Intent vs reality, one-way dependencies, the boundary rule, and the ground rules the whole estate follows.
A Proxmox cluster, eight VLANs, a self-hosted DNS/CA/secrets foundation, and the platform and apps on top — everything declared in git and applied by OpenTofu and Ansible.
Network intent (every VLAN, IP, hostname, and DNS record) lives in a YAML registry (jacaranda-inventory). Reality (Proxmox containers, Pi-hole records, certificates) is made to match intent by applier layers — never the other way around. A foundation tier (DNS, secrets, SSH CA) must exist before anything else and depends on nothing above it. Everything else lives in a live-infra monorepo split into tiers (platform → hosted-apps → physical), consuming shared OpenTofu modules pinned by version. If observed reality disagrees with the registry, that is drift to be resolved deliberately — not silently papered over.