|
R8a RULED: extend the o-hm0 verifier to compare MTUs (OPS, no D-number)
GA-R5: question and exact utterance quoted, dated, pushed before dependent work. Operator utterance: "Extend the existing o-hm0 verifier to compare MTUs (Recommended)". Recorded as a SUB-RULING on the D-101 MTU ruling note rather than a new decision. OPS under GA-R3 -- it is a script change, doubt resolves DOWN, so no D-number is assigned. It discharges the LP #2018998 obligation that R8 carried forward. MEASURED BEFORE PRESENTING, and it changed the option set. "Pre-emptive configuration" was not actually available: the octavia charm exposes NO MTU option, so nothing can be set in the bundle. The real choice was only how the mismatch gets DISCOVERED. The measurement also found a better option than either I had sketched: scripts/phase-05-octavia-verify.sh:104 ALREADY inspects o-hm0, asserting state != DOWN and the presence of an fc00::/ ULA. So it holds the handle already and an MTU comparison is a natural extension rather than new machinery. Against that, grep -i mtu across cloud-assert.sh, phase-05-octavia-verify.sh and phase-04-network-verify.sh returns NOTHING -- MTU is asserted nowhere in any post-deploy verifier, which is why this class would have surfaced as instability rather than as a failed gate. Rely-on-the-charm was refused: the 2025-12-31 recurrence against octavia 14.0.0 / 2024.1 stable is evidence the update-status self-heal is not reliable, and the symptom -- spurious failovers under load -- reads as a Ceph, network or amphora fault long before anyone suspects MTU. The unconditional ovs-vsctl mtu_request workaround was refused: it fights the charm's own fix where that fix is working, and would MASK a future regression instead of surfacing it. It stays available as the remedy IF the check fires. INCIDENTAL CORROBORATION OF R8, from this repo's own tooling: that o-hm0 verifier is VR0-era and expects an fc00::/ ULA, which independently confirms the octavia charm's default lb-mgmt-subnet is an IPv6 ULA. The as-built already assumed what R8 ruled -- a second, internal line of evidence for a ruling whose external evidence had to be rebuilt from scratch. Delivery when executed: the assertion ships with its harness green, gauntlet ALL GREEN, repo-lint 0-fail and a changelog entry carrying a revert. Revert: git revert this commit; the sub-ruling is additive. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HvCyrwvYTTcDYnRErfMsNf |
|---|
|
|
| docs/CURRENT-STATE.md |
|---|
| docs/design-decisions.md |
|---|