chore(mesh): upgrade MeshLLM to 0.76.2 - #7559
Conversation
Pin the desktop and relay smoke dependencies to the stable release and regenerate both lockfiles. Match its Ed25519 and SQLite dependencies, retaining unsigned SQL conversions in non-mesh desktop builds. Use the merged SQLx SQLite compatibility fix until a crates.io release includes transact-rs/sqlx#4402. The PostgreSQL driver remains on crates.io SQLx 0.9.0. Signed-off-by: Thinker <75d8a808fa21bb8d1812e080cf471db601c6e8e6a62dcd516d37531e83a7bb77@meshllm.communities.buzz.xyz>
🔐 Codex Security Review
|
Two follow-ups to the MeshLLM 0.76.0 upgrade, both consequences of the same thing: Buzz was relying on Cargo feature/dependency unification with mesh-llm rather than declaring what it needs. 1. Linux Secret Service sessions dropped to plaintext. Until 0.76, mesh-llm enabled `crypto-rust` on the *same* keyring 3 the desktop uses, so Buzz inherited it through feature unification. 0.76 moves mesh-llm to keyring 4, and desktop's own declaration only asked for `sync-secret-service,vendored`. `keyring-3.6.3/src/secret_service.rs:140-143,333-336` selects `EncryptionType::Dh` only under a crypto feature and `Plain` otherwise, so Linux mesh-enabled builds lost Diffie-Hellman transit encryption for nsec reads/writes over the D-Bus session bus. Visible in the lockfile: `dbus-secret-service 4.1.0` lost aes/block-padding/cbc/hkdf/sha2/num/ fastrand/once_cell. Fixed by requesting `crypto-rust` explicitly. It restores exactly the packages the pre-upgrade lock already had, so it costs nothing. 2. Desktop E2E Relay exceeded its 30 minute timeout. The mesh-llm SDK and native runtime were dev-dependencies of `buzz-relay`. A dev-dependency feeds *every* target of its package, so `cargo nextest archive -p buzz-relay` had to compile the whole mesh-llm + skippy + rmcp + hf-xet tree before a single relay unit test could build — and the mesh pin bump invalidated that cache wholesale. The six harnesses that need it are examples that drive the relay as an external process; none reference `buzz_relay::`. Moved them to a new examples-only crate `buzz-mesh-smoke` so the cost lands only on the Mesh Lifecycle workflow that actually runs them. buzz-relay's dev graph: 692 -> 453 packages, with zero mesh-llm, skippy, rmcp, hf-xet or keyring entries remaining. Verified: `cargo clippy -p buzz-mesh-smoke -p buzz-relay --all-targets -- -D warnings` clean; all six harnesses compile in the new crate; `cargo test -p buzz-relay --lib` 1034 passed, with 6 pre-existing `Sqlx(PoolTimedOut)` media tests that require Postgres (not run locally). Not verified locally: Linux keyring runtime behaviour and the Mesh Lifecycle smoke, both of which need CI. Co-authored-by: Michael Neale <michael.neale@gmail.com> Signed-off-by: Michael Neale <michael.neale@gmail.com>
Co-authored-by: Michael Neale <michael.neale@gmail.com> Signed-off-by: Michael Neale <michael.neale@gmail.com>
Preserve the explicit Linux keyring crypto feature and dedicated smoke crate. Refresh only Mesh source packages in both lockfiles; all non-Mesh package records remain unchanged from the main merge. Co-authored-by: Michael Neale <michael.neale@gmail.com> Signed-off-by: Michael Neale <michael.neale@gmail.com>
Bump all eight Mesh git dependencies from v0.76.1 (ff18c0b5a) to v0.76.2 (a0c1e66b0) in desktop/src-tauri and buzz-mesh-smoke. Both lockfiles resolve all 47 Mesh packages to the v0.76.2 tag; all non-Mesh lock records are unchanged. Co-authored-by: Galadriel <b81c841ed20a8e17caf4e6fac2f6f3bc61d304c84b8394720f6d00f37538c47e@meshllm.communities.buzz.xyz> Signed-off-by: Michael Neale <michael.neale@gmail.com>
* origin/main: Fix Apple Silicon iOS simulator builds (#7646) Signed-off-by: Michael Neale <michael.neale@gmail.com>
|
🤖 Merged |
* origin/main: feat(agents): humanize uncurated Databricks model ids with a label grammar (#7844) fix: route databricks claude fqns to anthropic messages (#7829) feat(relay): add opt-in newest-first thread windows (#7823) refactor: move agent Git bootstrap into ACP harness (#7819) Use worker snapshots for relay storage metrics (#7845) fix(hooks): strip repo-local git env from pre-push test lanes (#7841) fix(mobile-infra): render push grant lifetimes as decimal in chart 0.3.2 (#7820) fix(agent): preserve Databricks Opus UC reasoning and tool continuation (#7840) feat(canvas): add version history with atomic restore (#6780) chore(release): release Buzz Desktop version 0.5.24 (#7817) test(desktop): stabilize unread and audio release smoke fixtures (#7821) fix(desktop): remember Inbox unread-only choice (#7672) feat(mobile-infra): support development App Attest (#7744) docs(nip-fi): clarify federated identity amendments (#7803) fix(desktop): refresh channels after access-revoked closure (#7784) fix(desktop): bound startup request bursts and recover quota refusals (#7790) fix(audit): frame hash inputs with TLV (#7492) fix(admin): allow cold storage worker DB startup (#7770) Signed-off-by: Michael Neale <michael.neale@gmail.com>
Merging origin/main (d01e5f8) into the v0.76.2 branch left the root Cargo.lock unresolvable under --locked: main's appattest dependency pulls in openssl 0.10.80 / openssl-sys 0.9.116 (+ foreign-types, openssl-macros) which the branch had dropped when the vendored openssl-src path went away with keyring 4 via mesh-llm. Re-add exactly main's openssl records (pinned to main's versions, not latest) and tempfile's getrandom 0.4.3 edge. No Mesh record changed; desktop Cargo.lock untouched. Co-authored-by: Gu <gu@buzz> Signed-off-by: Michael Neale <michael.neale@gmail.com>
|
Merged CI on 3610484: all green. Desktop Smoke E2E (4) needed one rerun — |
There was a problem hiding this comment.
Carl, an automated reviewer, commenting via Wes’s GitHub account.
P3: update the moved examples’ usage commands. All six headers still tell operators to use cargo run -p buzz-relay --example ..., but buzz-relay no longer owns those targets, so the documented command fails. Replace the package with buzz-mesh-smoke in all six headers. The executable Justfile and CI callers are already correct. This is non-blocking.
wesbillman
left a comment
There was a problem hiding this comment.
Carl, an automated reviewer, commenting via Wes’s GitHub account.
No blocking code findings
Reviewed head 3610484de223da2964f6527224c75541b96c01b2 against base d01e5f82058463709a22e93bb4cd795da5f53e10. No blocking regression found in dependency/feature alignment, SQLite patch scope, identity/admission integration, runtime/model API compatibility, or smoke relocation. This is a review comment, not an approval.
- Non-blocking follow-up: correct the six moved examples’ usage headers (P3 finding). Executable Justfile and CI callers are already correct.
- Operational caveats, not blockers: split-stage protocol generation changes from 6 to 8. Upstream capability checks and split participant selection exclude incompatible peers; upgrade split-serving participants together. Bundled-runtime startup now also consults the release catalog, with a 60-second per-request timeout and bundle fallback on catalog failure. It can prefer/download a better GPU runtime; an adjacent bundle no longer implies network-free startup.
- Validation: lifecycle CI passed real relay discovery, trusted inference, outsider rejection, and continued trusted inference. Desktop CI passed default tests and 3,339 Mesh-enabled library tests; Windows all-target checks also passed. The checked-out CI merge
fdf9fa2has the identical tree to reviewed head (63fe9570). No suites were duplicated locally. Installed-app UI, GPU/split execution, and live OS-keyring upgrades remain unverified here. The security bot’s existing review is explicitly stale, not current-range evidence.
…n-surface * origin/main: fix(ci): consume the published MinIO image (#7870) fix(mobile): converge sidebar managers on relay head with resume re-read (#7806) fix(ci): bootstrap the reusable MinIO image in GHCR (#7869) Discover alternate Buzz ACP commands (#6948) fix(hooks): surface nextest failures and stale pnpm deps in pre-push (#7850) feat(acp): run one prepared task from a file or stdin (#7851) Fix mobile heart and warning emoji with native font fallback (#7842) chore(mesh): upgrade MeshLLM to 0.76.2 (#7559) feat(agents): humanize uncurated Databricks model ids with a label grammar (#7844) fix: route databricks claude fqns to anthropic messages (#7829) feat(relay): add opt-in newest-first thread windows (#7823) refactor: move agent Git bootstrap into ACP harness (#7819) Use worker snapshots for relay storage metrics (#7845) fix(hooks): strip repo-local git env from pre-push test lanes (#7841) fix(mobile-infra): render push grant lifetimes as decimal in chart 0.3.2 (#7820) Signed-off-by: Duncan <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@buzz.block.builderlab.xyz>
…rcement * origin/main: fix(ci): consume the published MinIO image (#7870) fix(mobile): converge sidebar managers on relay head with resume re-read (#7806) fix(ci): bootstrap the reusable MinIO image in GHCR (#7869) Discover alternate Buzz ACP commands (#6948) fix(hooks): surface nextest failures and stale pnpm deps in pre-push (#7850) feat(acp): run one prepared task from a file or stdin (#7851) Fix mobile heart and warning emoji with native font fallback (#7842) chore(mesh): upgrade MeshLLM to 0.76.2 (#7559) feat(agents): humanize uncurated Databricks model ids with a label grammar (#7844) Co-authored-by: Will Pfleger <pfleger.will@gmail.com> Signed-off-by: Will Pfleger <pfleger.will@gmail.com> # Conflicts: # Cargo.lock # crates/buzz-relay/Cargo.toml
…ead-counters Co-authored-by: Will Pfleger <pfleger.will@gmail.com> Signed-off-by: Will Pfleger <pfleger.will@gmail.com> * origin/main: chore(release): release Buzz Desktop version 0.5.25 (#7867) fix(ci): consume the published MinIO image (#7870) fix(mobile): converge sidebar managers on relay head with resume re-read (#7806) fix(ci): bootstrap the reusable MinIO image in GHCR (#7869) Discover alternate Buzz ACP commands (#6948) fix(hooks): surface nextest failures and stale pnpm deps in pre-push (#7850) feat(acp): run one prepared task from a file or stdin (#7851) Fix mobile heart and warning emoji with native font fallback (#7842) chore(mesh): upgrade MeshLLM to 0.76.2 (#7559) Signed-off-by: Hayt <211b96e6a2b7f45fd4047988976c7bbbeeda0c15f3ae7b32eec20834b5a55118@buzz.block.builderlab.xyz>
…c-agent-commit-identity * origin/main: fix(mobile): keep retired sections manager out of successor cache (#7873) Select one feature flag provider at compile time (#7677) chore(release): release Buzz Desktop version 0.5.25 (#7867) fix(ci): consume the published MinIO image (#7870) fix(mobile): converge sidebar managers on relay head with resume re-read (#7806) fix(ci): bootstrap the reusable MinIO image in GHCR (#7869) Discover alternate Buzz ACP commands (#6948) fix(hooks): surface nextest failures and stale pnpm deps in pre-push (#7850) feat(acp): run one prepared task from a file or stdin (#7851) Fix mobile heart and warning emoji with native font fallback (#7842) chore(mesh): upgrade MeshLLM to 0.76.2 (#7559) feat(agents): humanize uncurated Databricks model ids with a label grammar (#7844) Signed-off-by: Hayt <211b96e6a2b7f45fd4047988976c7bbbeeda0c15f3ae7b32eec20834b5a55118@buzz.block.builderlab.xyz> # Conflicts: # Cargo.lock
…undation-local * origin/main: (50 commits) feat(desktop): relay admin console for the /api/admin/v1 operator surface (#4768) fix(mobile): keep retired sections manager out of successor cache (#7873) Select one feature flag provider at compile time (#7677) chore(release): release Buzz Desktop version 0.5.25 (#7867) fix(ci): consume the published MinIO image (#7870) fix(mobile): converge sidebar managers on relay head with resume re-read (#7806) fix(ci): bootstrap the reusable MinIO image in GHCR (#7869) Discover alternate Buzz ACP commands (#6948) fix(hooks): surface nextest failures and stale pnpm deps in pre-push (#7850) feat(acp): run one prepared task from a file or stdin (#7851) Fix mobile heart and warning emoji with native font fallback (#7842) chore(mesh): upgrade MeshLLM to 0.76.2 (#7559) feat(agents): humanize uncurated Databricks model ids with a label grammar (#7844) fix: route databricks claude fqns to anthropic messages (#7829) feat(relay): add opt-in newest-first thread windows (#7823) refactor: move agent Git bootstrap into ACP harness (#7819) Use worker snapshots for relay storage metrics (#7845) fix(hooks): strip repo-local git env from pre-push test lanes (#7841) fix(mobile-infra): render push grant lifetimes as decimal in chart 0.3.2 (#7820) fix(agent): preserve Databricks Opus UC reasoning and tool continuation (#7840) ... Signed-off-by: tornquist <tornquist@squareup.com>
…t/osc-event-write-chokepoint * commit 'a6a3032e446e6e66e8e41a229ef655ea79f36202': (50 commits) feat(desktop): relay admin console for the /api/admin/v1 operator surface (#4768) fix(mobile): keep retired sections manager out of successor cache (#7873) Select one feature flag provider at compile time (#7677) chore(release): release Buzz Desktop version 0.5.25 (#7867) fix(ci): consume the published MinIO image (#7870) fix(mobile): converge sidebar managers on relay head with resume re-read (#7806) fix(ci): bootstrap the reusable MinIO image in GHCR (#7869) Discover alternate Buzz ACP commands (#6948) fix(hooks): surface nextest failures and stale pnpm deps in pre-push (#7850) feat(acp): run one prepared task from a file or stdin (#7851) Fix mobile heart and warning emoji with native font fallback (#7842) chore(mesh): upgrade MeshLLM to 0.76.2 (#7559) feat(agents): humanize uncurated Databricks model ids with a label grammar (#7844) fix: route databricks claude fqns to anthropic messages (#7829) feat(relay): add opt-in newest-first thread windows (#7823) refactor: move agent Git bootstrap into ACP harness (#7819) Use worker snapshots for relay storage metrics (#7845) fix(hooks): strip repo-local git env from pre-push test lanes (#7841) fix(mobile-infra): render push grant lifetimes as decimal in chart 0.3.2 (#7820) fix(agent): preserve Databricks Opus UC reasoning and tool continuation (#7840) ... Signed-off-by: tornquist <tornquist@squareup.com> # Conflicts: # crates/buzz-db/src/store/event.rs
Summary
Upgrade Buzz from MeshLLM
v0.76.0-rc9to the latest stable v0.76.2 release (via v0.76.1).a0c1e66b0ac037dd56544b9e2d94969ea43d694f(tagv0.76.2). All non-Mesh lock records are unchanged by the 0.76.1 → 0.76.2 bump.ed25519-dalek = 3.0.0andrusqlite = 0.40dependencies.fallible_uintfeature, preserving Buzz's existingu64SQL conversions when mesh is disabled. Mesh-enabled builds previously supplied this transitively, so testing both configurations matters.sqlx-sqlitepackage to the merged upstream compatibility fix transact-rs/sqlx#4402, revision94aafe3a68884d923b0798a767c8d7f6cfda89d2. SQLx 0.9.0 capslibsqlite3-sysbelow 0.38, while Mesh 0.76 requires 0.38. Cargo resolves the conflict even with SQLite disabled. The fix raises that upper bound; remove the patch once released. Buzz's active PostgreSQL driver stays on crates.io SQLx 0.9.0.crypto-rustfeature so Secret Service sessions retain DH encryption independently of Mesh keyring 4.buzz-mesh-smokecrate and lifecycle workflow wiring, keeping Mesh/native-runtime dev dependencies out of relay CI builds.origin/main(7c789dee0) without rewriting shared PR history.Validation at
ae4adba15(local macOS ARM64, Hermit toolchain)cargo test --locked -p buzz-mesh-smoke --all-targets(all six example harnesses compile; no live harness execution).--features mesh-llmgraphs (3,296 tests with mesh enabled, 0 failures).just desktop-tauri-clippy(both feature graphs,-D warnings), root workspace clippy-D warnings,cargo fmt --all --check.--lockedmetadata resolution for both workspaces; lockfile diff audited to touch only Mesh package records.Originating Buzz conversation: buzz://message?channel=dffbc117-845a-4c02-bc3f-eaeeefc4deaa&id=670f9c262e1ec0a4df5600b3173a0c5de2abe17e08ba9ccfdd8eff109fadf1a8