Taylor Ho
daeadbf912
fix: patch 3 file-watcher bugs blocking merge
...
1. Task leak: add watch::channel shutdown signal to WatcherRuntime so
the debounce loop exits when stop_file_watcher drops the runtime.
Adds tokio 'macros' feature for select!.
2. ID collision: use crypto.randomUUID() for synthetic diff message IDs
instead of seconds-precision timestamps that collide on rapid writes.
3. Channel switch cleanup: call stopFileWatcher in the useEffect cleanup
so navigating away stops the backend watcher. Also converts the
pointless dynamic import to a static import.
2026-04-15 06:55:49 -10:00
Taylor Ho
22e251991a
Merge branch 'main' into feat/file-diffs
...
# By Wes (12) and others
# Via GitHub
* main: (26 commits)
feat(mobile): websocket streaming with real-time messaging (#323 )
feat(markdown): add image/video preview, lightbox, and multi-image gallery (#316 )
feat(composer): add rich text editor with formatting and mentions (#310 )
feat(mobile): align design language with desktop and polish UI (#321 )
fix: lock file registry (#318 )
feat(mobile): QR/code pairing flow with security hardening (#317 )
feat: Sprout Huddles — voice conversations with AI agents (#299 )
feat(mobile): add channel list with relay integration (#315 )
feat: add change member role in channel sidebar (#313 )
feat(desktop): deterministic nested thread panels (#308 )
fix: show private channels in channel browser when user is a member (#311 )
Replace inline channel creation with dialog (#312 )
chore: improve chat message layout to left-aligned design (#309 )
Add edit dialog for managed agents with relay profile sync (#277 )
fix(ci): build relay with optimized profile to fix flaky e2e tests (#307 )
Update actions/checkout action to v6 (#305 )
Update dependency @tanstack/react-query to v5.98.0 (#304 )
Update dependency @playwright/test to v1.59.1 (#303 )
Update react monorepo to v19.2.5 (#302 )
feat(mobile): scaffold Flutter app with Riverpod & Catppuccin theme (#306 )
...
# Conflicts:
# desktop/src-tauri/Cargo.lock
# desktop/src-tauri/Cargo.toml
# desktop/src-tauri/src/lib.rs
# desktop/src/features/channels/ui/ChannelScreen.tsx
2026-04-14 20:39:15 -10:00
94d4e16461
feat(mobile): websocket streaming with real-time messaging ( #323 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 20:20:35 -07:00
Taylor Ho and GitHub
0724f19382
feat(markdown): add image/video preview, lightbox, and multi-image gallery ( #316 )
2026-04-14 16:57:14 -07:00
Taylor Ho and GitHub
fe673254e6
feat(composer): add rich text editor with formatting and mentions ( #310 )
2026-04-14 16:56:38 -07:00
3eabe74c61
feat(mobile): align design language with desktop and polish UI ( #321 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 14:33:48 -07:00
Wes and GitHub
2f4e394866
fix: lock file registry ( #318 )
2026-04-14 11:05:58 -07:00
4c37a57cfe
feat(mobile): QR/code pairing flow with security hardening ( #317 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 10:44:54 -07:00
tlongwell-block and GitHub
dd6107d0d0
feat: Sprout Huddles — voice conversations with AI agents ( #299 )
2026-04-14 13:11:09 -04:00
08be36471e
feat(mobile): add channel list with relay integration ( #315 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 08:42:29 -07:00
be83699559
feat: add change member role in channel sidebar ( #313 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 08:14:36 -07:00
thomaspblock and GitHub
0f5f306364
feat(desktop): deterministic nested thread panels ( #308 )
2026-04-13 18:37:37 -07:00
damienrj and GitHub
364010d5dd
fix: show private channels in channel browser when user is a member ( #311 )
2026-04-13 13:57:40 -10:00
423ed01ed8
Replace inline channel creation with dialog ( #312 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 15:58:56 -07:00
Taylor Ho and GitHub
5fec48c2a9
chore: improve chat message layout to left-aligned design ( #309 )
2026-04-13 14:42:37 -07:00
Will Pfleger and GitHub
ccecf7e362
Add edit dialog for managed agents with relay profile sync ( #277 )
2026-04-13 18:15:43 +00:00
4c6c897d11
fix(ci): build relay with optimized profile to fix flaky e2e tests ( #307 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 11:04:46 -07:00
cf3e0f7ca4
Update actions/checkout action to v6 ( #305 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-13 11:04:30 -07:00
a48d9dc775
Update dependency @tanstack/react-query to v5.98.0 ( #304 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-13 10:54:12 -07:00
829ed16824
Update dependency @playwright/test to v1.59.1 ( #303 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-13 10:34:05 -07:00
14df06c7d6
Update react monorepo to v19.2.5 ( #302 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-13 10:33:46 -07:00
a444fb9516
feat(mobile): scaffold Flutter app with Riverpod & Catppuccin theme ( #306 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 09:55:14 -07:00
8d24bd4130
Update dependency @tanstack/react-router to v1.168.13 ( #301 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-12 19:36:16 -07:00
tlongwell-block and GitHub
d07385fe02
feat: Markdown-based persona packs (crate + ACP + desktop) ( #297 )
2026-04-11 13:32:14 -04:00
5e089355a3
feat(desktop): improve Agents page UX ( #298 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-11 09:12:37 -07:00
Taylor Ho
5d9ce58dd3
feat: local file watcher with inline diffs below agent turns
...
Backend (Rust):
- file_watcher.rs: notify crate watches per-channel project dirs
- Debounced 500ms, ignores .git/node_modules/binaries/large files
- similar crate computes unified diffs against snapshots
- Tauri event emission (file-diff) to frontend
- Per-channel project dir config persisted to project-dirs.json
- Commands: get/set_project_dir, start/stop_file_watcher, resnapshot
Frontend (React):
- useLocalFileDiffs hook listens for Tauri file-diff events
- Synthetic TimelineMessage (kind:40008) merges into timeline
- Renders through existing DiffMessage -> DiffViewer pipeline
- Project directory UI in channel management sheet
- Auto-starts watcher when opening channel with configured dir
Local-only for v1 — no relay events emitted.
2026-04-10 22:54:55 -10:00
1211b0edc6
feat(desktop): add Pulse social notes surface ( #296 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 17:09:38 -07:00
Wes and GitHub
3ef19f2554
Fix flaky desktop smoke tests ( #294 )
2026-04-10 16:31:12 -07:00
e333371988
Add agent lifecycle controls to channel members sidebar ( #291 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 16:08:20 -07:00
tlongwell-block and GitHub
fc4f2f1351
Update nest_agents.md tagging info ( #292 )
2026-04-10 19:27:49 +00:00
tlongwell-block and GitHub
ff86e0cf49
feat: add Sprout nest — persistent agent workspace at ~/.sprout ( #290 )
2026-04-10 15:01:26 -04:00
Jordan Mecom and GitHub
489d69ffde
Fix auth and SSRF vulns ( #261 )
2026-04-10 18:37:10 +00:00
Will Pfleger and GitHub
d0970d64e6
Add per-agent MCP toolset configuration to agent setup ( #279 )
2026-04-10 13:42:04 -04:00
41d343bb35
feat(desktop): team & persona import/edit flows ( #288 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 07:17:19 -10:00
79566516ba
Remove menu item subtitles and fix persona card overflow ( #289 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 10:05:21 -07:00
tlongwell-block and GitHub
61efb883a1
feat: Phase 1 video upload support (Blossom-compliant-ish) ( #285 )
2026-04-10 12:23:29 -04:00
Will Pfleger and GitHub
a791566c91
Add inline subtitles to menu items and field descriptions ( #276 )
2026-04-09 21:15:40 -04:00
b71f50400c
Improve ephemeral channel affordances and hide archived sidebar rows ( #286 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-09 18:08:57 -07:00
Will Pfleger and GitHub
3878574273
Fix @mention search to use word-boundary prefix matching ( #278 )
2026-04-09 22:51:35 +00:00
a3a4127d98
Allow bot owners to remove their agents from any channel ( #284 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-09 15:06:23 -07:00
Wes and GitHub
3d130a1460
[codex] Polish agent selectors and settings layout ( #283 )
2026-04-09 09:04:37 -07:00
Wes and GitHub
4d44f4741f
Restore chooser-based persona catalog flow ( #275 )
2026-04-08 21:04:09 -07:00
68a3d16d9e
Fun bot names from persona name pools ( #273 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-08 16:41:08 -07:00
063ce331dd
feat: typing indicator avatars + stable name order ( #267 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-08 11:45:00 -10:00
Wes and GitHub
94ad235a0a
fix(desktop): restore compatible pnpm lockfile ( #271 )
desktop/v0.1.0-rc11
2026-04-08 12:34:19 -07:00
Wes and GitHub
7a1eb31492
[codex] Show recent notes in user popovers ( #270 )
2026-04-08 12:24:10 -07:00
7a9218ba54
Update all non-major dependencies ( #248 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Wes <wesb@block.xyz >
2026-04-08 11:55:11 -07:00
Wes and GitHub
7e4bcfb8c2
[codex] Reduce desktop release startup work ( #269 )
2026-04-08 11:13:14 -07:00
tlongwell-block and GitHub
8bfce0975b
feat: social notes MCP + CLI tools (kind:1/kind:3) ( #268 )
2026-04-08 14:08:53 -04:00
Matt Toohey and GitHub
89aa68d769
feat: support multiple sprout instances with stable ports ( #264 )
desktop/v0.1.0-rc10
2026-04-08 11:39:51 +10:00