# Pass 5 (W3) -- IPv6-unlock posture reconciliation, classification matrix, Roosevelt-delta

**Author:** W3 worker, follow-on to the container-elim pass (D-144, RULED 2026-08-10).
**Scope:** posture reconciliation against the standing IPv6 rulings, the CLASSIFICATION
MATRIX across every family-bearing surface touched or adjacent to the collapse, the
Roosevelt-delta, and the honest (a)-genuine-unlocks-vs-(b)-independent-work framing.
READ-ONLY; nothing built, nothing executed, no D-number minted or amended here (GA-R5 --
findings are LOGGED, never ruled).

**Inputs read in full this session:** `docs/audit/container-elim-pass/FINAL-PLAN.md`;
`docs/design-decisions.md` D-101 (`:2243-2412`), D-124 + its four amendments
(`:4978-5170`), D-134 + all amendments incl. the 2026-08-10 `.8` client-VM one
(`:5885-6250`), D-138 (`:7091-7159`), D-139 both rulings (`:7280-7409`), D-141
(`:8003-8055`), D-143 (`:8110-8208`), D-144 including its DEC package
(`:8210-8330`); `docs/audit/container-elim-pass/pass5-w1-mgmt-v6.md` (full) and
`docs/audit/container-elim-pass/pass5-w2-metal-data-v6.md` (full) -- both landed
mid-session; their precise, line-cited rows are IMPORTED into this matrix rather than
re-derived, per the tasking's "pull from W1/W2 once written" instruction. Every row
below sourced from W1/W2/FINAL-PLAN/design-decisions.md is cited to its origin; none
are re-derived independently unless marked `[W3]`.

---

## 1. Posture reconciliation -- the standing rule, and where each surface class sits against it

**The standing principle (D-101, operator verbatim, `:2274-2280`): "We are building as
close to full IPv6 as possible on every layer possible... using IPv4 where necessary
only because it is necessary."** Restated as the rule (`:2282`): **IPv6 unless IPv4 is
NECESSARY.** Every v4 leg is a **justified exception**, never a neutral default choice
(`:2282-2290`). D-139 Ruling A (`:7280-7338`, RULED 2026-07-31) is D-101's own
APPLICATION, not a revision: it names, per plane, exactly what forces v4 --
`metal-admin` (PXE, the MAAS region API dial, the node-DNS forwarder, the v4-only
D-134 utility band, a rack with no global v6) and `provider-public` (tenant FIPs
against a still-v4 internet, external API VIPs, the edge default route) stay
**dual-stack**; the other five planes (`metal-internal`, `data-tenant`, `storage`,
`replication`, `lb-mgmt`) are **IPv6-only**. D-141 (`:8003-8055`) narrows the posture
ONE further notch for a specific, named case: container-hosted API-charm VIPs are
**dual-stack-AUTHORED but v4-`active`/v6-`reserved`**, gated on juju LP #1723240 +
per-charm fixes -- **this is not a cloud-wide v4 lean, it is the one place D-101's
default is provably blocked today** (memory pointer confirmed against the primary
source this session).

