Skip to content

feat(web): authenticate gated community browsing#2190

Merged
thomaspblock merged 1 commit into
mainfrom
feat/web-gated-community-auth
Jul 20, 2026
Merged

feat(web): authenticate gated community browsing#2190
thomaspblock merged 1 commit into
mainfrom
feat/web-gated-community-auth

Conversation

@thomaspblock

Copy link
Copy Markdown
Contributor

Summary

  • Let invite recipients enroll their NIP-07 identity directly from the web client and continue into membership-gated communities without opening the desktop app.
  • Use the selected browser signer consistently for NIP-42 relay authentication and NIP-98 Git requests, while retaining a page-lifetime identity for anonymous browsing on open relays.
  • Validate extension-signed events and require a durable NIP-07 identity for membership claims so reloads cannot orphan access under an ephemeral key.

Test plan

  • Web formatting, lint, type checks, and production build
  • Web smoke E2E, including signed invite enrollment and payload digest validation
  • Repository pre-push test suite
  • Manual browser smoke: browser join rendered, submitted a signed claim with HTTP 200, and redirected home without console errors

Use NIP-07 identities for relay and Git authentication, and let members claim community invites in the browser without exposing private keys to the page.
@thomaspblock
thomaspblock marked this pull request as ready for review July 20, 2026 22:29
@thomaspblock
thomaspblock requested a review from a team as a code owner July 20, 2026 22:29
@thomaspblock
thomaspblock merged commit 1210e2a into main Jul 20, 2026
31 checks passed
@thomaspblock
thomaspblock deleted the feat/web-gated-community-auth branch July 20, 2026 22:29
tlongwell-block pushed a commit that referenced this pull request Jul 20, 2026
* origin/main:
  Fix persisted agent defaults display (#2182)
  [codex] Fix missing release tag detection (#2191)
  feat(web): authenticate gated community browsing (#2190)
  fix(timeout): unified turn-timeout fix — cap inheritance, steer renewal, activity-aware requeue, LLM stall surfacing (#2175)
  fix(desktop): scope draft store per workspace relay (#2179)
  chore(release): release Buzz Mobile version 0.4.8 (#2187)
  [codex] create release tags with dedicated App (#2186)
  fix(desktop): avoid forwarding click event as channel callback (#2174)
  fix(mobile): image upload fails due to unstripped metadata (#2185)
  Polish agent defaults surfaces: app dropdowns + collapsed Advanced env vars (#2184)
  chore(release): release Buzz Desktop version 0.4.20 (#2170)
  perf(relay): compact Git packs before manifest limits (#2172)
  fix(desktop): composite harness loader opacity (#2180)
  fix(desktop): modal sign-in + branded communities onboarding page (#2147)
  feat(cli): add channels create --template for desktop channel templates (#1990)

Co-authored-by: Tyler Longwell <tlongwell@block.xyz>
Signed-off-by: Tyler Longwell <tlongwell@block.xyz>
wpfleger96 pushed a commit that referenced this pull request Jul 21, 2026
…chive

* origin/main: (25 commits)
  feat(cli): filter archived instances from --template roster resolution (#2207)
  chore(release): release Buzz Desktop version 0.4.21 (#2209)
  fix(desktop): clarify data deletion action (#2208)
  feat: brand authentication complete page (#2192)
  fix(buzz-acp,buzz-agent): surface stall duration and fate (#2204)
  fix(desktop): resolve activity feed showing channel UUID instead of message content (#2201)
  feat(cli): add agents archive/unarchive/archived subcommands (#2173)
  chore(acp): strip stale finding-number references from comments (#2202)
  chore(release): release Buzz Mobile version 0.4.9 (#2200)
  Simplify first-community onboarding choices (UI only) (#2194)
  fix(mobile): sanitize Android image uploads (#2188)
  fix(cli): paginate channel directory queries (#2181)
  Fix persisted agent defaults display (#2182)
  [codex] Fix missing release tag detection (#2191)
  feat(web): authenticate gated community browsing (#2190)
  fix(timeout): unified turn-timeout fix — cap inheritance, steer renewal, activity-aware requeue, LLM stall surfacing (#2175)
  fix(desktop): scope draft store per workspace relay (#2179)
  chore(release): release Buzz Mobile version 0.4.8 (#2187)
  [codex] create release tags with dedicated App (#2186)
  fix(desktop): avoid forwarding click event as channel callback (#2174)
  ...
wpfleger96 added a commit that referenced this pull request Jul 21, 2026
…chive

* origin/main: (25 commits)
  feat(cli): filter archived instances from --template roster resolution (#2207)
  chore(release): release Buzz Desktop version 0.4.21 (#2209)
  fix(desktop): clarify data deletion action (#2208)
  feat: brand authentication complete page (#2192)
  fix(buzz-acp,buzz-agent): surface stall duration and fate (#2204)
  fix(desktop): resolve activity feed showing channel UUID instead of message content (#2201)
  feat(cli): add agents archive/unarchive/archived subcommands (#2173)
  chore(acp): strip stale finding-number references from comments (#2202)
  chore(release): release Buzz Mobile version 0.4.9 (#2200)
  Simplify first-community onboarding choices (UI only) (#2194)
  fix(mobile): sanitize Android image uploads (#2188)
  fix(cli): paginate channel directory queries (#2181)
  Fix persisted agent defaults display (#2182)
  [codex] Fix missing release tag detection (#2191)
  feat(web): authenticate gated community browsing (#2190)
  fix(timeout): unified turn-timeout fix — cap inheritance, steer renewal, activity-aware requeue, LLM stall surfacing (#2175)
  fix(desktop): scope draft store per workspace relay (#2179)
  chore(release): release Buzz Mobile version 0.4.8 (#2187)
  [codex] create release tags with dedicated App (#2186)
  fix(desktop): avoid forwarding click event as channel callback (#2174)
  ...

Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
wpfleger96 added a commit that referenced this pull request Jul 21, 2026
…chive

* origin/main: (25 commits)
  feat(cli): filter archived instances from --template roster resolution (#2207)
  chore(release): release Buzz Desktop version 0.4.21 (#2209)
  fix(desktop): clarify data deletion action (#2208)
  feat: brand authentication complete page (#2192)
  fix(buzz-acp,buzz-agent): surface stall duration and fate (#2204)
  fix(desktop): resolve activity feed showing channel UUID instead of message content (#2201)
  feat(cli): add agents archive/unarchive/archived subcommands (#2173)
  chore(acp): strip stale finding-number references from comments (#2202)
  chore(release): release Buzz Mobile version 0.4.9 (#2200)
  Simplify first-community onboarding choices (UI only) (#2194)
  fix(mobile): sanitize Android image uploads (#2188)
  fix(cli): paginate channel directory queries (#2181)
  Fix persisted agent defaults display (#2182)
  [codex] Fix missing release tag detection (#2191)
  feat(web): authenticate gated community browsing (#2190)
  fix(timeout): unified turn-timeout fix — cap inheritance, steer renewal, activity-aware requeue, LLM stall surfacing (#2175)
  fix(desktop): scope draft store per workspace relay (#2179)
  chore(release): release Buzz Mobile version 0.4.8 (#2187)
  [codex] create release tags with dedicated App (#2186)
  fix(desktop): avoid forwarding click event as channel callback (#2174)
  ...

Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
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.

1 participant