Skip to content

feat(desktop): add app-owned conversation reader - #7017

Open
timigod wants to merge 2 commits into
block:mainfrom
contextdotbuild:fix/app-owned-buzz-read-upstream
Open

feat(desktop): add app-owned conversation reader#7017
timigod wants to merge 2 commits into
block:mainfrom
contextdotbuild:fix/app-owned-buzz-read-upstream

Conversation

@timigod

@timigod timigod commented Aug 29, 2026

Copy link
Copy Markdown

Summary

  • add a credentialless buzz-read messages client for bounded programmatic conversation reads
  • perform authenticated relay queries inside the already-running signed Buzz Desktop process through an owner-only Unix socket, so the private key never crosses the process boundary
  • require the production bundle identifier, Block Developer ID signature and Team ID, a keyring-backed current identity, the connected Desktop PID, and unchanged socket/identity/workspace scope through response completion
  • reject stale, replayed, oversized, malformed, out-of-scope, or identity-changing reads and return only bounded, redacted message projections
  • bundle the Unix-only sidecar through the existing signed release and canary workflows without changing the normal buzz CLI or message-reply behavior

Related issue

Closest related work: #5884. That PR explicitly lets the CLI read the Desktop secret after opt-in. This PR serves the narrower operator-read use case without exporting the private key from the signed Desktop process, so it is complementary rather than a duplicate.

Testing

  • cargo test --manifest-path desktop/src-tauri/Cargo.toml --target-dir target operator_read (18 passed)
  • cargo test --manifest-path desktop/src-tauri/Cargo.toml --target-dir target tauri_platform_configs_bundle_unix_only_sidecars_on_supported_hosts
  • scripts/test-buzz-read-packaging.sh (copies real fixture binaries through the bundler)
  • scripts/test-signed-canary-contract.sh
  • CHECK_FILE_SIZES_BASE=00e61eafa917d296104006576b7a2ddbfd58bb5a node desktop/scripts/check-file-sizes.mjs
  • cargo fmt --manifest-path desktop/src-tauri/Cargo.toml --all -- --check
  • cargo clippy --manifest-path desktop/src-tauri/Cargo.toml --target-dir target --lib --bin buzz-read -- -D warnings
  • git diff --check
  • independent security/correctness review of exact head a033e8a97d67182a23e3e2a312b5ac35e83b40fc: GO, no MUST_FIX findings

This has no UI change. A live production read is deliberately deferred until the commit is merged and available in a Block-signed distribution; no ad-hoc or unsigned Desktop build was installed.

Signed-off-by: Timi Ajiboye <trypio00@gmail.com>
Signed-off-by: Timi Ajiboye <trypio00@gmail.com>
@timigod
timigod requested a review from a team as a code owner August 29, 2026 04:17
@github-actions

Copy link
Copy Markdown

🔐 Codex Security Review

Status: review required for the current range.

The current range is 00e61eafa917d296104006576b7a2ddbfd58bb5a...a033e8a97d67182a23e3e2a312b5ac35e83b40fc.
A new review must complete for this exact range. When manual authorization
is required, a Block organization member must comment exactly
@buzz-security-review a033e8a97d67182a23e3e2a312b5ac35e83b40fc to authorize a new review.
Any previous review applies only to its recorded range.

@timigod

timigod commented Aug 29, 2026

Copy link
Copy Markdown
Author

@block/buzz-oss-team Could a Block member unblock the current exact head in two places?

  1. Authorize the SHA-bound security review with this exact command:
    @buzz-security-review a033e8a97d67182a23e3e2a312b5ac35e83b40fc
  2. Approve the pending first-run fork workflows for CI and Desktop Release Candidate.

The branch is clean, DCO and zizmor pass, focused/security checks are documented in the PR, and no unsigned build has been installed.

@timigod

timigod commented Aug 29, 2026

Copy link
Copy Markdown
Author

Local verification update for exact head a033e8a:

  • CHECK_FILE_SIZES_BASE=upstream/main just ci passed formatting, file-size checks, workspace/Desktop/Tauri/Web/Flutter static checks, the reader-specific tests, and the reader/compatibility tests reached during the full suite.
  • The full run stopped in the unchanged upstream test managed_agents::discovery::bounded_command::tests::returns_when_escaped_descendant_retains_pipe after 3,022 Desktop tests passed (1 failed, 18 ignored). The failure is an empty descendant-PID parse at bounded_command.rs:705. An isolated exact rerun reproduced it. This branch has no diff from upstream/main in that file.
  • All 18 focused reader tests are green, including signed-peer validation, PID-bound receipts, replay/freshness rejection, identity-generation A-B-A fencing, bounds/redaction, and unchanged CLI/depth-one reply behavior.
  • GitHub CI and Desktop Release Candidate remain action_required with zero jobs until a Block maintainer approves the fork workflows. The SHA-bound security review also still needs the exact authorization already requested above.

No unsigned build has been installed and no live identity or Keychain state has been touched.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant