OK   profile 'vr1-dc0-region' -> region with racks [hot-kid] (as expected)

=== region + plane preconditions (vr1-dc0 via profile 'vr1-dc0-region') ===
  [ok]   provider-public 10.12.4.0/22 carries a gateway (got '10.12.4.1') -- the node default route depends on it
  [ok]   metal-admin 10.12.8.0/22 has NO gateway (got 'none') -- D-134/D-125: it is not an egress plane

=== vr1-dc0-control-01 -> 677cta/mint-roughy (octet 100, 6 plane(s), status Ready) ===
  [ok]   vr1-dc0-control-01 enp1s0 STATIC 10.12.8.100 on metal-admin (got 'static:10.12.8.100')
  [ok]   vr1-dc0-control-01 enp1s0 on the metal-admin VLAN (got '5001' want '5001')
  [ok]   vr1-dc0-control-01 br-ex STATIC 10.12.4.100 on provider-public (got 'static:10.12.4.100')
  [ok]   vr1-dc0-control-01 br-ex is a bridge (got 'bridge')
  [ok]   vr1-dc0-control-01 br-ex parent is enp2s0 (got 'enp2s0')
  [ok]   vr1-dc0-control-01 enp2s0 holds no L3 link (got 0) -- it is an OVS member
  [ok]   vr1-dc0-control-01 enp3s0 STATIC 10.12.12.100 on metal-internal (got 'static:10.12.12.100')
  [ok]   vr1-dc0-control-01 enp3s0 on the metal-internal VLAN (got '5004' want '5004')
  [ok]   vr1-dc0-control-01 enp4s0 STATIC 10.12.16.100 on data-tenant (got 'static:10.12.16.100')
  [ok]   vr1-dc0-control-01 enp4s0 on the data-tenant VLAN (got '5005' want '5005')
  [ok]   vr1-dc0-control-01 enp5s0 STATIC 10.12.32.100 on storage (got 'static:10.12.32.100')
  [ok]   vr1-dc0-control-01 enp5s0 on the storage VLAN (got '5006' want '5006')
  [ok]   vr1-dc0-control-01 enp6s0 STATIC 10.12.36.100 on replication (got 'static:10.12.36.100')
  [ok]   vr1-dc0-control-01 enp6s0 on the replication VLAN (got '5007' want '5007')

=== vr1-dc0-control-02 -> wpftxc/gentle-raven (octet 101, 6 plane(s), status Ready) ===
  [ok]   vr1-dc0-control-02 enp1s0 STATIC 10.12.8.101 on metal-admin (got 'static:10.12.8.101')
  [ok]   vr1-dc0-control-02 enp1s0 on the metal-admin VLAN (got '5001' want '5001')
  [ok]   vr1-dc0-control-02 br-ex STATIC 10.12.4.101 on provider-public (got 'static:10.12.4.101')
  [ok]   vr1-dc0-control-02 br-ex is a bridge (got 'bridge')
  [ok]   vr1-dc0-control-02 br-ex parent is enp2s0 (got 'enp2s0')
  [ok]   vr1-dc0-control-02 enp2s0 holds no L3 link (got 0) -- it is an OVS member
  [ok]   vr1-dc0-control-02 enp3s0 STATIC 10.12.12.101 on metal-internal (got 'static:10.12.12.101')
  [ok]   vr1-dc0-control-02 enp3s0 on the metal-internal VLAN (got '5004' want '5004')
  [ok]   vr1-dc0-control-02 enp4s0 STATIC 10.12.16.101 on data-tenant (got 'static:10.12.16.101')
  [ok]   vr1-dc0-control-02 enp4s0 on the data-tenant VLAN (got '5005' want '5005')
  [ok]   vr1-dc0-control-02 enp5s0 STATIC 10.12.32.101 on storage (got 'static:10.12.32.101')
  [ok]   vr1-dc0-control-02 enp5s0 on the storage VLAN (got '5006' want '5006')
  [ok]   vr1-dc0-control-02 enp6s0 STATIC 10.12.36.101 on replication (got 'static:10.12.36.101')
  [ok]   vr1-dc0-control-02 enp6s0 on the replication VLAN (got '5007' want '5007')

