fix: offer each replica's address, not this node's /64, on the primary screen #14

Merged
marcos-mendez merged 3 commits from fix/exact-replica-origins into master 2026-09-30 04:42:51 -03:00
marcos-mendez commented 2026-09-30 04:25:38 -03:00 (Migrated from github.com)

Companion to Keel-Linux/keel#50. Found in the Template B smoke test of 2026-09-30.

The primary screen prefilled 'Allow replication from' with this node's /64. MariaDB matches a grant against the text of the replica's address, and in fd3d:80b2:d0d7::/64 the replica fd3d:80b2:d0d7::2 is not written fd3d:80b2:d0d7:0:.... The grant keel made for that /64 therefore refused it. MariaDB 11.8 has no IPv6 netmask, and keel 0.11.1 refuses a prefix it cannot hold exactly.

  • An empty field is now prefilled with the overlay peers' addresses (wgcli.peer_addresses: every /128 or /32 in a peer's allowed_ips, compressed). With no peer the field stays empty. A value already in the description is kept.
  • The screen text and NO_ORIGIN ask for each replica's address instead of recommending a prefix.
  • docs/Instance.rst and the changelog (2.2.3+keel7) are updated.

Test plan

  • tests first: peer addresses (host routes only), the prefilled form with and without peers, the screen text
  • set -o pipefail; pytest: 546 passed; the measured modules are at 100 percent, lines and branches
  • CI green
Companion to Keel-Linux/keel#50. Found in the Template B smoke test of 2026-09-30. The primary screen prefilled 'Allow replication from' with this node's /64. MariaDB matches a grant against the text of the replica's address, and in `fd3d:80b2:d0d7::/64` the replica `fd3d:80b2:d0d7::2` is not written `fd3d:80b2:d0d7:0:...`. The grant keel made for that /64 therefore refused it. MariaDB 11.8 has no IPv6 netmask, and keel 0.11.1 refuses a prefix it cannot hold exactly. - An empty field is now prefilled with the overlay peers' addresses (`wgcli.peer_addresses`: every /128 or /32 in a peer's `allowed_ips`, compressed). With no peer the field stays empty. A value already in the description is kept. - The screen text and `NO_ORIGIN` ask for each replica's address instead of recommending a prefix. - docs/Instance.rst and the changelog (2.2.3+keel7) are updated. ## Test plan - [x] tests first: peer addresses (host routes only), the prefilled form with and without peers, the screen text - [x] `set -o pipefail; pytest`: 546 passed; the measured modules are at 100 percent, lines and branches - [ ] CI green
Sign in to join this conversation.
No description provided.