From 077086a5bbdaa9ec371633b1a9e8e23a984e2fcb Mon Sep 17 00:00:00 2001
From: npub1qvn3cujt28pg06ehlstrxyz6ayzp06t4uc7r566vxwwgrv24hglq9zju0n
 <03271c724b51c287eb37fc1633105ae90417e975e63c3a6b4c339c81b155ba3e@sprout-oss.stage.blox.sqprod.co>
Date: Thu, 16 Jul 2026 19:56:15 -0700
Subject: [PATCH] fix(desktop): restore public relay media previews

Co-authored-by: npub1qvn3cujt28pg06ehlstrxyz6ayzp06t4uc7r566vxwwgrv24hglq9zju0n <03271c724b51c287eb37fc1633105ae90417e975e63c3a6b4c339c81b155ba3e@sprout-oss.stage.blox.sqprod.co>
Signed-off-by: npub1qvn3cujt28pg06ehlstrxyz6ayzp06t4uc7r566vxwwgrv24hglq9zju0n <03271c724b51c287eb37fc1633105ae90417e975e63c3a6b4c339c81b155ba3e@sprout-oss.stage.blox.sqprod.co>
---
 CHANGELOG.md                                         | 7 +++++++
 desktop/package.json                                 | 2 +-
 desktop/src-tauri/Cargo.lock                         | 2 +-
 desktop/src-tauri/Cargo.toml                         | 2 +-
 desktop/src-tauri/tauri.conf.json                    | 2 +-
 desktop/src/features/communities/useCommunityInit.ts | 7 +++++++
 6 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 209757f8fa..f8c7d0033b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,12 @@
 # Changelog
 
+## v0.4.12
+
+- fix(desktop): proxy authenticated relay media after cold-start community initialization
+- fix(desktop): keep shared-compute consumers admitted (WIP: multi-workspace publishing) ([#2000](https://github.com/block/buzz/pull/2000)) ([`5d77fa57`](https://github.com/block/buzz/commit/5d77fa57))
+- feat(desktop): reskin provider, config, community, profile, and team onboarding pages ([#2003](https://github.com/block/buzz/pull/2003)) ([`f054df73`](https://github.com/block/buzz/commit/f054df73))
+
+
 ## v0.4.11
 
 - Fix policy receipts for cold-launch invite links ([#2005](https://github.com/block/buzz/pull/2005)) ([`1d8d006a`](https://github.com/block/buzz/commit/1d8d006aaf078ffd5b92eae06334b7bb908b680e))
diff --git a/desktop/package.json b/desktop/package.json
index faf7748f23..6ea9fdfe96 100644
--- a/desktop/package.json
+++ b/desktop/package.json
@@ -1,7 +1,7 @@
 {
   "name": "buzz",
   "private": true,
-  "version": "0.4.11",
+  "version": "0.4.12",
   "type": "module",
   "scripts": {
     "dev": "vite",
diff --git a/desktop/src-tauri/Cargo.lock b/desktop/src-tauri/Cargo.lock
index 6474b0f6ea..8b9b413e1b 100644
--- a/desktop/src-tauri/Cargo.lock
+++ b/desktop/src-tauri/Cargo.lock
@@ -972,7 +972,7 @@ dependencies = [
 
 [[package]]
 name = "buzz-desktop"
-version = "0.4.11"
+version = "0.4.12"
 dependencies = [
  "anyhow",
  "arboard",
diff --git a/desktop/src-tauri/Cargo.toml b/desktop/src-tauri/Cargo.toml
index 15492f44db..3a2738271d 100644
--- a/desktop/src-tauri/Cargo.toml
+++ b/desktop/src-tauri/Cargo.toml
@@ -2,7 +2,7 @@
 
 [package]
 name = "buzz-desktop"
-version = "0.4.11"
+version = "0.4.12"
 description = "Buzz desktop app"
 authors = ["you"]
 edition = "2021"
diff --git a/desktop/src-tauri/tauri.conf.json b/desktop/src-tauri/tauri.conf.json
index 6a59d07454..7cf708d14b 100644
--- a/desktop/src-tauri/tauri.conf.json
+++ b/desktop/src-tauri/tauri.conf.json
@@ -1,7 +1,7 @@
 {
   "$schema": "https://schema.tauri.app/config/2",
   "productName": "Buzz",
-  "version": "0.4.11",
+  "version": "0.4.12",
   "identifier": "xyz.block.buzz.app",
   "build": {
     "beforeDevCommand": {
diff --git a/desktop/src/features/communities/useCommunityInit.ts b/desktop/src/features/communities/useCommunityInit.ts
index dc2452b507..eda5fb43a0 100644
--- a/desktop/src/features/communities/useCommunityInit.ts
+++ b/desktop/src/features/communities/useCommunityInit.ts
@@ -186,6 +186,13 @@ export function useCommunityInit(
       }
 
       if (!cancelled) {
+        // Refresh relay-derived media state only after the backend has installed
+        // this community's relay override. On cold launch, mediaUrl.ts may have
+        // eagerly cached the default relay origin before applyCommunity ran;
+        // leaving that stale value makes authenticated relay media look external
+        // and bypass the localhost proxy.
+        resetMediaCaches();
+
         // Initialise the draft store for this identity so localStorage drafts
         // are scoped to the correct pubkey before the app renders.
         if (activeCommunity.pubkey) {
