|
Pin juju-01 MACs, add both controllers to lib-hosts at the ruled .5
Twelve measured MACs (six per DC, virsh domiflist) pinned into both substrate roots; <dc>-juju-01 added to lib-hosts.sh with HOST_OCTET=5 per the D-134 amendment and its measured boot MAC. Done now because both VMs are ENLISTED -- the boundary modules/node-vm warns about, past which an in-place apply can regenerate unpinned MACs and strand the node, as happened to the nine role nodes on 2026-07-21. No race with the running agents: they operate on the voffice1 clone; this edit is on vcloud's, and nothing reaches their tree until someone pulls there. Recorded rather than smoothed over: dc1's juju-01 MACs are libvirt-generated 52:54:00: values, not dc1's schematic 52:54:01:d1: scheme -- a direct consequence of the deliberate macs = [] at first apply. Three exact-count assertions re-pointed to the new invariant and kept EXACT rather than relaxed: dc-selector fleet 9 -> 10 (label corrected, since Option C is a 9-node ruling and the 10th is D-104's), node-vm T8 9 -> 10 and T9 54 -> 60. A real harness defect surfaced doing it: T8's grep -c 'macs = [' counts COMMENTS, and my own comment explaining the deliberate macs = [] inflated the count to 11 -- which reads exactly like a spurious extra node. Fixed to strip comment lines. Same class as the ledger-scan next-free defect where a doc merely quoting a token inflated the counter. maas-role-tags.sh taught the utility band: adding juju-01 to HOSTS made it refuse, because .5 is in no ROLE band -- correct behaviour meeting a new fact. Per the amendment a utility-band host with no role token is now SKIPPED and REPORTED, while the refusal keeps its teeth for genuine disagreement. New cases T10 and T11; harness 9 -> 11. Gauntlet ALL GREEN (87) on vcloud; opentofu-validate PASS; repo-lint 0 fail. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HvCyrwvYTTcDYnRErfMsNf |
|---|
|
|
| docs/CURRENT-STATE.md |
|---|
| docs/changelog-20260728-vip-arity-gate.md |
|---|
| opentofu/vr1-dc0-substrate/main.tf |
|---|
| opentofu/vr1-dc1-substrate/main.tf |
|---|
| scripts/lib-hosts.sh |
|---|
| scripts/maas-role-tags.sh |
|---|
| tests/dc-selector/run-tests.sh |
|---|
| tests/maas-role-tags/run-tests.sh |
|---|
| tests/node-vm/run-tests.sh |
|---|