Commit Graph

647 Commits

Author SHA1 Message Date
Taylor Ho
49b60d6478 fix: apply persona resolution to provider deploys + tighten missing-persona test
Item 2: build_deploy_payload() now calls resolve_effective_prompt_and_model()
instead of reading stale record.system_prompt / record.model directly. Provider-
backed agents now get the same fresh-persona-read behavior as local spawns.

Item 3: Added doc comment and inline note to resolve_prompt_falls_back_when_persona_not_found
clarifying it tests prompt/model resolution in isolation — a full spawn would
fail closed at resolve_persona_env() if the persona is missing (env_vars may
hold required API credentials).
2026-05-27 22:20:26 -07:00
Taylor Ho
3ed474a8bd fix: re-read persona system_prompt at spawn time for non-pack agents
Extract resolve_effective_prompt_and_model() as a pure, testable function
that resolves the effective system prompt and model for a managed agent.
When persona_id is set, looks up the persona in the store and returns its
current values. Falls back to the record snapshot when no persona is linked
or the persona can't be found.

Add 5 unit tests covering:
- persona_id matches → reads fresh prompt + model
- no persona_id → falls back to record snapshot
- persona_id not found in store → falls back to record snapshot
- no persona and no record prompt → returns None/None
- persona has no model → returns None (doesn't inherit record model)
2026-05-27 22:20:26 -07:00
Will Pfleger
516dc8303f fix(release): guard CHANGELOG.md read and fix macOS head -n -1
The release notes extraction failed on two counts: awk errors when
CHANGELOG.md doesn't exist (first release has no changelog), and
head -n -1 is a GNU extension unsupported on macOS runners. Guard
with a file existence check and replace head with sed '$d'.
v0.3.0
2026-05-27 19:45:20 -04:00
Will Pfleger
bcd903edcc feat(release): automate OSS release pipeline with just release (#757) 2026-05-27 19:25:09 -04:00
tlongwell-block
af8b0b4cfc fix(relay): install git in runtime image (#763)
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-27 18:12:04 -04:00
Will Pfleger
f42839c740 feat(desktop): worktree agent data sync, retired persona cleanup, mcp_command reconciliation (#728)
Signed-off-by: Will Pfleger <wpfleger@block.xyz>
v0.0.22
2026-05-27 16:46:16 -04:00
Wes
35821574c0 feat(desktop): redesign status UI with full emoji picker and presence sub-menu (#760)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
2026-05-27 13:13:33 -07:00
Wes
8946653af8 fix(desktop): add support for deeplinking to channel/messages (#759)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
2026-05-27 12:27:34 -07:00
Wes
11c8c0d4cf fix(desktop): add top padding to forum view to clear overlay header (#758)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
2026-05-27 12:26:28 -07:00
Wes
9823ff52e2 fix(desktop): clean ANSI escapes from agent log tail + drop dead AppHandle plumbing (#756)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
2026-05-27 09:12:41 -07:00
Wes
f1e25b21da feat(desktop): editable attachments + data-loss fix on message edit (#755)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
Co-authored-by: summer <summer@sprout>
v0.0.21
2026-05-26 19:59:06 -07:00
Will Pfleger
7df4681fee feat(desktop): dock bounce, mark-as-read toggle, and bulk mark-all-read (#753) 2026-05-26 17:38:29 -07:00
Will Pfleger
4d77a5227f chore(renovate): pin tiptap below 3.23.0 (#754) 2026-05-26 20:14:48 -04:00
Wes
ab71ade9e7 fix: prevent agent settings from being silently deleted on channel deletion (#752)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
v0.0.20
2026-05-26 16:09:09 -07:00
renovate[bot]
fbbb2d1d6e fix(deps): update dependency pointycastle to v4 (#687)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Will Pfleger <wpfleger@block.xyz>
Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
2026-05-26 22:16:00 +00:00
Will Pfleger
11905d1fbc chore: activate lefthook hooks and add fmt-all, mobile-fmt recipes (#751)
## Summary

- Activate lefthook pre-commit and pre-push hooks that have existed in `lefthook.yml` since the initial desktop app but were never wired up.
- Add `just hooks` recipe: sets `core.hooksPath = .hooks` and runs `lefthook install --force` to generate hook scripts.
- Wire hook installation into `scripts/dev-setup.sh` so hooks activate automatically on `just setup`.
- Enable `parallel: true` for pre-commit hooks (pre-push already had it) — all 5 format/lint checks run simultaneously.
- Add `just mobile-fmt` recipe (`dart format .`) and `just fmt-all` recipe (Rust root + Tauri Rust + Dart) as one-shot formatters.
- `.hooks/` is gitignored since lefthook generates machine-specific scripts.
- Update `AGENTS.md`: document pre-commit/pre-push hooks in Quality Gates, add `just fmt-all` and `just hooks` usage, upgrade worktree fmt gotcha from CI note to commit blocker, add `just mobile-fmt` to mobile commands; also backfill CLI-first updates (`SPROUT_AUTH_TAG`, complete exit codes, `--format compact` flag position, two new gotchas).

All hook commands delegate to `just` recipes as the single source of truth.
2026-05-26 22:05:42 +00:00
Will Pfleger
b13db17faf feat(desktop): two-layer agent prompts + dynamic AGENTS.md + MCP gating + harness-agnostic skill path (#584)
Signed-off-by: Will Pfleger <wpfleger@block.xyz>
2026-05-26 17:46:30 -04:00
Wes
7ac0466e12 fix: agent management UI fixes (permissions, parallelism, form validation) (#750) 2026-05-26 13:39:49 -07:00
Wes
8a468a9876 fix: UI fixes for system message avatars and agents page (#749)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:46:34 -07:00
tlongwell-block
6d50090c01 feat(cli): add channels search for human-readable channel lookup (#712)
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-26 11:41:49 -04:00
renovate[bot]
efa93c4383 chore(deps): update rust crate sqlx to 0.9 (#740)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Will Pfleger <wpfleger@block.xyz>
Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
2026-05-25 21:32:34 +00:00
Will Pfleger
101805c25d fix(renovate): pin evalexpr <13 and group redis crates (#743) 2026-05-25 18:04:11 +00:00
Will Pfleger
cbad8ff1be fix(ci): prevent cache poisoning in release builds (#744) 2026-05-25 17:24:15 +00:00
renovate[bot]
57f480a555 chore(deps): update taiki-e/install-action action to v2.79.5 (#747)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-25 15:33:57 +00:00
renovate[bot]
6789f5f78c chore(deps): update dependency @tanstack/react-query to v5.100.13 (#746)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-25 15:21:50 +00:00
tlongwell-block
90192d8d48 chore: remove verified dead code (#745)
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com>
2026-05-25 08:12:02 -07:00
tlongwell-block
86f4c5d9a9 docs: fix stale claims, remove counts, purge LiveKit references (#742)
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com>
2026-05-24 13:09:34 -04:00
renovate[bot]
86eca930af chore(deps): update all non-major dependencies (#735)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-24 03:03:36 +00:00
renovate[bot]
fa3e0d1ed4 chore(deps): update dorny/paths-filter action to v4 (#741) 2026-05-24 00:32:26 +00:00
renovate[bot]
e5c35bb59e chore(deps): update rust crate serde_json to v1.0.150 (#737)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
2026-05-23 23:53:59 +00:00
renovate[bot]
939d5d893e chore(deps): update tanstack-router monorepo (#738)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
2026-05-23 23:26:17 +00:00
renovate[bot]
41c8610de0 chore(deps): update dependency @types/react to v19.2.15 (#736)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
2026-05-23 23:08:56 +00:00
renovate[bot]
75556747b1 chore(deps): update all non-major dependencies (#739)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 18:59:00 -04:00
renovate[bot]
8d6a4a9ed2 fix(deps): update rust crate zip to v8 (#692)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 20:39:18 +00:00
renovate[bot]
1c7c8a7881 chore(deps): update plugin com.android.application to v9 (#674)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 20:26:50 +00:00
renovate[bot]
0faf89816c fix(deps): update dependency package_info_plus to v10 (#686)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 16:16:37 -04:00
renovate[bot]
e968aa6bbc fix(deps): update dependency flutter_secure_storage to v10 (#684) 2026-05-23 14:52:40 -04:00
tlongwell-block
59f51a8ac7 feat(desktop): hide archived identities from discovery surfaces (NIP-IA) (#734)
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com>
2026-05-23 13:58:01 -04:00
renovate[bot]
608e3af634 fix(deps): update dependency lucide-react to v1 (#685)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 17:52:25 +00:00
renovate[bot]
11801b33ea chore(deps): update typesense/typesense docker tag to v30 (#679)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 17:41:27 +00:00
renovate[bot]
20bac74bea fix(deps): update rust crate rubato to v3 (#689)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 13:32:53 -04:00
tlongwell-block
79399d9b8e feat: NIP-IA identity archival (relay backend + desktop) (#733)
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com>
2026-05-23 12:03:38 -04:00
renovate[bot]
4278eb5202 fix(deps): update rust crate similar to v3 (#690)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 03:19:20 +00:00
renovate[bot]
75af57c92c fix(deps): update dependency connectivity_plus to v7 (#683)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 03:04:31 +00:00
renovate[bot]
a3a8fff2b4 chore(deps): update postgres docker tag to v18 (#676)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 02:53:29 +00:00
renovate[bot]
b9ed2e12f3 chore(deps): update node.js to v24 (#673)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 02:43:18 +00:00
tlongwell-block
bd93649cba docs(nips): add profile-attestation owner path to NIP-IA (#732)
Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com>
Co-authored-by: npub1qyvc0c5kl4gqv2fd97fsk46tu378sqgy35vc83rvgfwne90sel7s0ed67d <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: Max (sprout agent) <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co>
2026-05-22 22:30:26 -04:00
renovate[bot]
0d126ce3bc chore(deps): update gradle to v9 (#672)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 02:28:09 +00:00
renovate[bot]
414c1c6cb2 chore(deps): update redis docker tag to v8 (#677)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-23 02:17:58 +00:00
renovate[bot]
16a0188caf chore(deps): update github artifact actions (major) (#671)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
2026-05-23 02:08:06 +00:00