Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
740edf7
feat(acp): add isolated browser MCP bridge
gagan114662 Jul 28, 2026
bd5e2dc
Merge pull request #1 from gagan114662/fix/acp-browser-broker
gagan114662 Jul 28, 2026
9bee25b
Add local Guardian findings to agent observer (#2)
gagan114662 Jul 30, 2026
caca640
Harden local Guardian findings integration
gagan114662 Jul 30, 2026
a26727b
fix(desktop): close Guardian review blockers
gagan114662 Jul 31, 2026
6130a38
Merge pull request #3 from gagan114662/feat/numbat-sidecar
gagan114662 Jul 31, 2026
bbb4aae
Bind Numbat findings to managed agents
gagan114662 Jul 31, 2026
0bea97f
Merge pull request #4 from gagan114662/fix/numbat-agent-identity
gagan114662 Jul 31, 2026
4b17b9d
Clear desktop check debt
gagan114662 Jul 31, 2026
511d744
Merge pull request #5 from gagan114662/fix/guardian-followups
gagan114662 Jul 31, 2026
93a12ed
Complete Guardian finding control loop
gagan114662 Jul 31, 2026
946fd6d
Merge pull request #6 from gagan114662/fix/guardian-e2e-correlation
gagan114662 Jul 31, 2026
0c2e81e
feat(guardian): verify callbacks and bound retention
gagan114662 Jul 31, 2026
1f8b7a4
fix(guardian): close lifecycle retention races
gagan114662 Aug 1, 2026
ba6f1e0
Merge pull request #7 from gagan114662/feat/guardian-lifecycle
gagan114662 Aug 1, 2026
f9dd575
feat(guardian): integrate native policy and observer controls
gagan114662 Aug 2, 2026
d6a61a7
feat(guardian): manage verified Numbat lifecycle
gagan114662 Aug 2, 2026
fb5fd67
fix(guardian): reject symlinked component stores
gagan114662 Aug 2, 2026
a57fa58
feat(guardian): report and cancel installs
gagan114662 Aug 2, 2026
7075f2d
feat(guardian): retain one verified rollback version
gagan114662 Aug 2, 2026
75ff6d9
feat(guardian): bundle verified launcher
gagan114662 Aug 2, 2026
8b011b0
test(guardian): cover private Mac install state
gagan114662 Aug 2, 2026
14e4776
fix(guardian): preserve deploy policy after rebase
gagan114662 Aug 2, 2026
ecaf9be
fix(guardian): address review portability gaps
gagan114662 Aug 2, 2026
6766632
fix(guardian): close raw policy editor bypass
gagan114662 Aug 2, 2026
8a9e233
feat(guardian): publish fail-closed runtime coverage
gagan114662 Aug 2, 2026
cdbd55c
Merge current main into Guardian integration
gagan114662 Aug 3, 2026
cf19cea
Merge fork main into Guardian integration
gagan114662 Aug 3, 2026
b6414cf
fix: clear Guardian CI ratchets
gagan114662 Aug 4, 2026
054d14e
fix: match Guardian merge checks
gagan114662 Aug 4, 2026
9d5915d
ci: keep pull request image caches read-only
gagan114662 Aug 4, 2026
6dc80d2
Fix remaining Guardian CI failures
gagan114662 Aug 4, 2026
e295704
fix(guardian): use stable Windows file identity
gagan114662 Aug 4, 2026
a1cbda4
style(guardian): match pinned Rust formatter
gagan114662 Aug 4, 2026
e111cac
fix(guardian): make Windows storage tests portable
gagan114662 Aug 4, 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
3 changes: 2 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -980,7 +980,7 @@ jobs:
shell: bash
run: |
mkdir -p desktop/src-tauri/binaries
for bin in buzz-acp buzz-agent buzz-dev-mcp git-credential-nostr buzz; do
for bin in buzz-acp buzz-agent buzz-dev-mcp git-credential-nostr buzz buzz-guardian-numbat; do
touch "desktop/src-tauri/binaries/${bin}-${TARGET}.exe"
done
- name: Clippy (workspace)
Expand Down Expand Up @@ -1058,6 +1058,7 @@ jobs:
touch "desktop/src-tauri/binaries/buzz-dev-mcp-$TARGET"
touch "desktop/src-tauri/binaries/git-credential-nostr-$TARGET"
touch "desktop/src-tauri/binaries/buzz-$TARGET"
touch "desktop/src-tauri/binaries/buzz-guardian-numbat-$TARGET"
# Mesh rev is derived from Cargo.lock so a dependency bump needs no
# lockstep edit here; the cache key tracks it automatically.
- name: Resolve mesh-llm rev
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ jobs:
cache-from: |
type=registry,ref=${{ env.IMAGE_NAME }}-buildcache:${{ matrix.arch }}
cache-to: |
${{ (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) && format('type=registry,ref={0}-buildcache:{1},mode=max,compression=zstd', env.IMAGE_NAME, matrix.arch) || '' }}
${{ github.event_name != 'pull_request' && format('type=registry,ref={0}-buildcache:{1},mode=max,compression=zstd', env.IMAGE_NAME, matrix.arch) || '' }}

- name: Build and push debug image by digest
id: build-debug
Expand Down Expand Up @@ -402,7 +402,7 @@ jobs:
labels: ${{ steps.meta.outputs.labels }}
outputs: type=image,name=ghcr.io/block/buzz-push-gateway,push-by-digest=true,name-canonical=true,push=${{ github.event_name != 'pull_request' }}
cache-from: type=registry,ref=ghcr.io/block/buzz-push-gateway-buildcache:${{ matrix.arch }}
cache-to: ${{ (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) && format('type=registry,ref=ghcr.io/block/buzz-push-gateway-buildcache:{0},mode=max,compression=zstd', matrix.arch) || '' }}
cache-to: ${{ github.event_name != 'pull_request' && format('type=registry,ref=ghcr.io/block/buzz-push-gateway-buildcache:{0},mode=max,compression=zstd', matrix.arch) || '' }}
- name: Export digest
if: github.event_name != 'pull_request'
env:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/linux-canary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,7 @@ jobs:
- name: Build sidecars
run: |
cargo build --release -p buzz-acp -p buzz-agent -p buzz-backend-kubernetes -p buzz-dev-mcp -p git-credential-nostr -p buzz-cli
cargo build --release --manifest-path desktop/src-tauri/Cargo.toml --bin buzz-guardian-numbat
./scripts/bundle-sidecars.sh

- name: Build Linux Tauri app
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ jobs:
- name: Build sidecars
run: |
cargo build --release -p buzz-acp -p buzz-agent -p buzz-backend-kubernetes -p buzz-dev-mcp -p git-credential-nostr -p buzz-cli
cargo build --release --manifest-path desktop/src-tauri/Cargo.toml --bin buzz-guardian-numbat
./scripts/bundle-sidecars.sh

# Mesh rev derived from Cargo.lock (no lockstep edit on dep bump); cache key tracks it.
Expand Down Expand Up @@ -309,6 +310,7 @@ jobs:
- name: Build sidecars
run: |
cargo build --release --target "$TARGET" -p buzz-acp -p buzz-agent -p buzz-backend-kubernetes -p buzz-dev-mcp -p git-credential-nostr -p buzz-cli
cargo build --release --target "$TARGET" --manifest-path desktop/src-tauri/Cargo.toml --bin buzz-guardian-numbat
./scripts/bundle-sidecars.sh "$TARGET"

- name: Build unsigned Tauri app
Expand Down Expand Up @@ -564,6 +566,7 @@ jobs:
- name: Build sidecars
run: |
cargo build --release -p buzz-acp -p buzz-agent -p buzz-backend-kubernetes -p buzz-dev-mcp -p git-credential-nostr -p buzz-cli
cargo build --release --manifest-path desktop/src-tauri/Cargo.toml --bin buzz-guardian-numbat
./scripts/bundle-sidecars.sh

- name: Generate release config
Expand Down Expand Up @@ -713,6 +716,7 @@ jobs:
shell: bash
run: |
cargo build --release --target "$TARGET" -p buzz-acp -p buzz-agent -p buzz-dev-mcp -p git-credential-nostr -p buzz-cli
cargo build --release --target "$TARGET" --manifest-path desktop/src-tauri/Cargo.toml --bin buzz-guardian-numbat
./scripts/bundle-sidecars.sh "$TARGET"

- name: Build Windows NSIS installer (unsigned)
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/signed-macos-canary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ jobs:
- name: Build sidecars
run: |
cargo build --release -p buzz-acp -p buzz-agent -p buzz-backend-kubernetes -p buzz-dev-mcp -p git-credential-nostr -p buzz-cli
cargo build --release --manifest-path desktop/src-tauri/Cargo.toml --bin buzz-guardian-numbat
./scripts/bundle-sidecars.sh

# Mesh rev derived from Cargo.lock (no lockstep edit on dep bump); cache key tracks it.
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/sprig-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ jobs:
cache-from: |
type=registry,ref=${{ env.IMAGE_NAME }}-buildcache:${{ matrix.arch }}
cache-to: |
${{ (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) && format('type=registry,ref={0}-buildcache:{1},mode=max,compression=zstd', env.IMAGE_NAME, matrix.arch) || '' }}
${{ (github.repository == 'block/buzz' && github.event_name != 'pull_request') && format('type=registry,ref={0}-buildcache:{1},mode=max,compression=zstd', env.IMAGE_NAME, matrix.arch) || '' }}

- name: Export digest
if: github.event_name != 'pull_request'
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/windows-canary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,7 @@ jobs:
shell: bash
run: |
cargo build --release --target "$TARGET" -p buzz-acp -p buzz-agent -p buzz-dev-mcp -p git-credential-nostr -p buzz-cli
cargo build --release --target "$TARGET" --manifest-path desktop/src-tauri/Cargo.toml --bin buzz-guardian-numbat
./scripts/bundle-sidecars.sh "$TARGET"

- name: Build Windows NSIS installer (unsigned)
Expand Down
6 changes: 5 additions & 1 deletion Justfile
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ _ensure-sidecar-stubs:
set -euo pipefail
TARGET=$(rustc -vV | sed -n 's|host: ||p')
mkdir -p desktop/src-tauri/binaries
SIDECARS=(buzz-acp buzz-agent buzz-dev-mcp git-credential-nostr buzz)
SIDECARS=(buzz-acp buzz-agent buzz-dev-mcp git-credential-nostr buzz buzz-guardian-numbat)
if [[ "$TARGET" != *windows* ]]; then
SIDECARS+=(buzz-backend-kubernetes)
fi
Expand Down Expand Up @@ -492,12 +492,16 @@ desktop-standalone *ARGS: _ensure-sidecar-stubs
set -euo pipefail
export PATH="{{justfile_directory()}}/bin:$PATH"
cargo build -p buzz-acp -p buzz-agent -p buzz-backend-kubernetes -p buzz-dev-mcp -p buzz-cli -p git-credential-nostr
cargo build --manifest-path desktop/src-tauri/Cargo.toml --bin buzz-guardian-numbat
TARGET=$(rustc -vV | sed -n 's|host: ||p')
TARGET_DIR=$(cargo metadata --format-version 1 --no-deps | node -p "JSON.parse(require('fs').readFileSync(0, 'utf8')).target_directory")
DESKTOP_TARGET_DIR=$(cargo metadata --manifest-path desktop/src-tauri/Cargo.toml --format-version 1 --no-deps | node -p "JSON.parse(require('fs').readFileSync(0, 'utf8')).target_directory")
for bin in buzz-acp buzz-agent buzz-backend-kubernetes buzz-dev-mcp git-credential-nostr buzz; do
cp "${TARGET_DIR}/debug/${bin}" "desktop/src-tauri/binaries/${bin}-${TARGET}"
chmod +x "desktop/src-tauri/binaries/${bin}-${TARGET}"
done
cp "${DESKTOP_TARGET_DIR}/debug/buzz-guardian-numbat" "desktop/src-tauri/binaries/buzz-guardian-numbat-${TARGET}"
chmod +x "desktop/src-tauri/binaries/buzz-guardian-numbat-${TARGET}"
cd {{desktop_dir}}
[[ -d node_modules ]] || pnpm install
unset BUZZ_PRIVATE_KEY BUZZ_SHARE_IDENTITY
Expand Down
Loading