Taylor Ho
0bb63ae2a0
Move Add agent button to sit immediately left of settings gear
...
Reorder header action buttons so the Quick Add Agent popover trigger
(+ icon) is positioned directly before the manage channel button,
making it more discoverable next to the channel settings.
Also fix pre-existing lint: add role=menu to popover container and
format QuickAddAgentPopover.tsx per biome rules.
2026-05-21 19:16:13 -07:00
Taylor Ho
138ea9b613
fix: move role=listbox to item list wrapper for valid ARIA
...
The 'More options…' button is not a listbox option, so the listbox
role belongs on the inner div that contains only the agent option items.
2026-05-21 19:16:12 -07:00
Taylor Ho
d1b7aeb538
fix: address review feedback — criticals + mediums
...
Critical fixes:
1. Null channelId guard — popover renders children-only (no popover
content) when channelId is null. Action handlers also early-return.
2. pickBotName fallback — safeBotName() wraps pickBotName with a
defensive fallback to persona.displayName or 'Agent'.
3. E2E test updates — tests now click through the quick-add popover's
'More options…' button before asserting on the full dialog.
4. Duplicate AddChannelBotDialog — removed the sidebar's own dialog
instance. Dialog state is now lifted to ChannelScreen and passed
down via props. Only one dialog instance exists (in ChannelMembersBar).
Medium fixes:
5. Discriminated union types — QuickAddAgentItem is now a proper
tagged union (RunningAvailableItem | RunningInChannelItem | PersonaItem).
No more optional agent?/persona? fields.
6. Extracted sortProviders utility — shared between ChannelMembersBar
and any future consumer. Single source of truth for provider ordering.
7. Emerald colors kept — matches existing presence pattern (bg-emerald-500)
used throughout the codebase. No design token exists for 'running' status.
8. Keyboard navigation — added arrow-key roving focus via onKeyDown handler
on the popover container, targeting [data-quick-add-item] buttons.
9. Eager queries — channel members query already gated by popover open state.
Other queries (agents, personas, providers) are globally cached by
ChannelMembersBar which is always mounted — no extra network cost.
2026-05-21 19:16:12 -07:00
Taylor Ho
0d56b5805f
feat: quick-add agent popover with two entry points
...
Replace the direct + → full dialog flow with a lightweight Radix popover
that shows available agents sorted by state (running > configured > catalog).
One click to add. The full AddChannelBotDialog is still accessible via
'More options…' at the bottom of the popover.
Two trigger points:
- The existing + button in ChannelMembersBar now opens the popover
- A new 'Add agent' button at the bottom of the sidebar Bots section
The sidebar already had People/Bots section headers — the inline add
affordance lives at the bottom of the Bots section.
Actions:
- Running agent not in channel → useAttachManagedAgentToChannelMutation
- Persona without running agent → useCreateChannelManagedAgentMutation
(leverages existing reuse logic from agentReuse.ts)
The popover uses useBotRecents for smart ordering and pickBotName for
instance naming. Force-new-instance stays buried in the full dialog.
2026-05-21 19:16:12 -07:00
Will Pfleger
4e060bfec2
fix(deps): upgrade Vite v8 and @vitejs/plugin-react v6 ( #710 )
2026-05-21 19:03:59 -04:00
Will Pfleger
5b75ce4755
fix(deps): upgrade pnpm to v11 with versioned patch keys ( #709 )
2026-05-21 18:53:26 -04:00
Taylor Ho
ee4ee5f850
fix: composer UX improvements (cursor, upload guard, scroll, paste, perf) ( #694 )
2026-05-21 22:53:10 +00:00
Will Pfleger
cfd5a82c7b
fix(infra): pin PGDATA path for forward-compatible Postgres upgrades ( #707 )
2026-05-21 17:57:03 -04:00
Will Pfleger
d0d2670fe2
fix(deps): upgrade redis 1.0 and deadpool-redis 0.23 together ( #703 )
2026-05-21 17:55:44 -04:00
Will Pfleger
091e38ff0a
Fix SPROUT_SHARE_IDENTITY worktree dev workflow breaks ( #702 )
2026-05-21 17:53:20 -04:00
Will Pfleger
4404162f0e
fix(mobile): rename IOSOptions/MacOsOptions to AppleOptions ( #706 )
2026-05-21 17:41:16 -04:00
Will Pfleger
6fe557852c
fix(frontend): remove deprecated baseUrl for TypeScript 6 compatibility ( #705 )
2026-05-21 17:40:54 -04:00
Will Pfleger
d4f55cee3c
fix(deps): upgrade getrandom to 0.4 with fill() rename ( #704 )
2026-05-21 17:40:18 -04:00
tlongwell-block
962dd7dced
feat(sprout-agent): auto-fallback to Databricks OAuth ( #699 )
...
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com >
2026-05-21 13:05:58 -04:00
tlongwell-block
4373a13fb3
fix(relay): avoid websocket writes in stall watchdog ( #697 )
...
Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com >
Co-authored-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Dawn (sprout agent) <c6237ef84fa537c78dcee78efd2d4e59f728859c7f194da42ac51ededfa0be05@sprout-oss.stage.blox.sqprod.co >
2026-05-21 12:56:12 -04:00
tlongwell-block
fa9e26fa5c
feat(sprout-agent): Databricks provider with OAuth 2.0 PKCE auth ( #698 )
...
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com >
Co-authored-by: Dawn (sprout agent) <c6237ef84fa537c78dcee78efd2d4e59f728859c7f194da42ac51ededfa0be05@sprout-oss.stage.blox.sqprod.co >
2026-05-21 12:08:24 -04:00
benthecarman
300b51b02a
Add Ubuntu desktop release artifacts ( #693 )
...
Signed-off-by: benthecarman <benthecarman@live.com >
v0.0.17
2026-05-21 10:09:28 -04:00
renovate[bot]
26a2107523
chore(deps): update rust crate tokio to v1.52.3 ( #658 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-21 01:27:18 +00:00
renovate[bot]
1220e9938a
chore(deps): update all non-major dependencies ( #650 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-21 01:26:47 +00:00
renovate[bot]
aff627d901
chore(deps): update rust crate sherpa-onnx to v1.13.2 ( #657 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-21 01:26:24 +00:00
renovate[bot]
f7eae0a6cf
chore(deps): update dependency nostr-tools to v2.23.5 ( #681 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-21 01:24:40 +00:00
renovate[bot]
740d2545ea
chore(deps): update tanstack-router monorepo ( #659 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 23:10:05 +00:00
renovate[bot]
e08a971abf
chore(deps): update rust crate dashmap to v6.2.1 ( #652 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 23:09:12 +00:00
renovate[bot]
9df214d43a
chore(deps): update rust crate tower-http to v0.6.11 ( #647 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 23:08:56 +00:00
renovate[bot]
109c7d9a8a
chore(deps): update rust crate reqwest to v0.13.3 ( #639 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 23:08:09 +00:00
renovate[bot]
7d4c129002
chore(deps): update rust crate sherpa-onnx to v1.12.40 ( #640 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 23:07:37 +00:00
renovate[bot]
97eacb86f4
chore(deps): update dependency @tanstack/react-query to v5.100.11 ( #635 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 23:06:59 +00:00
renovate[bot]
0dd9a05948
fix(deps): update rust crate sha2 to 0.11 ( #665 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:54:25 +00:00
renovate[bot]
55abbfdec6
fix(deps): update rust crate bzip2 to 0.6 ( #661 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:52:18 +00:00
renovate[bot]
f55dc46c4c
chore(deps): update rust crate uuid to v1.23.1 ( #648 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:50:02 +00:00
renovate[bot]
3935885bb9
chore(deps): update rust crate tauri-plugin-dialog to v2.7.1 ( #644 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:49:41 +00:00
renovate[bot]
8082019cb6
chore(deps): update tanstack-router monorepo ( #649 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:49:22 +00:00
renovate[bot]
42d9eafabd
chore(deps): update rust crate tokio to v1.51.3 ( #646 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:49:13 +00:00
renovate[bot]
576ef8cf86
chore(deps): update rust crate tauri-plugin-opener to v2.5.4 ( #645 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:48:56 +00:00
renovate[bot]
73b4cb797e
chore(deps): update rust crate tauri to v2.11.2 ( #642 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:48:26 +00:00
renovate[bot]
881ed204bb
chore(deps): update rust crate metrics to v0.24.6 ( #638 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:47:35 +00:00
renovate[bot]
cbe6f415bd
chore(deps): update rust crate tar to v0.4.46 ( #641 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:47:24 +00:00
renovate[bot]
420aedecd1
chore(deps): update dependency @tauri-apps/cli to v2.11.2 ( #636 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:47:06 +00:00
renovate[bot]
584c7ae818
chore(deps): update dependency @playwright/test to v1.60.0 ( #651 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:39:49 +00:00
renovate[bot]
9f4adcc74c
chore(deps): update rust crate rmcp to v1.7.0 ( #656 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:39:39 +00:00
renovate[bot]
3ab836d8e0
chore(deps): update dependency shiki to v4.1.0 ( #682 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:37:56 +00:00
renovate[bot]
72f57d7d6d
chore(deps): update react monorepo to v19.2.6 ( #637 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:34:20 +00:00
Will Pfleger
ee912d5478
fix(renovate): re-enable automerge for non-major updates ( #680 )
2026-05-20 22:00:32 +00:00
renovate[bot]
811798b405
chore(deps): update taiki-e/install-action digest to 65851e1 ( #633 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 21:48:16 +00:00
renovate[bot]
f62707f4dc
chore(deps): update rust crate earshot to v1.1.0 ( #654 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 17:43:33 -04:00
renovate[bot]
6ada9da386
chore(deps): update all non-major dependencies (patch) ( #634 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 17:36:06 -04:00
Will Pfleger
94b92b55d1
Add CODEOWNERS file to repo ( #632 )
2026-05-20 21:15:06 +00:00
tlongwell-block
a96cb487f4
fix(desktop): project home read-state from the shared NIP-RS marker ( #631 )
...
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com >
Co-authored-by: Dawn (sprout agent) <c6237ef84fa537c78dcee78efd2d4e59f728859c7f194da42ac51ededfa0be05@sprout-oss.stage.blox.sqprod.co >
2026-05-20 17:13:59 -04:00
Will Pfleger
8dcf24f993
fix: unblock Renovate PR creation and reduce cargo branch sprawl ( #630 )
2026-05-20 20:11:35 +00:00
Taylor Ho
af08b0f0e8
fix: prevent agent proliferation when adding bots to channels ( #621 )
2026-05-20 12:08:34 -07:00