From 206e6074407ebe47cebd69220a5d615afc98b4a3 Mon Sep 17 00:00:00 2001 From: Wes Date: Fri, 21 Aug 2026 09:58:42 -0600 Subject: [PATCH] Disambiguate selected people by pubkey Always expose the canonical pubkey for access-picker search results and include the full key in each Add action accessible name. Verify keyboard selection persists only the chosen identity. Co-authored-by: Carl <32a2e2c9d428ee08902cab75d956da2c1d235a22d4766b0dd4138bf6e2e5db1d@buzz.block.builderlab.xyz> Signed-off-by: Wes --- .../src/features/agents/ui/RespondToField.tsx | 39 ++++++++++----- .../tests/e2e/agent-access-warning.spec.ts | 50 +++++++++++++++++-- 2 files changed, 73 insertions(+), 16 deletions(-) diff --git a/desktop/src/features/agents/ui/RespondToField.tsx b/desktop/src/features/agents/ui/RespondToField.tsx index 9d07f8ca49..715f082d22 100644 --- a/desktop/src/features/agents/ui/RespondToField.tsx +++ b/desktop/src/features/agents/ui/RespondToField.tsx @@ -70,10 +70,13 @@ function formatSearchUserName(user: UserSearchResult) { function formatSearchUserSecondary(user: UserSearchResult) { const displayName = user.displayName?.trim(); const nip05Handle = user.nip05Handle?.trim(); - if (displayName && nip05Handle) { - return nip05Handle; - } - return truncatePubkey(user.pubkey); + return displayName && nip05Handle ? nip05Handle : null; +} + +function formatSearchUserAccessibleName(user: UserSearchResult) { + const name = formatSearchUserName(user); + const secondary = formatSearchUserSecondary(user); + return `Add ${name}${secondary ? `, ${secondary}` : ""}, public key ${user.pubkey}`; } const RESPOND_TO_OPTIONS: PersonaDropdownOption[] = [ @@ -443,12 +446,10 @@ function AllowlistPicker({ > {searchResults.length > 0 ? ( searchResults.map((result) => ( - + + )) ) : queryIsHexPubkey ? (