Session body (GA-R2, one per session). Branch dc-dc-stage5-preconditions. Stage 5 OPEN. Status lives ONLY in docs/CURRENT-STATE.md. All live reads were read-only (D-138 rack path); the one owed mutation (F9 rack re-stage) is gated on operator approval, NOT executed unattended (operator-away background session).
juju status -m vr1-dc0 captured FROM the dc0 rack (D-138 path ssh vr1-dc0-rack -> juju). Capture: docs/audit/stage5-dc0-juju-status-14of14-20260806.txt.changelog-20260805-d121-ha-scaleup.md:24, NOT reverse-engineered). HONEST SPLIT (GA-R6 E3, not rounded): 12 active/idle; 2 blocked-at-scale=3 on KNOWN non-HA items -- octavia (configure-resources pending) + designate (nameservers must be set). Model-wide 152 active/idle, 7 blocked, 1 unknown (glance-simplestreams-sync, normal). Converted the CURRENT-STATE 14/14 line OPERATOR-ATTESTED -> MEASUREMENT-BACKED (C2).storage "mysql" with NO ha_enabled and exposes NO such config option (HA options are only vip + dns-ha-access-record). Vault's HA here is the charm/VIP model, NOT vault-native active/standby -- all 3 units show active: true; the hacluster VIP constrains live traffic to one. This CONFIRMS D-121 (v-a) as-built; vault-native HA (Raft) stays owned by D-068 (already the (v-b) alternative in D-121). No new decision.git revert 7555479 (record-only; no live-cloud change).~/repo-stage: bundle.yaml (staged 213b51ba) and overlays/vr1-dc0-vips.yaml (staged cf42b937) are STALE vs HEAD (bundle 20ca73a6 pre-F-A / vips 3f403408); dc1 rack has NO ~/repo-stage (dc1 HELD/undeployed). Re-stage matters only at the NEXT dc0 deploy (running cloud already converged). Prepared + gated -- rack write not executed unattended.bundle.yaml:23 HA-chain header said "ACTIVE for 12 charms ... 11 carry the dual-VIP pattern (designate ... no HAProxy VIP)". THREE stale claims after BUNDLEFIX-053 + D-020 amendment + R11, all corrected FROM the measured merged dc0 deploy input: (a) 12 -> 13 hacluster subordinates/:ha relations (vault-hacluster added by BUNDLEFIX-053;
provider-bundle-check reports "13 hacluster subordinate(s)").(b) VIP-carriers: ALL 13 carry a VIP -- **12 the full provider+metal-admin+metal-internal triple,
vault a METAL-ONLY pair** (.61, no provider -- D-020 amendment). Measured from `overlays/vr1-dc0-vips.yaml`.(c) The "designate has no HAProxy VIP" note is RETIRED -- designate gained a full triple VIP
(.62) under R11.Also clarified rabbitmq-server is the 14th HA app but native-clustered (no hacluster/VIP), so not in the 13. COMMENT-ONLY; no deploy semantics change. gauntlet + repo-lint re-run green.
bundle.yaml (via BUNDLEFIX-053) now carries the ENTIRE content of overlays/dc-ha-scaleup.yaml -- num_units:3 + to:[lxd:0,1,2] on all 14 apps, cluster_count:3 on the 12 hacluster subs, vault-hacluster declared (line 1036), rabbitmq min-cluster-size:3 (170), memcached scaled, and the [vault:ha, vault-hacluster:ha] relation (1058). Applying dc-ha-scaleup.yaml on top would be an all-keys no-op deep-merge.juju add-unit, never via this overlay.overlays/dc-ha-scaleup.yaml and its references (runbook Step 2 whole-overlay apply; provider-bundle-check T17 ordering assertion; the R6 2026-07-27 "apply the overlay whole, sequenced after VIPs" ruling). Because R6 is a RULING and D-121 references the overlay, retiring it needs an operator ruling / D-121 amendment, not an unattended edit (hard rule 1). Logged here + already flagged in provider-bundle-check T16 comment.