npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 and Will Pfleger
7bfdf3e19d
fix(desktop): switch macOS keychain to Data Protection Keychain
...
The keyring crate uses SecKeychainAddGenericPassword with a null ACL,
which creates items requiring user confirmation on every access — even
by the same app. This causes ~20 prompts on migration launch and 7 on
every subsequent launch.
Switch the macOS backend to the modern SecItem API with
kSecUseDataProtectionKeychain=true via security-framework's
PasswordOptions::use_protected_keychain(). Items stored this way use
kSecAttrAccessible instead of ACLs and never prompt after the first
device unlock.
Migration path: load() tries DPK first; on a miss it falls back to the
old keychain, writes the value to DPK, and deletes the old entry. First
launch after this fix prompts once per key (7 total), then zero forever.
Unsigned dev builds (tauri dev / cargo run) lack the hardened-runtime
entitlement required by DPK and fall back to the legacy keyring path
automatically (errSecMissingEntitlement, -34018). Windows and Linux
paths are unchanged.
Co-authored-by: Will Pfleger <pfleger.will@gmail.com >
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
2026-06-24 22:37:56 -04:00
cee2c5f263
fix(desktop): use IPv4 loopback for media proxy URLs ( #1245 )
...
Signed-off-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
2026-06-24 20:20:27 -04:00
856815994c
perf(relay/git): stream read-path, manifest info/refs fast path, idx sidecar (A/B/C) ( #1240 )
...
Signed-off-by: Tyler Longwell <tlongwell@block.xyz >
Co-authored-by: npub1qyvc0c5kl4gqv2fd97fsk46tu378sqgy35vc83rvgfwne90sel7s0ed67d <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Tyler Longwell <tlongwell@block.xyz >
Co-authored-by: Max <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
2026-06-24 19:44:24 -04:00
Will Pfleger and GitHub
08d375aa2f
chore(release): release Buzz Desktop version 0.3.32 ( #1254 )
v0.3.32
2026-06-24 18:46:49 -04:00
9d3bfd38b0
fix(desktop): restore solid dot for top-level channel unreads ( #1253 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-24 18:40:49 -04:00
ebd74d11b4
Allow explicit root posts from reply prompts ( #1251 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-24 22:38:38 +00:00
d256935c36
feat: publish personas, teams, and managed agents as relay events ( #939 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Will Pfleger <pfleger.will@gmail.com >
2026-06-24 22:28:25 +00:00
e993b9e741
fix(observability): gate agent observability on declared ownership, not key custody ( #1229 )
...
Signed-off-by: Taylor Ho <taylorkmho@gmail.com >
Co-authored-by: npub1223z34hd7vtwc6qj4s7flsxkj644nlre2nthu7lrrmkumhu3xddsrx9r6w <52a228d6edf316ec6812ac3c9fc0d696ab59fc7954d77e7be31eedcddf91335b@sprout-oss.stage.blox.sqprod.co >
2026-06-24 14:57:20 -07:00
a9ce477a04
fix(desktop): split AppShell notification effects ( #1248 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-24 14:51:05 -07:00
4be43d7086
feat(desktop): store nsec private keys in the OS keyring ( #1172 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-24 17:07:34 -04:00
0482288891
fix: add evict-completed-work prompt rule and unblock desktop file-size gate ( #1247 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-24 16:32:59 -04:00
a3e8fb6fd5
fix(desktop): scope mention/add autocomplete to reachable identities ( #1243 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
2026-06-24 12:57:55 -07:00
09dbeb86fa
test(e2e): raise scroll-history pagination test timeout to 90s ( #1234 )
...
Signed-off-by: Taylor Ho <taylorkmho@gmail.com >
Co-authored-by: npub1223z34hd7vtwc6qj4s7flsxkj644nlre2nthu7lrrmkumhu3xddsrx9r6w <52a228d6edf316ec6812ac3c9fc0d696ab59fc7954d77e7be31eedcddf91335b@sprout-oss.stage.blox.sqprod.co >
2026-06-24 12:56:22 -07:00
klopez4212 and GitHub
b264a32cfb
Polish thread and media layout ( #1239 )
2026-06-24 12:55:25 -07:00
klopez4212 and GitHub
092546495d
Polish desktop navigation chrome ( #1238 )
2026-06-24 12:54:05 -07:00
2e426b2fdd
fix: propagate persona harness edits to live agent instances ( #1244 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-24 13:41:19 -04:00
45067ec135
fix(desktop): render autolinked message links as chips ( #1241 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-24 09:47:12 -07:00
733c766eba
fix(desktop): clear unread projections from message read markers ( #1242 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-24 09:39:16 -07:00
86d7748ebd
fix(desktop): resolve repos_dir symlink at boot before agent restore ( #1231 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-24 11:58:48 -04:00
36d3d2ed1e
Fix presence fan-out across relay pods ( #1227 )
...
Signed-off-by: Tyler Longwell <tlongwell@block.xyz >
Co-authored-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Tyler Longwell <tlongwell@block.xyz >
2026-06-23 22:32:46 -04:00
Will Pfleger and GitHub
142a5c9095
fix(relay): raise grace limit, add replay backpressure, and NOTICE on oversized frames ( #1226 )
2026-06-23 20:26:54 -04:00
Wes and GitHub
38a9533439
[codex] Make relay frame limit configurable ( #1225 )
2026-06-23 17:18:55 -07:00
Wes and GitHub
3e91ce274e
chore(release): release Buzz Desktop version 0.3.31 ( #1223 )
v0.3.31
2026-06-23 15:49:04 -07:00
549b7d2481
fix(release): publish versioned relay Docker tags via independent release lanes ( #1173 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-23 18:35:30 -04:00
thomaspblock and GitHub
6ad68a6b09
fix(desktop): align settings section headers ( #1165 )
...
Signed-off-by: Thomas Petersen <thomasp@squareup.com >
2026-06-23 15:32:38 -07:00
1011cea268
fix(desktop): ground agent workspace, migrate legacy nest, configurable repos_dir ( #1194 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-23 18:30:12 -04:00
fa1262a92c
fix(desktop): enable mesh llm for release builds ( #1221 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-23 15:10:36 -07:00
Will Pfleger and GitHub
e35e84b08b
fix(desktop): move crypto commands off the main thread ( #1222 )
2026-06-23 18:02:24 -04:00
c58e9880bf
fix: tolerate missing private_key_nsec in agent store ( #1220 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-23 17:55:13 -04:00
6b5cf325c2
Update navigation header height ( #1212 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-23 14:40:38 -07:00
klopez4212 and GitHub
5130a6a0b6
Improve global search ( #1195 )
2026-06-23 14:31:06 -07:00
65ccb1262f
Parse Typesense multi_search errors ( #1208 )
...
Signed-off-by: npub1t2tgm7d8f995uqvmnm8h88sg3wnpp9a5xysjf6dg3tjmgt3ltulqdp8ehr <5a968df9a7494b4e019b9ecf739e088ba61097b4312124e9a88ae5b42e3f5f3e@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1t2tgm7d8f995uqvmnm8h88sg3wnpp9a5xysjf6dg3tjmgt3ltulqdp8ehr <5a968df9a7494b4e019b9ecf739e088ba61097b4312124e9a88ae5b42e3f5f3e@sprout-oss.stage.blox.sqprod.co >
2026-06-23 14:16:15 -07:00
89ff950444
fix(desktop): keep settings shortcut from opening search ( #1204 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-23 14:15:44 -07:00
klopez4212 and GitHub
c0a872e898
Polish sidebar channel navigation ( #1213 )
2026-06-23 14:15:04 -07:00
89aaa26443
fix(desktop): restore channel unread badges ( #1218 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-23 13:59:21 -07:00
thomaspblock and GitHub
b4e75a1e41
Fix collapsed home header chrome overlap ( #1215 )
...
Signed-off-by: Thomas Petersen <thomasp@squareup.com >
2026-06-23 13:45:57 -07:00
2a522826ed
fix(desktop): dedupe welcome intro per channel ( #1216 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-23 12:47:11 -07:00
bee2d64cf7
fix(desktop): defer agent page secondary requests ( #1217 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-23 12:46:47 -07:00
3ef2a8e5c7
ci(release): enable Tauri auto-updater on Windows and Linux builds ( #1206 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-23 15:34:11 -04:00
ed556f3deb
Hydrate reactions for rendered messages ( #1205 )
...
Signed-off-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
2026-06-23 13:39:01 -04:00
40070a5855
fix(desktop): show NIP-OA owners in profile pane ( #1198 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co >
2026-06-23 09:07:50 -07:00
29978b6f93
fix(desktop): preserve login-shell PATH for managed agents ( #1193 )
...
Signed-off-by: Tyler Longwell <tlongwell@block.xyz >
Co-authored-by: npub1qyvc0c5kl4gqv2fd97fsk46tu378sqgy35vc83rvgfwne90sel7s0ed67d <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Tyler Longwell <tlongwell@block.xyz >
2026-06-23 11:58:25 -04:00
b3b0704efb
Fix nav chrome offset in fullscreen ( #1192 )
...
Signed-off-by: npub1t2tgm7d8f995uqvmnm8h88sg3wnpp9a5xysjf6dg3tjmgt3ltulqdp8ehr <5a968df9a7494b4e019b9ecf739e088ba61097b4312124e9a88ae5b42e3f5f3e@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1t2tgm7d8f995uqvmnm8h88sg3wnpp9a5xysjf6dg3tjmgt3ltulqdp8ehr <5a968df9a7494b4e019b9ecf739e088ba61097b4312124e9a88ae5b42e3f5f3e@sprout-oss.stage.blox.sqprod.co >
2026-06-23 10:58:02 -04:00
c0858dac12
fix(desktop): show due-reminder count in the Inbox nav badge ( #1191 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-23 10:46:18 -04:00
Will Pfleger and GitHub
45eae7c0ec
chore(release): release version 0.3.30 ( #1190 )
v0.3.30
2026-06-23 10:02:52 -04:00
ce994df74e
fix(desktop): collapse mark-read/unread menu into one toggling item ( #1188 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-22 23:24:58 -04:00
28db41dfd3
fix(channels): replace thread-unread badge frontier with per-message read markers ( #1178 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-22 22:25:10 -04:00
6780ea21e4
fix(relay): resubscribe agents when an archived channel is restored ( #1187 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-22 22:16:16 -04:00
Wes and GitHub
d389bf0b85
chore(release): release version 0.3.29 ( #1184 )
v0.3.29
2026-06-22 22:44:29 +00:00
ce5261067d
build: make mesh-llm opt-in for dev/staging to speed up iteration ( #1183 )
...
Signed-off-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: npub1yxv5wk0u0fh6dwt925wntn7h397jvteyj4r87ttcd9xae7n2t3lqqj9jmm <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co >
2026-06-22 22:11:50 +00:00