#243: opt-in live expansion of group receivers for the peer recipient picker (v0.6.55) #291
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/recip243"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Implements the ratified #234 decision D contract, triggered by the dogfood finding that
nikola-test(in bao's group-based receive allow-list) never appears in the sender's picker on enc.ListRecipients= explicit users ∩ delivery gate; group-only lists stay free-text.settings.peeringExpandGroups(default false, state-backend, live-read — no restart) + a group→members source ⇒Service.recipientListexpands eachRegistry.ReceiverGroups(peer)entry live, unions with explicit users, dedupes, and passes every candidate throughRecipients.Exists— the exact allow-listed-AND-resident delivery gate — so the picker never suggests a refused name.Manager.GroupMembersvia the Keycloak read client (findGroup+/groups/{id}/members,view-users/query-groups— deliberately notManager.Users). Nil resolver (app-owned/openbao/LDAP for now — follow-up noted on the issue) ⇒ silent degrade. Never materialized (#123/#125).peer-recipient-listdetail gainsexpandedwhen expansion ran.recipientListunit-tested via the existing in-package harness — default off, opt-in expansion (non-resident gated, duplicates deduped), no-resolver and opt-in-off degrades.