=== vr1-dc0-control-03 -> 6p8pbx/square-insect (octet 102, 6 plane(s), status Ready) ===
  [ok]   vr1-dc0-control-03 enp1s0 STATIC 10.12.8.102 on metal-admin (got 'static:10.12.8.102')
  [ok]   vr1-dc0-control-03 enp1s0 on the metal-admin VLAN (got '5001' want '5001')
  [ok]   vr1-dc0-control-03 br-ex STATIC 10.12.4.102 on provider-public (got 'static:10.12.4.102')
  [ok]   vr1-dc0-control-03 br-ex is a bridge (got 'bridge')
  [ok]   vr1-dc0-control-03 br-ex parent is enp2s0 (got 'enp2s0')
  [ok]   vr1-dc0-control-03 enp2s0 holds no L3 link (got 0) -- it is an OVS member
  [ok]   vr1-dc0-control-03 enp3s0 STATIC 10.12.12.102 on metal-internal (got 'static:10.12.12.102')
  [ok]   vr1-dc0-control-03 enp3s0 on the metal-internal VLAN (got '5004' want '5004')
  [ok]   vr1-dc0-control-03 enp4s0 STATIC 10.12.16.102 on data-tenant (got 'static:10.12.16.102')
  [ok]   vr1-dc0-control-03 enp4s0 on the data-tenant VLAN (got '5005' want '5005')
  [ok]   vr1-dc0-control-03 enp5s0 STATIC 10.12.32.102 on storage (got 'static:10.12.32.102')
  [ok]   vr1-dc0-control-03 enp5s0 on the storage VLAN (got '5006' want '5006')
  [ok]   vr1-dc0-control-03 enp6s0 STATIC 10.12.36.102 on replication (got 'static:10.12.36.102')
  [ok]   vr1-dc0-control-03 enp6s0 on the replication VLAN (got '5007' want '5007')

=== vr1-dc0-compute-01 -> m3cgc7/pure-condor (octet 120, 6 plane(s), status Ready) ===
  [ok]   vr1-dc0-compute-01 enp1s0 STATIC 10.12.8.120 on metal-admin (got 'static:10.12.8.120')
  [ok]   vr1-dc0-compute-01 enp1s0 on the metal-admin VLAN (got '5001' want '5001')
  [ok]   vr1-dc0-compute-01 br-ex STATIC 10.12.4.120 on provider-public (got 'static:10.12.4.120')
  [ok]   vr1-dc0-compute-01 br-ex is a bridge (got 'bridge')
  [ok]   vr1-dc0-compute-01 br-ex parent is enp2s0 (got 'enp2s0')
  [ok]   vr1-dc0-compute-01 enp2s0 holds no L3 link (got 0) -- it is an OVS member
  [ok]   vr1-dc0-compute-01 enp3s0 STATIC 10.12.12.120 on metal-internal (got 'static:10.12.12.120')
  [ok]   vr1-dc0-compute-01 enp3s0 on the metal-internal VLAN (got '5004' want '5004')
  [ok]   vr1-dc0-compute-01 enp4s0 STATIC 10.12.16.120 on data-tenant (got 'static:10.12.16.120')
  [ok]   vr1-dc0-compute-01 enp4s0 on the data-tenant VLAN (got '5005' want '5005')
  [ok]   vr1-dc0-compute-01 enp5s0 STATIC 10.12.32.120 on storage (got 'static:10.12.32.120')
  [ok]   vr1-dc0-compute-01 enp5s0 on the storage VLAN (got '5006' want '5006')
  [ok]   vr1-dc0-compute-01 enp6s0 STATIC 10.12.36.120 on replication (got 'static:10.12.36.120')
  [ok]   vr1-dc0-compute-01 enp6s0 on the replication VLAN (got '5007' want '5007')

=== vr1-dc0-compute-02 -> t6kpe3/able-puma (octet 121, 6 plane(s), status Ready) ===
  [ok]   vr1-dc0-compute-02 enp1s0 STATIC 10.12.8.121 on metal-admin (got 'static:10.12.8.121')
  [ok]   vr1-dc0-compute-02 enp1s0 on the metal-admin VLAN (got '5001' want '5001')
  [ok]   vr1-dc0-compute-02 br-ex STATIC 10.12.4.121 on provider-public (got 'static:10.12.4.121')
  [ok]   vr1-dc0-compute-02 br-ex is a bridge (got 'bridge')
  [ok]   vr1-dc0-compute-02 br-ex parent is enp2s0 (got 'enp2s0')
  [ok]   vr1-dc0-compute-02 enp2s0 holds no L3 link (got 0) -- it is an OVS member
  [ok]   vr1-dc0-compute-02 enp3s0 STATIC 10.12.12.121 on metal-internal (got 'static:10.12.12.121')
  [ok]   vr1-dc0-compute-02 enp3s0 on the metal-internal VLAN (got '5004' want '5004')
  [ok]   vr1-dc0-compute-02 enp4s0 STATIC 10.12.16.121 on data-tenant (got 'static:10.12.16.121')
  [ok]   vr1-dc0-compute-02 enp4s0 on the data-tenant VLAN (got '5005' want '5005')
  [ok]   vr1-dc0-compute-02 enp5s0 STATIC 10.12.32.121 on storage (got 'static:10.12.32.121')
  [ok]   vr1-dc0-compute-02 enp5s0 on the storage VLAN (got '5006' want '5006')
  [ok]   vr1-dc0-compute-02 enp6s0 STATIC 10.12.36.121 on replication (got 'static:10.12.36.121')
  [ok]   vr1-dc0-compute-02 enp6s0 on the replication VLAN (got '5007' want '5007')

