ad587eafa3
broker.uriEnv names an environment variable holding amqp://user:password@host, and it was reaching every member. Its name is not credential-shaped -- no TOKEN, KEY or SECRET in it -- so every name-pattern heuristic missed it, and it sat on neither credential list. fleetd already knows the name: the operator wrote it in broker.uriEnv. So derive the exclusion from the config rather than hoping an operator also remembers to deny it. coordinator.uriEnv has the same shape and is excluded too; on this host both resolve to the same variable. Excluded even when the operator lists the name under memberCredentials.allow:, following the SSH_AUTH_SOCK precedent. There is no override, because a member has no legitimate use for the broker password. Reviewer finding, recorded rather than overstated: this is only a hard guarantee under policy: allow-list, where the ZDOTDIR scrub runs after the pane's shell has sourced the operator's chain. Under deny-list the name is removed from the pre-shell env only, and a login shell re-exports it. That is deny-list's existing weakness rather than a regression here, but the javadoc now says so plainly instead of implying a guarantee that path cannot give. Co-authored-by: fleetd worker <worker@ltms.dev>