diff --git a/amethyst/plans/2026-08-03-auth-permissions-redesign.html b/amethyst/plans/2026-08-03-auth-permissions-redesign.html
index b01533e266..9b6d804089 100644
--- a/amethyst/plans/2026-08-03-auth-permissions-redesign.html
+++ b/amethyst/plans/2026-08-03-auth-permissions-redesign.html
@@ -280,6 +280,10 @@ td.k { font-family: var(--f-code); font-size: 11.5px; color: var(--ink-2); }
.dlg-title { font-size: 1.32rem; line-height: 1.25; font-weight: 500; margin: 0; letter-spacing: -.01em; text-wrap: balance; }
.dlg-title.center { text-align: center; }
.dlg-body { font-size: .875rem; line-height: 1.45; color: var(--on-s-var); margin: 0; }
+.npub {
+ font-family: var(--f-code); font-size: .72rem; letter-spacing: .01em;
+ color: var(--on-s-var); margin-top: -10px;
+}
.dlg-err { font-size: .875rem; line-height: 1.45; color: var(--err); margin: 0; }
.relaychip {
align-self: flex-start; background: var(--s-var); color: var(--on-s);
@@ -828,7 +832,8 @@ td.k { font-family: var(--f-code); font-size: 11.5px; color: var(--ink-2); }
The shape
Relay identity (icon + host, the thing being trusted) ·
- "Log in as @you?" (the disclosure, with the account named for the first time) ·
+ "Log in as @you?" + the npub beneath it (the disclosure, named for the first
+ time — no sentence explaining what logging in means, because the verb already says it) ·
one reason sentence (varies by state) ·
Remember for this relay (a switch, not a third button) ·
Not now / Log in ·
@@ -844,11 +849,11 @@ td.k { font-family: var(--f-code); font-size: 11.5px; color: var(--ink-2); }
-
1
-
2
-
3
-
4
-
5
+
1
+
2
+
3
+
4
+
5
nw
@@ -858,12 +863,12 @@ td.k { font-family: var(--f-code); font-size: 11.5px; color: var(--ink-2); }
Log in as @vitor?
+
npub1vp3k9qz…q8x4k
It won't accept your message for
ANAlice Nakamoto
from someone it can't identify.
-
The operator will see your npub and can link it to this relay.
Remember for this relay
@@ -892,7 +897,7 @@ td.k { font-family: var(--f-code); font-size: 11.5px; color: var(--ink-2); }
- 1The relay leads, because the relay is the thing being trusted. Its NIP-11 icon is already loaded elsewhere in the app and reused here.
- - 2The account is named — new. This is the actual disclosure, and on a multi-account device it is the one thing the user cannot infer.
+ - 2The account is named — new. This is the actual disclosure, and on a multi-account device it is the one thing the user cannot infer. The npub sits under it as the concrete thing being handed over; there is no sentence explaining that logging in identifies you, because "log in" is that sentence.
- 3The only variable line. Avatar inline, at text size, so it reads as part of the sentence rather than a separate block to parse.
- 4Remember becomes a switch, so "allow" and "allow forever" stop competing as two buttons. Default off — a one-time allow stays the cheap answer.
- 5Destructive and navigational actions demoted to text, out of the tap path. Nothing here rewrites a global setting.
@@ -940,7 +945,6 @@ td.k { font-family: var(--f-code); font-size: 11.5px; color: var(--ink-2); }
It won't serve your replies, zaps and mentions to readers it can't identify.
- The operator will see your npub and can link it to this relay.
@@ -976,7 +980,6 @@ td.k { font-family: var(--f-code); font-size: 11.5px; color: var(--ink-2); }
Also reading 2 people you follow ⌄
- The operator will see your npub and can link it to this relay.
@@ -1012,7 +1015,6 @@ td.k { font-family: var(--f-code); font-size: 11.5px; color: var(--ink-2); }
It won't accept your post in Bitcoin Devs from someone it can't identify.
- The operator will see your npub and can link it to this relay.
@@ -1040,7 +1042,6 @@ td.k { font-family: var(--f-code); font-size: 11.5px; color: var(--ink-2); }
It asks everyone to log in. Amethyst can't tell what it's holding back.
- The operator will see your npub and can link it to this relay.
@@ -1384,14 +1385,14 @@ td.k { font-family: var(--f-code); font-size: 11.5px; color: var(--ink-2); }
relay_auth_prompt_title
Confirm it's you to this relay?
-
Log in as %1$s? — now constant across all states; %1$s is the account
+
Log in as %1$s? — now constant across all states; %1$s is the account, with its npub rendered beneath
relay_auth_prompt_message
This relay wants to confirm it's really you first. Its operator will see which account you are.
-
The operator will see your npub and can link it to this relay.
+
"log in" already means "identify yourself" — the npub under the title shows what is handed over, which is more concrete than a sentence about it and doesn't have to be re-read on every prompt
diff --git a/amethyst/plans/2026-08-03-auth-permissions-redesign.md b/amethyst/plans/2026-08-03-auth-permissions-redesign.md
index 417887281b..1ba03c79d1 100644
--- a/amethyst/plans/2026-08-03-auth-permissions-redesign.md
+++ b/amethyst/plans/2026-08-03-auth-permissions-redesign.md
@@ -125,12 +125,11 @@ Further problems:
asks who you are
Log in as @vitor? (constant title; names the account — new)
+npub1vp3k9qz…q8x4k (the concrete thing handed over)
It won't accept your message for ⬤Alice Nakamoto from someone
it can't identify. (the ONE variable line; avatar inline)
-The operator will see your npub and can link it to this relay.
-
[ Remember for this relay (• ) ] (switch, default off)
[ Not now ] [ Log in ]
@@ -141,6 +140,12 @@ The one reason sentence replaces the old title + purpose label + avatar row +
consequence line. Four buttons become two plus a switch. Nothing in the dialog
writes a global setting; the link navigates to the settings screen instead.
+`relay_auth_prompt_message` is **cut, not shortened**. "Log in" already means
+"identify yourself", so a sentence explaining that is boilerplate on every state —
+the same duplication this proposal is removing everywhere else. The npub under the
+title does the job better: it is the concrete value handed over rather than a
+description of it, and it doesn't have to be re-read on the fifth prompt.
+
Reason sentence per state (P1′–P12′, incl. the two new kinds and the
never-reachable `MY_OWN_RELAY`) — see the copy deck in the HTML.