Skip to content

fix(relay): publish owner roles on open relays#1874

Open
tlongwell-block wants to merge 1 commit into
mainfrom
wren/publish-owner-role-open-relays
Open

fix(relay): publish owner roles on open relays#1874
tlongwell-block wants to merge 1 commit into
mainfrom
wren/publish-owner-role-open-relays

Conversation

@tlongwell-block

Copy link
Copy Markdown
Collaborator

Summary

  • publish the relay-signed membership role snapshot on startup when a stable relay key exists, even when NIP-43 access enforcement is disabled
  • keep role metadata current after community provisioning and ownership transfer on open relays
  • let existing clients discover owner/admin capabilities and show owner-only settings such as the workspace icon editor

This does not enable membership enforcement or advertise NIP-43 support on open relays; it only publishes the existing signed role metadata used for capability discovery.

Validation

  • bin/cargo fmt --check
  • bin/cargo check -p buzz-relay
  • targeted config test passes
  • relay lib suite: 654 passed; one unrelated mesh-demo timeout failed twice (demo_join_forwarded_arm_round_trips_echo, expected 200 got 504)
  • pre-commit hooks passed (Rust/Desktop Tauri formatting, web/desktop Biome + file-size checks, Flutter analyze)
  • pre-push client suites passed (desktop 1398, mobile, desktop-tauri 1398 + diagnostics); aggregate Rust runner was blocked first by unactivated Hermit rustc 1.89, then by a concurrent native-build output-dir race after retry with Hermit. Relevant relay compile/tests above are green.

Co-authored-by: npub12gtutshhh76rx0jx697f32f9tffd4hhp3hx58fp4x6u4uemkm7sqf8f757 <5217c5c2f7bfb4333e46d17c98a9255a52dadee18dcd43a43536b95e6776dfa0@sprout-oss.stage.blox.sqprod.co>
Signed-off-by: npub12gtutshhh76rx0jx697f32f9tffd4hhp3hx58fp4x6u4uemkm7sqf8f757 <5217c5c2f7bfb4333e46d17c98a9255a52dadee18dcd43a43536b95e6776dfa0@sprout-oss.stage.blox.sqprod.co>
@tlongwell-block tlongwell-block requested a review from a team as a code owner July 14, 2026 21:52

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This fixes the missing admin-controls path for open relays with configured stable relay and owner keys. The desktop gates relay administration on the current identity appearing as owner/admin in kind 13534; open relays currently seed that DB role but do not publish the snapshot. Publishing it at startup and after provisioning/ownership transfer restores capability discovery without enabling admission enforcement or advertising NIP-43. The config predicate is the right distinction because relay-signed metadata requires a stable key. Approving; merge after CI is green.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants