digraph rig_environment { rankdir=TB bgcolor="#0a0e17" fontname="Helvetica" node [fontname="Helvetica" fontsize=11 style=filled color="#1e2a4a" fontcolor="#e8eaf0" shape=box] edge [fontname="Helvetica" fontsize=9 fontcolor="#8892a8" color="#4a5568"] label="One environment per directory — copies never collide" labelloc=t fontsize=16 fontcolor="#0066ff" dirname [label="directory name\ne.g. acmebank/" fillcolor="#1f6feb" fontcolor="#ffffff" shape=octagon] subgraph cluster_derived { label="Everything below is derived from it" style=dashed color="#1e2a4a" fontcolor="#8892a8" cname [label="cluster name\nacmebank" fillcolor="#121829"] ctx [label="kubectl context\nkind-acmebank" fillcolor="#121829"] img [label="image tag\nacmebank-deps" fillcolor="#121829"] ports [label="port block\n21300–21309" fillcolor="#121829"] reg [label="registry container\nacmebank-registry" fillcolor="#121829"] } subgraph cluster_config { label="Configuration — weakest first, later wins" style=dashed color="#1e2a4a" fontcolor="#8892a8" versions [label="versions.env\npinned toolchain" fillcolor="#121829"] profile [label="env.d/.env\noptional: addons · registry" fillcolor="#121829"] localenv [label="ctrl/.env\nsecrets, overrides" fillcolor="#121829"] shell [label="the environment\nPROFILE=client make …" fillcolor="#1a3a1a" fontcolor="#00c853"] } dirname -> cname dirname -> ctx dirname -> img dirname -> ports dirname -> reg versions -> profile [label="overridden by"] profile -> localenv [label="overridden by"] localenv -> shell [label="overridden by" color="#00c853"] cluster [label="kind cluster" fillcolor="#1a1a3a" fontcolor="#0066ff" shape=octagon] cname -> cluster ports -> cluster shell -> cluster [style=dashed] }