Conversation
Signed-off-by: Stephen DeLorme <stephen@d.elor.me>
Signed-off-by: Stephen DeLorme <stephen@d.elor.me>
🔐 Codex Security Review
|
|
Browser regression evidence at Installation A after saving the shared name; the optional local nickname remains a separate setting: Installation B after a focus refresh, without manually renaming it: |
Signed-off-by: Stephen DeLorme <stephen@d.elor.me>


A community named on one installation currently appears under a hostname-derived label on another. This adds one owner/admin-controlled name per relay community, read by Desktop and Mobile from host-scoped NIP-11 metadata.
Fixes #2797.
kind:9033profile command with a validated name patch. Names always require an explicit owner/admin, including on open relays. A name-only update preserves the icon; legacy icon commands preserve the name.communities.namein migration 0046 and the desired-state schema. Expose it as standard NIP-11name, withcommunity_profiledistinguishing supported/unset metadata from older relays. Clients check this capability before publishing: old relays would interpret a name-only command as an icon clear.The name is intentionally public through NIP-11, as the icon already is. The editor discloses that before saving. Mobile consumes canonical names; the shared-name administration path is Desktop.
Upgrade the relay before using the new editor. Existing rows remain unnamed until an owner/admin explicitly saves a name. Binary rollback leaves the additive column in place; old icon SQL continues to preserve names. The protocol, compatibility behavior, and rollout are documented in
docs/nips/NIP-WP.md.Validation on the implementation:
JSON; the repository Docker environment specifies PostgreSQL 17.just ciwas stopped during later Rust test builds when disk space fell to approximately 400 MB, so the full gate is not green.just testpassed its unit phase, then could not start Docker services because the daemon is unavailable (stopped its service-wait loop); the isolated PostgreSQL lane above was used for database integration evidence.The browser tests use the established mocked native bridge and shared profile transport across two isolated storage profiles. They prove the client workflow; the PostgreSQL tests independently exercise the real signed command handler and NIP-11 producer. A rebuilt native Desktop/Mobile pair against an upgraded live relay has not been exercised, and the draft still needs the complete CI/PG17 gate before merge.