Commit Graph

704 Commits

Author SHA1 Message Date
Will Pfleger
bd9c161940 chore(release): rename GitHub App secrets to SPROUT_RELEASE_BOT_* 2026-06-03 17:40:57 -04:00
Will Pfleger
01bfff21d0 fix(release): address crossfire review feedback
Move PR body update before the git-diff early exit so the release PR
description always reflects the current commit list, even when
CHANGELOG.md is already up to date. Add git pull --rebase before push
to handle the unlikely case of a diverged PR branch.

Make the Buildkite trigger step non-blocking with continue-on-error,
capture the API response to log the build URL on success, and emit a
warning annotation on failure so engineers are alerted without blocking
the OSS release.
2026-06-03 16:30:29 -04:00
Will Pfleger
6c430a9f78 fix(ci): pin action SHAs with correct version comments
zizmor flagged the checkout SHA comment as `# v6` when it's actually
pinned to v6.0.2. Also pin create-github-app-token to its commit SHA
instead of the rolling `@v3` tag.
2026-06-03 15:43:48 -04:00
Will Pfleger
3c2edfeb8a feat(release): add GitHub App token, git-log release notes, and Buildkite automation
The sync-release-changelog workflow now uses a GitHub App token instead
of GITHUB_TOKEN so pushes to the release PR branch re-trigger CI (the
repo's ruleset requires 5 status checks to pass). Also hardens PR
discovery with --limit 100 --base main, and serializes concurrent runs
with cancel-in-progress: false to prevent non-fast-forward push races.

release.yml generates GitHub release notes from git log at release time
instead of reading from CHANGELOG.md, closing the merge-before-sync
race where someone merges the release PR before the changelog sync
finishes.

auto-tag-on-release-pr-merge.yml now triggers the internal
sprout-releases Buildkite pipeline via REST API after pushing the tag,
passing version metadata so the pipeline's input step is skipped.
2026-06-03 15:29:09 -04:00
Will Pfleger
15aadbd3c2 feat(release): auto-sync release PR changelog when main moves
When a release PR sits open and new commits merge to main, the release
binary includes those commits (the tag lands on the merge commit) but
the changelog doesn't mention them. The new sync-release-changelog
workflow fires on every push to main, finds any open same-repo
version-bump/* PR, and regenerates the CHANGELOG.md section from
<last-tag>..origin/main — keeping the PR's changelog accurate until it
merges.

Uses origin/main as the log range upper bound (not HEAD) to exclude the
release commit and any prior sync commits on the PR branch. No merge
commit is created; only CHANGELOG.md is touched. Fails loudly when
multiple release PRs are open to avoid targeting the wrong one.

Signed-off-by: Will Pfleger <wpfleger@block.xyz>
2026-06-03 12:57:36 -04:00
Will Pfleger
56c504a4c7 feat: code block rendering, syntax highlighting, and compose fixes (#803) 2026-06-02 14:43:08 -07:00
Wes
2349421304 feat: custom emoji — user-owned NIP-30 sets with a client-side union (#816)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com>
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: Pinky <44b8e82baa6e0e254e0208d68f335c283c94e7b78dd1fa10d5a49d3f13dd0435@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com>
2026-06-02 14:19:07 -07:00
Will Pfleger
7a12e50518 Install sprout-cli skill at repo root + fix desktop clippy (#818) 2026-06-02 17:11:30 -04:00
Will Pfleger
2ea3fd88d2 fix(desktop): use public re-export path for ensure_client_node_for_model (#824) 2026-06-02 16:59:05 -04:00
Will Pfleger
fb514c8918 refactor(desktop): feature-gate mesh-llm-sdk behind optional Cargo feature (#823) 2026-06-02 20:25:01 +00:00
Wes
b72eee365f fix(desktop): align workflow read/save commands to the frontend contract (#820)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
2026-06-02 12:52:56 -07:00
Will Pfleger
5b572d6f5e fix(desktop): disable mesh-llm auto-build to prevent git config corruption (#819) 2026-06-02 18:49:41 +00:00
Wes
192388a3cb fix(desktop): clear clippy lints in agents/mesh_llm commands (#817)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
2026-06-02 11:01:01 -07:00
Wes
41a3fc1589 fix(desktop): let channel members add members and bots without admin (#815)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
2026-06-02 09:55:09 -07:00
Wes
a25ca5d1bf Desktop #806 follow-ups: panel/inbox fixes + top-bar backdrop (#814)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
2026-06-02 08:45:04 -07:00
thomaspblock
5bed17a117 Fix desktop right-side panel chrome overlap (#806)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-02 07:37:36 -07:00
tlongwell-block
ede8ddb425 Sprout × mesh-llm: in-process mesh node (serve/consume) + relay admission (#798) 2026-06-02 10:28:20 -04:00
Will Pfleger
6481428e2b fix(desktop): resolve flaky integration tests via project-level assertion timeout (#812) 2026-06-01 18:48:37 -04:00
Wes
93183cb75d chore(release): release version 0.3.6 (#811) v0.3.6 2026-06-01 20:51:18 +00:00
Will Pfleger
5cbedb180a feat(mobile): add channel sections with relay sync (#800) 2026-06-01 20:32:44 +00:00
Will Pfleger
753d0fe264 feat(desktop): sync channel sections across devices via Nostr (#792) 2026-06-01 16:02:14 -04:00
Wes
2b052eb465 feat(media): support arbitrary file types with download cards (#810)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
2026-06-01 12:57:04 -07:00
Will Pfleger
247ac52391 feat(desktop): add user-defined channel sections to sidebar (#789) 2026-06-01 12:42:19 -07:00
Wes
d810608d85 feat(desktop): keyboard shortcuts — ⌘⇧N new channel + ↑-to-edit last message (#809)
Signed-off-by: npub1yxv5wk0u0fh6dwt925wntn7h397jvteyj4r87ttcd9xae7n2t3lqqj9jmm <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: npub1yxv5wk0u0fh6dwt925wntn7h397jvteyj4r87ttcd9xae7n2t3lqqj9jmm <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
2026-06-01 09:12:45 -07:00
Wes
39911e4285 fix(desktop): scope agent sweep to the owning app instance (#808)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
2026-06-01 15:49:41 +00:00
tlongwell-block
f2c266bac2 fix(desktop): route notification clicks to thread context (#790)
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com>
2026-06-01 11:31:30 -04:00
renovate[bot]
33e37de6e3 chore(deps): update all non-major dependencies (#804)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-01 08:26:26 -07:00
Wes
5670ffc6a6 fix(deps): re-pin isomorphic-git patch to 1.38.3 (#807)
Signed-off-by: npub1yxv5wk0u0fh6dwt925wntn7h397jvteyj4r87ttcd9xae7n2t3lqqj9jmm <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: npub1yxv5wk0u0fh6dwt925wntn7h397jvteyj4r87ttcd9xae7n2t3lqqj9jmm <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
2026-06-01 07:41:02 -07:00
renovate[bot]
033d92f103 chore(deps): update dependency @tanstack/react-query to v5.100.14 (#805)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-01 06:45:43 -07:00
thomaspblock
bc23620fcf Fix desktop glass chrome and inbox previews (#793)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-30 20:27:16 -07:00
Will Pfleger
9b9cf46127 refactor(just): slim down mobile-dev to just run Flutter (#801) 2026-05-29 20:44:32 -04:00
Will Pfleger
2a03851527 refactor: consolidate infra management into justfile + add mobile-dev (#797) 2026-05-29 18:26:24 -04:00
Wes
995189c223 chore(release): release version 0.3.5 (#799) v0.3.5 2026-05-29 14:48:49 -07:00
Wes
b820420909 feat(mobile): Pulse polish — flat feed, compose page, shared filter chips, like + accent fixes (#796)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
Co-authored-by: Brain <21994759fc7a6fa6b965551d35cfd7897d262f2495467f2d78694ddcfa6a5c7e@sprout-oss.stage.blox.sqprod.co>
2026-05-29 14:33:45 -07:00
Will Pfleger
10f37e4cab feat(desktop): add standalone Playwright screenshot helper (#795) 2026-05-29 17:10:56 -04:00
Will Pfleger
f34a21d32f feat(sprout-agent): load AGENTS.md and SKILL.md into system prompt (#762) 2026-05-29 14:44:33 -04:00
Will Pfleger
85861f33fe feat: add code block support to message composer (#788) 2026-05-29 11:38:10 -07:00
Will Pfleger
7beb0f8e68 fix(desktop): reap orphaned agent processes on shutdown and restart (#787) 2026-05-29 18:18:55 +00:00
Wes
8fc27b6554 chore(release): release version 0.3.4 (#786) v0.3.4 2026-05-29 09:50:08 -07:00
thomaspblock
d77b111b15 Update desktop navigation chrome and search (#779)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 08:26:41 -07:00
tlongwell-block
5ee2cd0517 feat(desktop): reload webview on Cmd/Ctrl+R (#785) 2026-05-29 10:24:56 -04:00
Will Pfleger
fa7febe40f fix(desktop): sync persona pack directory across worktree instances (#782) 2026-05-28 20:41:23 -04:00
Wes
a28a0e6b42 chore(release): release version 0.3.3 (#781) v0.3.3 2026-05-28 16:51:47 -07:00
Wes
c761a76ff2 fix(release): sync release tags during preflight (#780) 2026-05-28 16:29:25 -07:00
Will Pfleger
3f3ec64791 feat(desktop): thread-aware notifications with mutable follow/mute controls (#761) 2026-05-28 18:43:41 -04:00
Will Pfleger
03e678cfbc fix(desktop): improve model picker message and runtime dropdown clarity (#778) 2026-05-28 18:21:12 -04:00
Wes
9db8f6ccb8 desktop: float unread indicator + fix sidebar scroll jump (#777)
Signed-off-by: Wes <wesbillman@users.noreply.github.com>
2026-05-28 15:15:19 -07:00
Will Pfleger
3fbee555f0 chore(hooks): standardize check/fix convention with auto-fix pre-commit (#776) 2026-05-28 17:42:35 -04:00
tlongwell-block
0f89ad1692 web: clickable repo tree + per-file blob viewer (#773)
Signed-off-by: npub1qyvc0c5kl4gqv2fd97fsk46tu378sqgy35vc83rvgfwne90sel7s0ed67d <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@sprout-oss.stage.blox.sqprod.co>
Co-authored-by: npub1qyvc0c5kl4gqv2fd97fsk46tu378sqgy35vc83rvgfwne90sel7s0ed67d <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@sprout-oss.stage.blox.sqprod.co>
2026-05-28 15:55:03 -04:00
tlongwell-block
61297ac80a fix(agent): keep parallel tool-result messages contiguous on OpenAI Chat (Databricks image fix) (#770)
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com>
2026-05-28 15:25:51 -04:00