=== vr1-dc0-storage-01 -> t7ymp6/amused-corgi (octet 150, 6 plane(s), status Ready) ===
  [ok]   vr1-dc0-storage-01 enp1s0 STATIC 10.12.8.150 on metal-admin (got 'static:10.12.8.150')
  [ok]   vr1-dc0-storage-01 enp1s0 on the metal-admin VLAN (got '5001' want '5001')
  [ok]   vr1-dc0-storage-01 br-ex STATIC 10.12.4.150 on provider-public (got 'static:10.12.4.150')
  [ok]   vr1-dc0-storage-01 br-ex is a bridge (got 'bridge')
  [ok]   vr1-dc0-storage-01 br-ex parent is enp2s0 (got 'enp2s0')
  [ok]   vr1-dc0-storage-01 enp2s0 holds no L3 link (got 0) -- it is an OVS member
  [ok]   vr1-dc0-storage-01 enp3s0 STATIC 10.12.12.150 on metal-internal (got 'static:10.12.12.150')
  [ok]   vr1-dc0-storage-01 enp3s0 on the metal-internal VLAN (got '5004' want '5004')
  [ok]   vr1-dc0-storage-01 enp4s0 STATIC 10.12.16.150 on data-tenant (got 'static:10.12.16.150')
  [ok]   vr1-dc0-storage-01 enp4s0 on the data-tenant VLAN (got '5005' want '5005')
  [ok]   vr1-dc0-storage-01 enp5s0 STATIC 10.12.32.150 on storage (got 'static:10.12.32.150')
  [ok]   vr1-dc0-storage-01 enp5s0 on the storage VLAN (got '5006' want '5006')
  [ok]   vr1-dc0-storage-01 enp6s0 STATIC 10.12.36.150 on replication (got 'static:10.12.36.150')
  [ok]   vr1-dc0-storage-01 enp6s0 on the replication VLAN (got '5007' want '5007')

=== vr1-dc0-storage-02 -> fg6gxm/known-alpaca (octet 151, 6 plane(s), status Ready) ===
  [ok]   vr1-dc0-storage-02 enp1s0 STATIC 10.12.8.151 on metal-admin (got 'static:10.12.8.151')
  [ok]   vr1-dc0-storage-02 enp1s0 on the metal-admin VLAN (got '5001' want '5001')
  [ok]   vr1-dc0-storage-02 br-ex STATIC 10.12.4.151 on provider-public (got 'static:10.12.4.151')
  [ok]   vr1-dc0-storage-02 br-ex is a bridge (got 'bridge')
  [ok]   vr1-dc0-storage-02 br-ex parent is enp2s0 (got 'enp2s0')
  [ok]   vr1-dc0-storage-02 enp2s0 holds no L3 link (got 0) -- it is an OVS member
  [ok]   vr1-dc0-storage-02 enp3s0 STATIC 10.12.12.151 on metal-internal (got 'static:10.12.12.151')
  [ok]   vr1-dc0-storage-02 enp3s0 on the metal-internal VLAN (got '5004' want '5004')
  [ok]   vr1-dc0-storage-02 enp4s0 STATIC 10.12.16.151 on data-tenant (got 'static:10.12.16.151')
  [ok]   vr1-dc0-storage-02 enp4s0 on the data-tenant VLAN (got '5005' want '5005')
  [ok]   vr1-dc0-storage-02 enp5s0 STATIC 10.12.32.151 on storage (got 'static:10.12.32.151')
  [ok]   vr1-dc0-storage-02 enp5s0 on the storage VLAN (got '5006' want '5006')
  [ok]   vr1-dc0-storage-02 enp6s0 STATIC 10.12.36.151 on replication (got 'static:10.12.36.151')
  [ok]   vr1-dc0-storage-02 enp6s0 on the replication VLAN (got '5007' want '5007')

