Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
3b8567a
fix(desktop): remove Projects overview card fills (#3416)
thomaspblock Jul 30, 2026
262f239
fix(cli): resolve agents from owner records (#3178)
johnmatthewtennant Jul 30, 2026
7fb008f
fix(desktop): explain open agent access (#2561)
daveh-beep Jul 30, 2026
310df2e
desktop: restore direct community member adds (#3634)
wesbillman Jul 30, 2026
85edc05
feat(mobile): desktop-parity emoji and thread experience (#3485)
klopez4212 Jul 30, 2026
c55e421
fix(desktop): remove remaining Projects panel fills (#3742)
thomaspblock Jul 30, 2026
4672ee5
Fix pending message feedback (#3543)
klopez4212 Jul 30, 2026
d0a24bc
Add macOS agent menu-bar menu (#3565)
klopez4212 Jul 30, 2026
7358940
fix: align responsive agent views (#3688)
klopez4212 Jul 30, 2026
c9aa555
desktop: enable getUserMedia in the Linux WebKitGTK webview (#3607)
mbeckley17 Jul 30, 2026
9a386a0
Refine agent sharing dialog (#3699)
klopez4212 Jul 30, 2026
33bf7ca
docs(nips): specify kind:30621 multi-repo projects (NIP-MP) (#3163)
wpfleger96 Jul 30, 2026
4933672
feat(mesh): upgrade embedded mesh to v0.74 and harden shared compute …
tlongwell-block Jul 30, 2026
02be413
feat(catalog): resolve publisher display name in catalog detail pane …
wpfleger96 Jul 30, 2026
53771c8
fix(acp): preserve truncated thread context (#3340)
cameronhotchkies Jul 30, 2026
61b96c9
fix(catalog): update Amp description (#3758)
wesbillman Jul 30, 2026
06582ee
Render mobile agent mention chips (#3702)
klopez4212 Jul 30, 2026
f44b5a2
fix(desktop): reuse profiles when joining communities (#2155)
baxen Jul 30, 2026
bd0bff2
feat(desktop): add password-protected backups in settings (#3701)
tellaho Jul 30, 2026
cca8839
Make relay reconnect backoff authoritative (#3774)
wesbillman Jul 30, 2026
1dfd89e
feat(release): make desktop releases immutable (#3568)
wesbillman Jul 30, 2026
f48f3f0
Fix video reviews in thread replies (#3719)
klopez4212 Jul 30, 2026
6e419b9
Tighten continuation message rows (#3724)
klopez4212 Jul 30, 2026
bf139e8
perf(presence): reduce heartbeat frequency (#3783)
tlongwell-block Jul 30, 2026
4d47aa8
feat(desktop): improve agent activity header ui (#3321)
tellaho Jul 30, 2026
1b3ff96
Add Devin as a preset ACP harness (#3225)
fenner888 Jul 30, 2026
dba97ee
fix(db): isolate usage metrics advisory-lock test on scratch DB (#3670)
NanoRisk6 Jul 30, 2026
d40a332
feat(desktop): raise the install ceiling and make installs observable…
wpfleger96 Jul 30, 2026
5ef7a3c
Merge remote-tracking branch 'upstream/main' into kannaka-sync-upstre…
flaukowski Jul 30, 2026
47953ba
ci(sprig): create the rolling release instead of assuming it exists
flaukowski Jul 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 37 additions & 6 deletions .github/workflows/auto-tag-on-release-pr-merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ name: Auto-tag on Release PR Merge
# prefix; the main chart lane also auto-detects a Chart.yaml version bump so
# a chart feature PR can publish its own new version when merged:
#
# version-bump/<v> → tag v<v> → release.yml (desktop app)
# version-bump/<v> → tag desktop-v<v> → release.yml (desktop app)
# relay-release/<v> → tag relay-v<v> → docker.yml (relay image)
# chart-release/<v> → tag chart-v<v> → helm-chart.yml (main helm chart)
# push-chart-release/<v> → tag push-chart-v<v> → push-gateway-helm-chart.yml
Expand Down Expand Up @@ -35,6 +35,11 @@ permissions:

jobs:
auto-tag:
permissions:
contents: read
pull-requests: read
checks: read
statuses: read
if: >
github.event.pull_request.merged == true &&
github.event.pull_request.head.repo.full_name == github.repository
Expand All @@ -57,7 +62,7 @@ jobs:
case "$BRANCH" in
version-bump/*)
VERSION="${BRANCH#version-bump/}"
TAG_PREFIX="v" ;;
TAG_PREFIX="desktop-v" ;;
relay-release/*)
VERSION="${BRANCH#relay-release/}"
TAG_PREFIX="relay-v" ;;
Expand Down Expand Up @@ -85,9 +90,34 @@ jobs:
{
echo "enabled=true"
echo "tag=${TAG_PREFIX}${VERSION}"
if [[ "$TAG_PREFIX" == desktop-v ]]; then
echo "target_sha=${{ github.event.pull_request.head.sha }}"
echo "desktop=true"
else
echo "target_sha=$GITHUB_SHA"
echo "desktop=false"
fi
} >> "$GITHUB_OUTPUT"
echo "Tagging ${TAG_PREFIX}${VERSION}"


- name: Verify immutable reviewed desktop candidate
if: steps.release.outputs.desktop == 'true'
env:
GH_TOKEN: ${{ github.token }}
VERSION: ${{ steps.release.outputs.tag }}
PR_NUMBER: ${{ github.event.pull_request.number }}
PR_HEAD_SHA: ${{ github.event.pull_request.head.sha }}
PR_HEAD_REF: ${{ github.event.pull_request.head.ref }}
PR_BASE_REF: ${{ github.event.pull_request.base.ref }}
PR_HEAD_REPO: ${{ github.event.pull_request.head.repo.full_name }}
PR_PUSHER: ${{ github.event.pull_request.head.user.login }}
MERGE_SHA: ${{ github.event.pull_request.merge_commit_sha }}
run: |
VERSION="${VERSION#desktop-v}"
export VERSION
scripts/verify-desktop-release-merge.sh

- name: Create release tagger token
if: steps.release.outputs.enabled == 'true'
id: release-tagger
Expand All @@ -102,21 +132,22 @@ jobs:
env:
GH_TOKEN: ${{ steps.release-tagger.outputs.token }}
TAG: ${{ steps.release.outputs.tag }}
TARGET_SHA: ${{ steps.release.outputs.target_sha }}
run: |
set -euo pipefail
# Check gh's exit status, not its output. A missing ref returns a 404
# JSON body on stdout, which must not be mistaken for an existing tag.
if gh api "repos/$GITHUB_REPOSITORY/git/ref/tags/$TAG" --silent 2>/dev/null; then
EXISTING_SHA="$(gh api "repos/$GITHUB_REPOSITORY/commits/$TAG" --jq .sha)"
if [ "$EXISTING_SHA" = "$GITHUB_SHA" ]; then
echo "Tag $TAG already exists at $GITHUB_SHA — skipping tag creation"
if [ "$EXISTING_SHA" = "$TARGET_SHA" ]; then
echo "Tag $TAG already exists at $TARGET_SHA — skipping tag creation"
exit 0
else
echo "::error::Tag $TAG already exists at $EXISTING_SHA (expected $GITHUB_SHA)"
echo "::error::Tag $TAG already exists at $EXISTING_SHA (expected $TARGET_SHA)"
exit 1
fi
fi
gh api --method POST "repos/$GITHUB_REPOSITORY/git/refs" \
-f ref="refs/tags/$TAG" \
-f sha="$GITHUB_SHA" \
-f sha="$TARGET_SHA" \
--silent
2 changes: 2 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,8 @@ jobs:
- '.github/workflows/ci.yml'
- name: Release workflow source contract
run: scripts/test-release-ref-contract.sh
- name: Desktop release candidate contract
run: scripts/test-desktop-release-candidate.sh
- name: Mobile release contract
run: |
scripts/test-mobile-release-contract.sh
Expand Down
38 changes: 38 additions & 0 deletions .github/workflows/prepare-desktop-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Prepare Desktop Release

on:
workflow_dispatch:
inputs:
version:
description: Semver to prepare (for example 0.5.1)
required: true

env:
RELEASE_AUTOMATION_NAME: Carl
RELEASE_AUTOMATION_EMAIL: c7ebe626f000404285d3686e1dc74cc07cc60a9754a150041ba132e14bd3e2ec@buzz.block.builderlab.xyz

jobs:
prepare:
if: github.repository == 'block/buzz'
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Create short-lived release preparer token
id: preparer
uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
with:
client-id: ${{ vars.BUZZ_RELEASE_TAGGER_CLIENT_ID }}
private-key: ${{ secrets.BUZZ_RELEASE_TAGGER_PRIVATE_KEY }}
permission-contents: write
permission-pull-requests: write
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
fetch-depth: 0
token: ${{ steps.preparer.outputs.token }}
- uses: cashapp/activate-hermit@cea9af7913204a965fd488637a8d1811bba2e616 # v1
- name: Prepare immutable candidate and open or update PR
env:
GH_TOKEN: ${{ steps.preparer.outputs.token }}
VERSION: ${{ inputs.version }}
run: scripts/prepare-desktop-release.sh "$VERSION"
Loading
Loading