**Reconciliation test applied to every surface below:** does a proposed v6 change
(a) apply an ALREADY-ruled family (mechanical, no new decision), (b) touch a
NAMED v4-necessity (D-141's LP #1723240 case; PXE), or (c) fall into a gap no ruling
has adjudicated? Class (c) is the one this pass must not silently resolve -- GA-R5
forbids picking for the operator, so gaps are logged as candidate DEC material, not
flipped.

**Ruled-vs-built distinction, imported from W2 (important -- do not conflate the
two):** for the four now-IPv6-only planes, the v4 subnets are ruled REMOVED but
**still live in MAAS today** -- D-139's own execution list states plainly "none of
it is done" (`design-decisions.md:7437`), and v4 is removed LAST, "after each is
proven" (`:7443`, per pass5-w2-metal-data-v6.md Section 2). A row marked ALREADY-v6
below means the FAMILY RULING is settled, not that the v4 side is already gone from
the build.

**D-143 axis discipline (`:8153-8158`, `:8321-8323`):** the re-IP is explicitly
**"a v4-only re-IP"** -- "The IPv6 family matrix, the 'IPv6 wherever possible'
principle... and the dual-stack ruling are UNTOUCHED." No v6 literal changes value
because of D-143; only v4 second/third octets shift 12->13 (D-134's octet-preserving
map, `:8169-8173`). Every row below that touches a v6 family is therefore `[D-139-
independent]` with respect to the `[D-143]` axis, on top of whatever it is with
respect to `[CE]`.

---

## 2. The classification matrix

**Classes used** (the tasking specified four -- ALREADY-v6, FLIP-TO-v6-NOW-POSSIBLE,
DUAL-STACK-REQUIRED, FORCED-v4 -- this pass's evidence required five more to avoid
mis-stating an unruled or in-flight surface as one of the four):

| Class | Meaning |
|---|---|
| **ALREADY-v6** | Family ruled and, where checkable, already the standing state; applying it to a new object (e.g. the client VM) is mechanical, not a new decision. May still have v4 physically present in the live build (see ruled-vs-built note above). |
| **DUAL-STACK-REQUIRED** | Ruled dual-stack; both families are load-bearing by explicit ruling, not a default. |
| **FLIP-TO-v6-NOW-POSSIBLE** | The collapse structurally removes the v4 force; v6 becomes technically reachable, but the concrete mechanism/measurement is still OWED. |
| **v6-CAPABLE-BY-DESIGN (new, collapse-created)** | A NEW control/surface the collapse itself creates, built on a family-agnostic mechanism (verified by precedent), so it costs nothing extra for v6 day one. |
| **FORCED-v4** | A cited, ruled necessity for the specific sub-function. Distinguish the RULING ("v4-first") from an unmeasured universal capability claim -- see row 15. |
| **UNRULED-GAP** | No D-number adjudicates the family; v4 today by convention/history, not by ruling. Logged, not flipped. |
| **DUAL-AUTHORED-STATUS-GATED** | D-141's specific pattern: v4 `active`, v6 `reserved`, promotion gated on a named capability. |
| **CONDITIONAL/OPEN** | Resolution depends on a separate, not-yet-ruled fork (here, DEC-08); no family answer is assertable until the fork resolves. |
| **RETIRED / N/A** | The surface is eliminated by D-144 outright; no family question survives it. |

| # | Surface | Class | Reason / governing D | Collapse-relation |
|---|---|---|---|---|
| 1 | MAAS node power-dial reach path (`vr1-dcN-maas-01` -> vcloud libvirtd) | **FLIP-TO-v6-NOW-POSSIBLE** | Flattening removes the old force (dialing a plane-bridge-bound libvirt address); the new target is vcloud's own sshd over a family-agnostic transport, from a source (`metal-admin`) that already has v6. Concrete reachable address is UNVERIFIED, live-gated on DEC-15. [pass5-w1 row 1, `docs/design-decisions.md:8299-8304`] | **(a) genuine unlock** -- did not exist as a question under Model B |
| 2 | D-124 region<->rack transit overlay (`172.31.0.0/24`) | **UNRULED-GAP** | No D-number rules this leg's family. `mesh-link` (L2) and SSH (transport) both already support v6; a candidate v6 slot exists in the apex (`f00::/40` "Infrastructure / site-to-site links", D-115 `:3751-3753`) but nothing has carved it. This is a PRE-EXISTING gap (predates D-144), not created by the collapse. [pass5-w1 row 2] | **(b) independent** -- collapse only re-homes the leg's endpoint, does not touch family |
| 3 | Client-VM `metal-admin` leg (`.8`, D-134 2026-08-10 amendment) | **ALREADY-v6** | `metal-admin` is D-139 Ruling-A dual-stack for every host on the plane; the client VM inherits it mechanically the moment it is placed there. No new v6 decision -- applying an existing rule to a new object. [pass5-w1 row 3; `docs/design-decisions.md:6240-6248`] | **(b) independent of collapse's v6 credit** -- the collapse creates the OBJECT, not the rule |
| 4 | Client-VM transit leg (same `172.31.0.x/30` scheme) | **UNRULED-GAP** | Same open question as row 2; the D-144 ledger's "D-124 AMENDS -- Scheme-A addressing survives" (`:8279-8280`) preserves the ADDRESSING, not a family decision. Do not conflate with row 1 (MAAS's power-dial does not route through the client VM). [pass5-w1 row 4] | **(b) independent**, re-homed not re-familied |
| 5 | (a) cross-DC host isolation control (OWED, DEC-14) | **v6-CAPABLE-BY-DESIGN** | Modeled on SEC-010's live `table inet sec010` artifact (`scripts/site-headend-install.sh:299`) -- nftables' `inet` family matches v4 AND v6 in one ruleset, scoped by interface not IP literal. Costs nothing extra for v6 day one. [pass5-w1 row 5] | **(a) genuine unlock** -- the control itself is NEW, created only because co-residency is new |
| 6 | SEC-010 transit-drop successor (endpoints: client VM + voffice1, DEC-16) | **v6-CAPABLE-BY-DESIGN** | Same `table inet` precedent as row 5; the planned extraction carries the shape forward. Covers a v6 transit leg IF/WHEN row 2/4 is ever ruled onto v6. [pass5-w1 row 6] | **(a) genuine unlock** in mechanism; **(b)** the traffic it protects (row 2/4) is still v4 pending its own ruling |
| 7 | MAAS region<->rack control path (retirement pending DEC-08) | **CONDITIONAL/OPEN** | Moot if DEC-08 ratifies rack-controller retirement (pass2's own recommendation); if rejected, whether MAAS 3.7's rack<->region RPC supports v6 is UNVERIFIED -- no repo or vendor citation found either way. [pass5-w1 row 7] | **(b) independent** of the collapse itself (D-132 already put region+rack co-located per DC) |
| 8 | `provider-public` plane | **DUAL-STACK-REQUIRED** | D-139 Ruling A: FIPs against a still-v4 internet, external API VIPs, Octavia tenant LB VIPs, edge default route. [pass5-w2 Section 2; `docs/design-decisions.md:7310-7311,7326`] | **(b) independent** -- D-139-ruled 2026-07-31, predates D-144 |
| 9 | `metal-admin` plane (base plane) | **DUAL-STACK-REQUIRED**, with an embedded **FORCED-v4** sub-function | Dual by ruling (D-139 `:7327`), but the PXE/DHCP sub-function inside it is v4-only **by design**, not merely v4-heavy: MAAS's own v6-static-only node-acquisition ruling (D-134 2026-07-27 amendment, `:6138-6144`) leaves `dhcpd6` deliberately OFF, and the rack itself measures zero global v6 (`ip -6 -o addr show scope global` empty, per pass5-w2 Section 1). **PXE-over-v6 platform CAPABILITY is UNVERIFIED** -- no test/capture/vendor citation on disk states whether MAAS 3.7 even supports v6-only commissioning; do not import outside knowledge. [pass5-w2 Section 1, full] | **(b) independent** |
| 10 | `metal-internal` plane | **ALREADY-v6** (ruled IPv6-only) | D-139 Ruling A explicitly **SUPERSEDES** D-101's "datastore east-west v4-bound" clause (`:7334-7336`) -- "nothing forces v4 here... a JUDGEMENT, not a protocol requirement" reversed. **Build status: v4 still live, removed LAST after proof** (pass5-w2 Section 2). A reader citing D-101's stale text alone would mis-state this plane's CURRENT family -- cite D-139. | **(b) independent** -- ruled 2026-07-31 |
| 11 | `data-tenant` plane (geneve overlay) | **ALREADY-v6** (ruled IPv6-only) | D-139 Ruling A. The 2026-08-09 geneve-over-v6 rebuild fix is recorded at `docs/audit/geneve-over-v6-rootcause-20260808.md` (confirmed present on disk) and is **orthogonal to D-144** per pass5-w2 Section 5b's explicit statement -- it fixes HOW v6 geneve works (a bracketed `ovn-encap-ip` OVS rejection), not WHETHER the plane is v6; do not credit the collapse for this. | **(b) independent, and independent of D-139 too** (a build-mechanics fix, not a family ruling) |
| 12 | `storage` plane (Ceph public) | **ALREADY-v6** (ruled IPv6-only) | D-139 Ruling A. Build status: v4 still live, removed last. `ceph-mon`/`ceph-osd` are in `PREFER_IPV6_CHARMS` (`:7432`) -- converting this plane REOPENS the 2026-07-31 "prefer-ipv6 false on all seven" ruling note per-app, not yet re-ruled (pass5-w2 Section 6 risk note). | **(b) independent** |
| 13 | `replication` plane (Ceph cluster incl. cross-DC leg) | **ALREADY-v6** (family settled) but **carrier path OPEN (DEC-24)** | D-139 Ruling A settles the FAMILY. Two open items compound on the SAME carrier: (i) the cross-DC leg has **no v6 route at all today** (D-139's own build-constraints bullet, `:7431`, pre-existing and OPEN); (ii) D-144's DEC-24 (`:8312-8317`) leaves the post-flatten `virbr5`/netem attachment for that same leg UNDEFINED. pass5-w2 Section 6 names this explicitly: **"the one point where the W2 family ruling and the D-144 collapse genuinely intersect -- an unresolved carrier for an unresolved route."** | **Mixed: (b) family independent; (a) the carrier-attachment QUESTION is collapse-raised** (DEC-24 exists because of the flatten) |
| 14 | `lb-mgmt` plane (Octavia) | **ALREADY-v6**, but **two distinct objects, do not conflate (G18 warning)** | (1) the octavia charm's own live/consumed **ULA `fc00::/64`** (R8-ruled); (2) D-139's apex **GUA `f0X:80::/64`** carved as a MAAS-underlay plane with NO charm consumer, kept `reserved` per the G18 ruling (option b). Pointing octavia at object (2) would reopen R8. [pass5-w2 Sections 2 and 4] | **(b) independent** -- G18/D-141 governed, pre-dates D-144 |
| 15 | MAAS PXE / node provisioning (sub-function of row 9) | **FORCED-v4** | D-101 (`:2307-2308`) and D-139 Ruling A both **rule** "PXE is v4-first" -- but this is a ruling, not a measured platform-capability ceiling. **Do not assert PXE-over-v6 is impossible**: no test, capture, or MAAS-source citation on disk measures whether MAAS 3.7 could commission v6-only (pass5-w2 Section 1, the "anchor question", explicit UNVERIFIED verdict). What IS settled: the ruling is unscoped to VR1 specifically and nothing in D-101/D-139 limits the v4-first posture to this deployment. | **(b) independent** -- and see Roosevelt-delta below |
| 16 | LXD-container / API-charm VIPs (juju LP #1723240) | **DUAL-AUTHORED-STATUS-GATED** | D-141: v4 `active`, v6 `reserved`, promotion gated on the two-layer capability set (LP #1723240 + per-charm fixes, `docs/charm-ip-family-compatibility.md`). Carried risk (pass5-w2 Section 5a): on `metal-admin` (dual-stack), container addresses land on ONE family by unsorted mongo order (today v4) -- a detection gate ("every container's metal-admin leg is IPv4") is OWED, not built. **DISAMBIGUATION (do not overstate D-144's reach):** "container-elim" in this pass's title means the `vvr1-dcN` **containment VM** (D-122/D-123 Model B) -- it has nothing to do with juju's LXD-container control-plane units on the node VMs. D-144 eliminating the containment VM does **not** touch, unblock, or moot LP #1723240 in any way (pass5-w2 Section 5a: "D-144's relationship to this gap: NONE"). | **(b) fully independent** -- different container concept entirely |
| 17 | Uplink/ISP NAT (`172.30.x/24`, `modules/site-wan`) | **FORCED-v4**, single-stack by construction | `opentofu/modules/site-wan/main.tf` takes ONE `var.cidr`, one `forward.mode="nat"`, one `ips` entry -- no v6 CIDR variable exists in the module at all (pass5-w2 Section 3). D-101's own rationale defers external v6 deliberately: NAT64/DNS64 was considered and REJECTED as a v6-egress simulant (`:2295-2299`); VR1's v4-only edge is a rehearsal simplification, not a capability gap. **D-144 persists this UNCHANGED in family** -- "edge WAN attaches directly to the per-DC `site-wan` NAT" (`:8256-8257`); only the WAN-bridge INDIRECTION (row 19, D-125's plumbing) is removed, not the NAT module or its family. | **(b) independent** -- do not conflate with row 19's retirement |
| 18 | `qemu+ssh` provider dial (voffice1 -> `vvr1-dcN`, D-126 per-env keys) | **RETIRED / N/A** | D-144: "the qemu+ssh provider dial + its D-126 per-env keys (no successor)" (`:8254-8255`). The surface is DELETED, not flipped -- there is no family question left to classify. | **(a) genuine removal** (not a v6 unlock, a surface elimination) |
| 19 | D-125 bridge-in `modules/wan-bridge` (WAN indirection only, NOT the uplink NAT) | **RETIRED / N/A** | D-125 header: "TERMINATED 2026-08-10 by D-144" (`:5091-5094`); the DC edge WAN attaches directly to row 17's `site-wan` NAT instead of bridging through the (now-eliminated) containment VM. Retiring the bridge module removes an indirection layer, not a family -- row 17's v4-only NAT survives this row's retirement unchanged. | **(a) genuine removal** |

**Matrix shape (19 rows):** ALREADY-v6 = 6 (rows 3, 10, 11, 12, 13-family-half, 14);
DUAL-STACK-REQUIRED = 2 (rows 8, 9); FLIP-TO-v6-NOW-POSSIBLE = 1 (row 1);
v6-CAPABLE-BY-DESIGN(new) = 2 (rows 5, 6); FORCED-v4 = 2 (rows 15, 17);
UNRULED-GAP = 2 (rows 2, 4); DUAL-AUTHORED-STATUS-GATED = 1 (row 16);
CONDITIONAL/OPEN = 1 (row 7); RETIRED/N/A = 2 (rows 18, 19).
**6+2+1+2+2+2+1+1+2 = 19.** (Row 13 counted once, under ALREADY-v6, with its
carrier-open half called out in the reason column and Section 4 below -- not
double-counted.)

**The honest headline: only ONE row (row 1) is a clean, single "the collapse newly
makes this v6-possible" unlock, and even it is UNVERIFIED pending DEC-15.** Rows 5/6
are collapse-created SURFACES that happen to be v6-capable by construction, not
existing v4 surfaces flipped to v6. An empty-or-near-empty FLIP-TO-v6-NOW-POSSIBLE
class is itself the finding, not a gap in this pass's search.

---

## 3. Roosevelt-delta -- bare metal has no virtualization substrate

Judged surface-by-surface against the operator's "module deployment project" lens
(FINAL-PLAN Section 3, `:135-142`, imported rather than re-derived):

**Transfers verbatim (v4-forced on bare metal too -- not a virtualization artifact):**
- **Row 15, PXE ruling.** The v4-first RULING is unscoped to VR1 and nothing in
  D-101/D-139 limits it to this deployment, so it transfers as a posture. **What does
  NOT transfer as a settled fact is a capability claim** -- whether Roosevelt's actual
  firmware/MAAS stack could do v6-only PXE/HTTP-boot is genuinely unmeasured here (per
  row 15/pass5-w2's explicit UNVERIFIED verdict); this pass does not assert PXE is
  protocol-impossible over v6 in general, only that this repo has built and ruled a
  v4-first path and never tested an alternative to compare against.
- **Row 16, LP #1723240.** This is a **juju-layer defect** (`state/linklayerdevices.go`,
  `EthernetDeviceForBridge` taking `addrs[0]` from an unsorted query, per D-139's "What
  forced this" section `:7401-7409`) -- substrate-independent. Bare metal runs the
  same juju version against the same bug; it transfers UNCHANGED. This is the
  non-obvious one: an operator could assume flattening the substrate also flattens
  this defect away. It does not -- juju, not the hypervisor, is the constraint.

**Does NOT transfer (virtual-only artifacts, no bare-metal analog in the same shape):**
- **Rows 18/19, `qemu+ssh` dial + D-125 bridge-in module.** Both exist ONLY because of
  nested libvirt (Model B); Roosevelt has no containment layer to dial into or bridge
  WAN through, so neither the surface nor its retirement has a bare-metal counterpart.
- **Rows 5/6, the (a) control + SEC-010 successor.** FINAL-PLAN Section 3 (`:139-142`)
  flags these explicitly as "artifacts of vcloud's single-hypervisor co-residency with
  no bare-metal analog in the same shape" -- a Roosevelt DC has its own physical NICs
  and switches, not a shared kernel with another DC's plane bridges.
- **Row 1's power-key mitigation (DEC-15).** Same reasoning: the blast-radius problem
  it mitigates is specifically "one vcloud libvirtd controls everything"; bare metal's
  power control is BMC/IPMI per physical host, already isolated by hardware.
- **Row 17's simulated-ISP v4 NAT.** D-101 consequence 3 (`:2294-2301`): "Roosevelt has
  FULL v4 AND v6 EDGE TRANSPORT... External IPv6 routing is deliberately NOT added this
  deployment; it arrives with the next full deployment." VR1's v4-only simulated-ISP
  hop is a REHEARSAL SIMPLIFICATION, not a Roosevelt requirement -- it does not
  transfer.
- **Row 2/4's D-124 transit `/30`s.** The transit-numbered-mesh SCHEME (region<->rack
  P2P addressing) is a virtualization-era answer to "how does an off-site controller
  reach an isolated rack"; whether it has a Roosevelt analog depends on Roosevelt's own
  physical topology, which is out of this pass's scope to assert.

**Mesh triangle / netem (row 13's carrier, `virbr5` + siblings):** FINAL-PLAN's own L0
judgment (`:135-136`) already rules these "virtualization shims" that do NOT transfer;
DEC-24's open carrier-attachment question is a VR1-internal problem with no Roosevelt
equivalent to inherit an answer from.

---

## 4. (a) genuine unlocks vs (b) independent work -- the key honest framing

**(a) Genuine unlocks the collapse creates** (would not exist, or would not be
answerable this way, under Model B):
1. Row 1 -- the MAAS power-dial reach path becomes structurally v6-answerable (still
   unverified live).
2. Rows 5/6 -- two BRAND NEW controls (the (a) isolation control, the SEC-010
   successor) that exist only because flattening creates co-residency; both happen to
   be v6-capable by construction at zero extra cost.
3. Row 13's carrier-ATTACHMENT question (DEC-24) -- raised specifically because the
   flatten reassigns every other cross-DC/cross-site leg and left this one undefined;
   its FAMILY (already-v6) was settled by D-139 well before D-144 existed.
4. Rows 18/19 -- outright REMOVAL of two v4-only virtualization artifacts (not v6 work,
   but real simplification the collapse buys).

**(b) v6 work that is INDEPENDENT of the collapse and must not be credited to it:**
1. D-139's entire plane family matrix (rows 8-14) -- ruled 2026-07-31, over a week
   before D-144 (2026-08-10). None of it required, or was blocked by, the containment
   layer's existence.
2. The geneve-over-v6 rebuild fix (row 11) -- a build-mechanics defect (bracketed
   `ovn-encap-ip`) fixed independently of any topology change; the plane was already
   ruled v6-only under Model B. pass5-w2 Section 5b states its D-144 relationship as
   explicitly "NONE".
3. D-141's LXD-container dual-stack-authored/status-gated pattern (row 16) -- gated on
   a juju upstream defect that the collapse cannot touch, per the Roosevelt-delta
   section above and pass5-w2 Section 5a's explicit "NONE" verdict. **This is the
   pattern the tasking's "do not overstate" caveat targets directly: D-144 flattens
   the containment VM, full stop; it does not, and cannot, unblock LP #1723240.**
4. Row 3 (client-VM metal-admin leg) -- v6 arrives via a standing D-139 rule applied to
   a new object, not via a new decision the collapse forced.
5. Row 15 (PXE forced-v4) -- unaffected by topology; still forced under the flat shape
   exactly as it was under Model B.
6. Row 17 (uplink NAT) -- persists in family completely unchanged through D-144; only
   an indirection layer (row 19) is removed around it.

**No v6 flip identified in this matrix conflicts with a standing ruling.** The two
UNRULED-GAP rows (2, 4 -- the D-124 transit family) are pre-existing gaps this pass
surfaces, not proposed flips; per GA-R5 they are logged as **candidate DEC material**
(a future DEC-14/DEC-16 ruling session should decide whether to close them, since both
touch the same leg those DECs already govern) and are explicitly NOT resolved here.

---

## 5. Open items carried forward (not ruled, not built)

- **The D-124 transit-overlay family gap (rows 2, 4)** has no owning DEC row today.
  Flag it when DEC-14/DEC-16 are ruled (pass5-w1's own top risk #2) so it is not
  rediscovered from scratch.
- **DEC-24's carrier-attachment question (row 13)** is already an OWED open item in
  D-144's body (`:8312-8317`); pass5-w2 independently names it the single point where
  its plane-family work and the D-144 collapse genuinely intersect (Section 6).
- **Row 7's MAAS-3.7 v6 RPC capability** is UNVERIFIED either way in the repo; do not
  assert it in either direction until DEC-08 resolves (retirement likely moots it).
- **Row 9/15's PXE-over-v6 platform capability** is UNVERIFIED (pass5-w2's own explicit
  verdict) -- carried forward as a standing caveat, not something this pass or a future
  one should assert either way without a measured test.
- **pass5-w1 and pass5-w2 both landed during this session** and are fully reconciled
  into the matrix above (rows 1-7 from W1, rows 8-17 informed by W2, row-for-row, no
  contradiction found between W2's findings and this pass's earlier draft rows -- the
  earlier draft's PXE framing (row 15) and its D-125/uplink-NAT conflation (rows 17/19)
  were corrected against W2's more precise citations before this version was written).

---

## Verification note

Direct reads this session: `docs/audit/container-elim-pass/FINAL-PLAN.md` (full),
`docs/audit/container-elim-pass/pass5-w1-mgmt-v6.md` (full, rows 1-7 imported
verbatim with original citations preserved), `docs/audit/container-elim-pass/
pass5-w2-metal-data-v6.md` (full, rows 8-17 informed by its precise findings),
`docs/design-decisions.md` D-101 (`:2243-2412`, incl. the 2026-07-27 ruling-note
correction), D-124 + amendments (`:4978-5170`, incl. the full D-125 bridge-in text),
D-134 + all amendments incl. 2026-08-10 (`:5885-6250`), D-138 (`:7091-7159`), D-139
both rulings (`:7280-7409`), D-141 (`:8003-8055`), D-143 (`:8110-8208`), D-144 incl.
DEC package (`:8210-8330`); `docs/tool-index.md` (header + teardown table);
`ls scripts/ | grep geneve` confirmed `geneve-encap-assert.sh` and
`dc-dc-mtu-geneve-budget.sh` exist on disk; `ls docs/audit/ | grep geneve` confirmed
`geneve-over-v6-rootcause-20260808.md` exists on disk (cited by path, not memory);
`ls docs/audit/container-elim-pass/ | grep pass5` re-checked twice this session --
`pass5-w1-mgmt-v6.md` and `pass5-w2-metal-data-v6.md` both present at write time,
fully reconciled into this document (Section 5). READ-ONLY throughout; no mutation;
nothing executed against the cloud; no D-number ruled, amended, or proposed as a
ruling by this pass (findings only, GA-R5).