=== vr1-dc0-storage-03 -> yws74f/loyal-oyster (octet 152, 6 plane(s), status Ready) ===
  [ok]   vr1-dc0-storage-03 enp1s0 STATIC 10.12.8.152 on metal-admin (got 'static:10.12.8.152')
  [ok]   vr1-dc0-storage-03 enp1s0 on the metal-admin VLAN (got '5001' want '5001')
  [ok]   vr1-dc0-storage-03 br-ex STATIC 10.12.4.152 on provider-public (got 'static:10.12.4.152')
  [ok]   vr1-dc0-storage-03 br-ex is a bridge (got 'bridge')
  [ok]   vr1-dc0-storage-03 br-ex parent is enp2s0 (got 'enp2s0')
  [ok]   vr1-dc0-storage-03 enp2s0 holds no L3 link (got 0) -- it is an OVS member
  [ok]   vr1-dc0-storage-03 enp3s0 STATIC 10.12.12.152 on metal-internal (got 'static:10.12.12.152')
  [ok]   vr1-dc0-storage-03 enp3s0 on the metal-internal VLAN (got '5004' want '5004')
  [ok]   vr1-dc0-storage-03 enp4s0 STATIC 10.12.16.152 on data-tenant (got 'static:10.12.16.152')
  [ok]   vr1-dc0-storage-03 enp4s0 on the data-tenant VLAN (got '5005' want '5005')
  [ok]   vr1-dc0-storage-03 enp5s0 STATIC 10.12.32.152 on storage (got 'static:10.12.32.152')
  [ok]   vr1-dc0-storage-03 enp5s0 on the storage VLAN (got '5006' want '5006')
  [ok]   vr1-dc0-storage-03 enp6s0 STATIC 10.12.36.152 on replication (got 'static:10.12.36.152')
  [ok]   vr1-dc0-storage-03 enp6s0 on the replication VLAN (got '5007' want '5007')

=== vr1-dc0-storage-04 -> 6q4syf/civil-bug (octet 153, 6 plane(s), status Ready) ===
  [ok]   vr1-dc0-storage-04 enp1s0 STATIC 10.12.8.153 on metal-admin (got 'static:10.12.8.153')
  [ok]   vr1-dc0-storage-04 enp1s0 on the metal-admin VLAN (got '5001' want '5001')
  [ok]   vr1-dc0-storage-04 br-ex STATIC 10.12.4.153 on provider-public (got 'static:10.12.4.153')
  [ok]   vr1-dc0-storage-04 br-ex is a bridge (got 'bridge')
  [ok]   vr1-dc0-storage-04 br-ex parent is enp2s0 (got 'enp2s0')
  [ok]   vr1-dc0-storage-04 enp2s0 holds no L3 link (got 0) -- it is an OVS member
  [ok]   vr1-dc0-storage-04 enp3s0 STATIC 10.12.12.153 on metal-internal (got 'static:10.12.12.153')
  [ok]   vr1-dc0-storage-04 enp3s0 on the metal-internal VLAN (got '5004' want '5004')
  [ok]   vr1-dc0-storage-04 enp4s0 STATIC 10.12.16.153 on data-tenant (got 'static:10.12.16.153')
  [ok]   vr1-dc0-storage-04 enp4s0 on the data-tenant VLAN (got '5005' want '5005')
  [ok]   vr1-dc0-storage-04 enp5s0 STATIC 10.12.32.153 on storage (got 'static:10.12.32.153')
  [ok]   vr1-dc0-storage-04 enp5s0 on the storage VLAN (got '5006' want '5006')
  [ok]   vr1-dc0-storage-04 enp6s0 STATIC 10.12.36.153 on replication (got 'static:10.12.36.153')
  [ok]   vr1-dc0-storage-04 enp6s0 on the replication VLAN (got '5007' want '5007')

=== vr1-dc0-juju-01 -> arfr7p/subtle-grouse (octet 5, 2 plane(s), status Ready) ===
  [ok]   vr1-dc0-juju-01 enp1s0 STATIC 10.12.8.5 on metal-admin (got 'static:10.12.8.5')
  [ok]   vr1-dc0-juju-01 enp1s0 on the metal-admin VLAN (got '5001' want '5001')
  [ok]   vr1-dc0-juju-01 enp2s0 STATIC 10.12.4.5 on provider-public (got 'static:10.12.4.5')
  [ok]   vr1-dc0-juju-01 enp2s0 on the provider-public VLAN (got '5002' want '5002')
  [ok]   vr1-dc0-juju-01 enp3s0..enp6s0 carry NO plane link (0 found) -- deliberately left on auto VLANs
  [ok]   vr1-dc0-juju-01 has NO br-ex (got id '') -- the controller takes the provider leg RAW

