Files
amethyst/commons
Claude 5bfe049db3 fix: show the relay a 22242 login names verbatim, and warn when it's odd
Audit of the relay-login card. The requesting app writes the relay tag of
a 22242 verbatim, and a fresh signature lets it AUTH to that relay as the
user (giftwrap inbox, paid-relay quota), so the relay is the decision.

- The card and the consent preview showed the normalizer's *repaired*
  URL (it adds schemes, trims %20, splits run-on URLs) and silently
  dropped values it rejected, reporting "No relay named" for an event
  that does name one. They now show the tag value as signed.
- Bidi overrides and zero-width characters in that value are escaped as
  \uXXXX instead of rendered, so an RLO can't make one host read as
  another. Any such value, or one that needed rewriting or won't
  normalize, is shown in the error color with a "check before signing"
  note. ws:// is no longer stripped from the display.
- The explainer said "Nothing is posted", which undersold a login grant
  at the moment of consent; it now says what holding it allows.
- The relay address is never ellipsized; the challenge line uses
  Text(fontFamily) instead of copying a TextStyle per recomposition.
- The helper lives in commons (RelayAuthTarget); the quartz TagArray
  helpers from the previous commit had no callers left and are removed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GSwjzewTFcwzqAKVJ1WJ9B
2026-10-02 19:40:50 +00:00
..