NOTE: this gate proves the MAAS MODEL. The node's actual routing table is a
      FIRST-BOOT observation (G17) -- a green carve is not a proven default route.
RESULT: pass=134 fail=0
PASS: dc-node-carve check vr1-dc0

==============================================================================
DIFF AGAINST THE PRE-MIGRATION CAPTURE (docs/audit/dc0-maas-carve-premigration-20260730.txt)
Keyed by LEG SET, since system_id and hostname are both re-minted across regions.
==============================================================================

--- OLD (Office1, pre-migration) ---
ace-robin	br-ex=- enp1s0=- enp2s0=- enp3s0=- enp4s0=- enp5s0=- enp6s0=-
alert-cub	br-ex=- enp1s0=- enp2s0=- enp3s0=- enp4s0=- enp5s0=- enp6s0=-
first-oryx	br-ex=- enp1s0=- enp2s0=- enp3s0=- enp4s0=- enp5s0=- enp6s0=-
keen-dove	br-ex=- enp1s0=- enp2s0=- enp3s0=- enp4s0=- enp5s0=- enp6s0=-
moral-salmon	br-ex=- enp1s0=- enp2s0=- enp3s0=- enp4s0=- enp5s0=- enp6s0=-
moved-troll	enp1s0=- enp2s0=- enp3s0=- enp4s0=- enp5s0=- enp6s0=-
real-filly	br-ex=- enp1s0=- enp2s0=- enp3s0=- enp4s0=- enp5s0=- enp6s0=-
superb-piglet	br-ex=- enp1s0=- enp2s0=- enp3s0=- enp4s0=- enp5s0=- enp6s0=-
wired-thrush	br-ex=- enp1s0=- enp2s0=- enp3s0=- enp4s0=- enp5s0=- enp6s0=-
wise-stud	br-ex=- enp1s0=- enp2s0=- enp3s0=- enp4s0=- enp5s0=- enp6s0=-

--- NEW (per-DC region, live after this carve) ---
able-puma	br-ex=10.12.4.121 enp1s0=10.12.8.121 enp2s0=- enp3s0=10.12.12.121 enp4s0=10.12.16.121 enp5s0=10.12.32.121 enp6s0=10.12.36.121
amused-corgi	br-ex=10.12.4.150 enp1s0=10.12.8.150 enp2s0=- enp3s0=10.12.12.150 enp4s0=10.12.16.150 enp5s0=10.12.32.150 enp6s0=10.12.36.150
civil-bug	br-ex=10.12.4.153 enp1s0=10.12.8.153 enp2s0=- enp3s0=10.12.12.153 enp4s0=10.12.16.153 enp5s0=10.12.32.153 enp6s0=10.12.36.153
gentle-raven	br-ex=10.12.4.101 enp1s0=10.12.8.101 enp2s0=- enp3s0=10.12.12.101 enp4s0=10.12.16.101 enp5s0=10.12.32.101 enp6s0=10.12.36.101
known-alpaca	br-ex=10.12.4.151 enp1s0=10.12.8.151 enp2s0=- enp3s0=10.12.12.151 enp4s0=10.12.16.151 enp5s0=10.12.32.151 enp6s0=10.12.36.151
loyal-oyster	br-ex=10.12.4.152 enp1s0=10.12.8.152 enp2s0=- enp3s0=10.12.12.152 enp4s0=10.12.16.152 enp5s0=10.12.32.152 enp6s0=10.12.36.152
mint-roughy	br-ex=10.12.4.100 enp1s0=10.12.8.100 enp2s0=- enp3s0=10.12.12.100 enp4s0=10.12.16.100 enp5s0=10.12.32.100 enp6s0=10.12.36.100
pure-condor	br-ex=10.12.4.120 enp1s0=10.12.8.120 enp2s0=- enp3s0=10.12.12.120 enp4s0=10.12.16.120 enp5s0=10.12.32.120 enp6s0=10.12.36.120
square-insect	br-ex=10.12.4.102 enp1s0=10.12.8.102 enp2s0=- enp3s0=10.12.12.102 enp4s0=10.12.16.102 enp5s0=10.12.32.102 enp6s0=10.12.36.102
subtle-grouse	enp1s0=10.12.8.5 enp2s0=10.12.4.5 enp3s0=- enp4s0=- enp5s0=- enp6s0=-

RESULT: diff of the sorted leg sets is EMPTY -- every node's six v4 legs match the
pre-migration carve address for address. NOTE the hostnames DIFFER on every row
(re-minted at re-enlistment); the leg set is what was compared, not the name.
