Skip to content

feat(probe): take the desktop core's public code as relay's core - #2057

Merged
kjgbot merged 7 commits into
mainfrom
feat/core-flip
Nov 3, 2026
Merged

kjgbot merged 7 commits into
mainfrom
feat/core-flip

Conversation

@kjgbot

@kjgbot kjgbot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Relay's core (crates/probe) and Agent Relay Desktop's core split from the same snapshot. This takes desktop's public core as relay's core, so both build from one place and relay-desktop can pin a relay commit as a git dependency.

How it was built

A per-file three-way merge (base = the shared snapshot, one side = desktop's public core, the other = relay main). Relay's own changes are re-applied on top. Silent losses where desktop had deleted code were found by diffing against relay main, and restored.

Relay behaviour kept

  • The history and relay-cli feature gates. production-binaries implies relay-cli, and the release cargo tree has no relayhistory crates.
  • Fleet, --cli-managed, CLI workspace keys and armadillo routing.
  • The Pi and OpenCode auto-activate settings, cursor_direct_delivery, and the Cursor fixes.
  • Grok joining, as local-user:<uid> with no account.
  • Device sign-in for Relay Connect.

What's new in the core

  • It works from a workspace key with no account. Sign-in, hosted MCP setup and attestation aren't in it.
  • A build may add them through AccountPlugin, MethodExtension and PluginBuilder. These are unsupported internals, not a public API.
  • Clients use the contract. With no account, account.*, uploader.* and tools.* answer method_not_found.

Relay behaviour that changes, each reviewed

  • Stale Devin Cloud sessions stop auto-joining after 24 hours.
  • Retained Codex rows stop counting as live after 5 minutes.
  • The Linux launcher is named agent-relay-desktop; the old name is still recognised.
  • Integration defaults wait for a workspace.

Verification

  • Default, release and history feature sets compile with --all-targets.
  • Release --lib: 2,619 passed.
  • Default suite: 3,687 passed. The 2 failures are the known history_flush timing tests on this disk.
  • Core lane (feat(flows): core lane on PRs and a feature map built around relay init #2054) on this branch: relay init parity 8/8 across every tool, Cursor delivery, and both Grok cases.
  • New tests pin setup status with no account, and that a CLI-managed core connects no detected tools. The second fails without its fix.
  • The crate's open-source check passes.

Not covered here: the matching relay-desktop change that pins this commit, which comes next.

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.


Agent Relay sessions

  • claude session 7cc781f4 · opened via gh pr create · last active 2026-11-02

Relay's core and Agent Relay Desktop's split from the same snapshot. This
brings desktop's public core in as relay's crates/probe, with relay's own
behaviour kept through a per-file three-way merge: the history and relay-cli
feature gates, fleet, --cli-managed, CLI workspace keys and armadillo routing,
the Pi and OpenCode auto-activate settings, the Cursor fixes, and Grok joining.

The core works from a workspace key with no account. Sign-in, hosted MCP
setup and attestation are not in it; a build may add them through the
AccountPlugin, MethodExtension and PluginBuilder hooks, which are unsupported
internals rather than a public API. Device sign-in stays for Relay Connect.

Relay behaviour that changes, each reviewed: stale Devin Cloud sessions stop
auto-joining after 24 hours, retained Codex rows stop counting as live after
5 minutes, the Linux launcher is named agent-relay-desktop (the old name is
still recognised), and integration defaults wait for a workspace.

Release and history feature sets build, the release cargo tree has no
relayhistory crates, relay init parity passes for every tool, and the Cursor
delivery and Grok lanes pass.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Important

Review skipped

Too many files!

This PR contains 334 files, which is 184 over the limit of 150.

To get a review, reduce the PR to 150 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

Usage-priced reviews support at most 300 files.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: f93e28b0-15bf-4b5f-bd42-8e31073e7814
Commits

Reviewing files that changed from the base of the PR and between 1dde213 and 4b4fe6d.

Files ignored due to path filters: 1
  • crates/probe/Cargo.lock is excluded by !**/*.lock
Files selected for processing: 334
  • CHANGELOG.md
  • crates/probe/Cargo.toml
  • crates/probe/README.md
  • crates/probe/contract/CoreContract.swift
  • crates/probe/docs/relay-core.md
  • crates/probe/examples/native_visibility_host.rs
  • crates/probe/examples/native_visibility_host/claude_provider.rs
  • crates/probe/examples/native_visibility_host/history.rs
  • crates/probe/examples/native_visibility_host/host.rs
  • crates/probe/src/bin/agent-relay-probe.rs
  • crates/probe/src/bin/relay-contract-codegen.rs
  • crates/probe/src/cloud.rs
  • crates/probe/src/cloud/history_origin.rs
  • crates/probe/src/cloud/workspace_session.rs
  • crates/probe/src/delivery.rs
  • crates/probe/src/delivery/census.rs
  • crates/probe/src/delivery/retry.rs
  • crates/probe/src/delivery/sessions.rs
  • crates/probe/src/delivery_status.rs
  • crates/probe/src/delivery_status/claims.rs
  • crates/probe/src/delivery_status/inclusion.rs
  • crates/probe/src/delivery_status/status.rs
  • crates/probe/src/destination.rs
  • crates/probe/src/destination/guard.rs
  • crates/probe/src/destination/legacy_schedules.rs
  • crates/probe/src/install.rs
  • crates/probe/src/lib.rs
  • crates/probe/src/migration.rs
  • crates/probe/src/platform/exe.rs
  • crates/probe/src/probe/bridge.rs
  • crates/probe/src/probe/bridge/openclaw_upgrade.rs
  • crates/probe/src/probe/bridge/selection_validation.rs
  • crates/probe/src/probe/bridge/session_commands.rs
  • crates/probe/src/probe/bridge/session_rows.rs
  • crates/probe/src/probe/bridge/session_rows/proof_cache.rs
  • crates/probe/src/probe/bridge/status.rs
  • crates/probe/src/probe/cloud_commands.rs
  • crates/probe/src/probe/collector.rs
  • crates/probe/src/probe/collector/claims.rs
  • crates/probe/src/probe/collector/legacy_schedules.rs
  • crates/probe/src/probe/collector/passes.rs
  • crates/probe/src/probe/connect.rs
  • crates/probe/src/probe/connect/host_state.rs
  • crates/probe/src/probe/control.rs
  • crates/probe/src/probe/flush.rs
  • crates/probe/src/probe/history.rs
  • crates/probe/src/probe/history/capture.rs
  • crates/probe/src/probe/history/incremental.rs
  • crates/probe/src/probe/history/incremental/reset_tests.rs
  • crates/probe/src/probe/history/recent_paths.rs
  • crates/probe/src/probe/history/roots.rs
  • crates/probe/src/probe/history/roots/snapshot_tests.rs
  • crates/probe/src/probe/history/safety_paths.rs
  • crates/probe/src/probe/history_destination.rs
  • crates/probe/src/probe/inventory.rs
  • crates/probe/src/probe/inventory/follow.rs
  • crates/probe/src/probe/live.rs
  • crates/probe/src/probe/live/broad.rs
  • crates/probe/src/probe/live/broad/remote.rs
  • crates/probe/src/probe/live/broad/startup.rs
  • crates/probe/src/probe/live/maintenance.rs
  • crates/probe/src/probe/live/member_safety.rs
  • crates/probe/src/probe/live/not_ready.rs
  • crates/probe/src/probe/live/selected_remote/tests.rs
  • crates/probe/src/probe/live/selected_remote/tests/api.rs
  • crates/probe/src/probe/live/watching.rs
  • crates/probe/src/probe/mod.rs
  • crates/probe/src/probe/progress.rs
  • crates/probe/src/probe/progress/counts.rs
  • crates/probe/src/probe/reclaim.rs
  • crates/probe/src/probe/relay_commands.rs
  • crates/probe/src/probe/remote_sources.rs
  • crates/probe/src/probe/remote_sources/claude_cloud.rs
  • crates/probe/src/probe/remote_sources/cursor_tests.rs
  • crates/probe/src/probe/remote_sources/diagnostic.rs
  • crates/probe/src/probe/remote_sources/hydrate.rs
  • crates/probe/src/probe/remote_sources/pacing.rs
  • crates/probe/src/probe/remote_sources/pacing/unresolved.rs
  • crates/probe/src/probe/remote_sources/sweep.rs
  • crates/probe/src/probe/remote_sources/test_host.rs
  • crates/probe/src/probe/remote_sources/withhold.rs
  • crates/probe/src/probe/session_reset.rs
  • crates/probe/src/probe/transcript.rs
  • crates/probe/src/probe/transcript_display.rs
  • crates/probe/src/relay.rs
  • crates/probe/src/relay/account.rs
  • crates/probe/src/relay/account/cloud_binding.rs
  • crates/probe/src/relay/account/credential.rs
  • crates/probe/src/relay/account/login_start.rs
  • crates/probe/src/relay/account/profile.rs
  • crates/probe/src/relay/account/session.rs
  • crates/probe/src/relay/account/upload_failure.rs
  • crates/probe/src/relay/account/validation.rs
  • crates/probe/src/relay/account/workspace_recovery.rs
  • crates/probe/src/relay/account_methods.rs
  • crates/probe/src/relay/account_methods/usage.rs
  • crates/probe/src/relay/activity/publication.rs
  • crates/probe/src/relay/agents.rs
  • crates/probe/src/relay/agents/activation_journal.rs
  • crates/probe/src/relay/agents/aliases.rs
  • crates/probe/src/relay/agents/auto_activation.rs
  • crates/probe/src/relay/agents/naming.rs
  • crates/probe/src/relay/agents/registration_routes.rs
  • crates/probe/src/relay/agents/registration_routes_tests.rs
  • crates/probe/src/relay/agents/rejected_keys.rs
  • crates/probe/src/relay/agents/rejected_keys_tests.rs
  • crates/probe/src/relay/agents/removal.rs
  • crates/probe/src/relay/agents/roster_publication.rs
  • crates/probe/src/relay/agents/session_end_tests.rs
  • crates/probe/src/relay/claude/hold.rs
  • crates/probe/src/relay/claude/inbox.rs
  • crates/probe/src/relay/claude/session_hook.rs
  • crates/probe/src/relay/claude/session_hook/output.rs
  • crates/probe/src/relay/claude/session_hook/rollback.rs
  • crates/probe/src/relay/claude/tests.rs
  • crates/probe/src/relay/claude_dirs.rs
  • crates/probe/src/relay/claude_dirs/development.rs
  • crates/probe/src/relay/claude_dirs/process.rs
  • crates/probe/src/relay/claude_keychain.rs
  • crates/probe/src/relay/claude_mobile_plugin.rs
  • crates/probe/src/relay/claude_mobile_plugin/hooks/register.mjs
  • crates/probe/src/relay/claude_mobile_plugin/installations.rs
  • crates/probe/src/relay/claude_mobile_plugin/tests.rs
  • crates/probe/src/relay/claude_settings.rs
  • crates/probe/src/relay/claude_web.rs
  • crates/probe/src/relay/cli.rs
  • crates/probe/src/relay/cli/socket_request.rs
  • crates/probe/src/relay/client.rs
  • crates/probe/src/relay/cloud_chat.rs
  • crates/probe/src/relay/cloud_chat/history_page.rs
  • crates/probe/src/relay/cloud_chat/tests.rs
  • crates/probe/src/relay/cloud_login.rs
  • crates/probe/src/relay/cloud_session.rs
  • crates/probe/src/relay/codex.rs
  • crates/probe/src/relay/codex/app_server.rs
  • crates/probe/src/relay/codex/app_server/delivery.rs
  • crates/probe/src/relay/codex/app_server/drive.rs
  • crates/probe/src/relay/codex/app_server/mcp_reload.rs
  • crates/probe/src/relay/codex/compact.rs
  • crates/probe/src/relay/codex/hidden_order.rs
  • crates/probe/src/relay/codex/ipc.rs
  • crates/probe/src/relay/codex/ipc_windows.rs
  • crates/probe/src/relay/codex/processes.rs
  • crates/probe/src/relay/codex/rollout.rs
  • crates/probe/src/relay/codex/router.rs
  • crates/probe/src/relay/codex/router/hidden_turn.rs
  • crates/probe/src/relay/codex/runner.rs
  • crates/probe/src/relay/codex/stop_hook.rs
  • crates/probe/src/relay/codex/stop_hook/inbox.rs
  • crates/probe/src/relay/codex/stop_hook/rules.rs
  • crates/probe/src/relay/codex/threads.rs
  • crates/probe/src/relay/connect.rs
  • crates/probe/src/relay/connect/reply_hint.rs
  • crates/probe/src/relay/connect_inbox.rs
  • crates/probe/src/relay/connect_presence.rs
  • crates/probe/src/relay/contract/account.rs
  • crates/probe/src/relay/contract/agents.rs
  • crates/probe/src/relay/contract/agents/settings.rs
  • crates/probe/src/relay/contract/chat.rs
  • crates/probe/src/relay/contract/codegen.rs
  • crates/probe/src/relay/contract/mod.rs
  • crates/probe/src/relay/contract/plan.rs
  • crates/probe/src/relay/contract/reader.rs
  • crates/probe/src/relay/contract/tool_integrations.rs
  • crates/probe/src/relay/cursor_cli/editor.rs
  • crates/probe/src/relay/daemon.rs
  • crates/probe/src/relay/daemon/key_rotation.rs
  • crates/probe/src/relay/daemon/plugins.rs
  • crates/probe/src/relay/daemon/refresh.rs
  • crates/probe/src/relay/daemon/relaycast_writes.rs
  • crates/probe/src/relay/daemon/watchers.rs
  • crates/probe/src/relay/daemon/workspace_verification.rs
  • crates/probe/src/relay/delivery.rs
  • crates/probe/src/relay/delivery/activation.rs
  • crates/probe/src/relay/delivery/channel.rs
  • crates/probe/src/relay/delivery/channel/pins.rs
  • crates/probe/src/relay/delivery/channel/settle.rs
  • crates/probe/src/relay/delivery/inbox_watch.rs
  • crates/probe/src/relay/delivery/policy.rs
  • crates/probe/src/relay/delivery/session_text.rs
  • crates/probe/src/relay/delivery/stuck.rs
  • crates/probe/src/relay/delivery/timing.rs
  • crates/probe/src/relay/desktop_identity.rs
  • crates/probe/src/relay/desktop_identity/native.rs
  • crates/probe/src/relay/devin.rs
  • crates/probe/src/relay/devin_cloud.rs
  • crates/probe/src/relay/diagnostics.rs
  • crates/probe/src/relay/fleet.rs
  • crates/probe/src/relay/harness/claude/requests.rs
  • crates/probe/src/relay/harness/codex.rs
  • crates/probe/src/relay/harness/devin/mcp/permissions.rs
  • crates/probe/src/relay/history_retention/tests/concurrency.rs
  • crates/probe/src/relay/host_methods.rs
  • crates/probe/src/relay/hosted_mcp.rs
  • crates/probe/src/relay/incoming.rs
  • crates/probe/src/relay/inject.rs
  • crates/probe/src/relay/integration_defaults.rs
  • crates/probe/src/relay/local.rs
  • crates/probe/src/relay/local/connect_codex.rs
  • crates/probe/src/relay/local/directory_trait.rs
  • crates/probe/src/relay/local/directory_trait/mobile_claude_roots/tests.rs
  • crates/probe/src/relay/local/paths.rs
  • crates/probe/src/relay/local/plugins.rs
  • crates/probe/src/relay/local/registered.rs
  • crates/probe/src/relay/local/routes.rs
  • crates/probe/src/relay/local/session_directory.rs
  • crates/probe/src/relay/local/terminal.rs
  • crates/probe/src/relay/local/tests/automatic_admission.rs
  • crates/probe/src/relay/local_methods.rs
  • crates/probe/src/relay/login_item.rs
  • crates/probe/src/relay/mailbox.rs
  • crates/probe/src/relay/message_pointer.rs
  • crates/probe/src/relay/methods.rs
  • crates/probe/src/relay/methods/addressing.rs
  • crates/probe/src/relay/methods/cursor_cloud.rs
  • crates/probe/src/relay/methods/usage.rs
  • crates/probe/src/relay/mobile_handoff.rs
  • crates/probe/src/relay/mobile_handoff/journal.rs
  • crates/probe/src/relay/mobile_handoff/journal/tests.rs
  • crates/probe/src/relay/mobile_handoff/tests.rs
  • crates/probe/src/relay/mobile_permissions.rs
  • crates/probe/src/relay/muse.rs
  • crates/probe/src/relay/opencode.rs
  • crates/probe/src/relay/opencode_existing/native_tests.rs
  • crates/probe/src/relay/outbound.rs
  • crates/probe/src/relay/outbound/hints.rs
  • crates/probe/src/relay/outbound/hooks.rs
  • crates/probe/src/relay/outbound/hooks/codex_stop.rs
  • crates/probe/src/relay/outbound/http.rs
  • crates/probe/src/relay/outbound/mobile_handoff.rs
  • crates/probe/src/relay/outbound/mobile_handoff_permission.rs
  • crates/probe/src/relay/outbound/mobile_handoff_permission/tickets.rs
  • crates/probe/src/relay/outbound/session_routes.rs
  • crates/probe/src/relay/outbound/socket_path.rs
  • crates/probe/src/relay/outbox/store.rs
  • crates/probe/src/relay/people.rs
  • crates/probe/src/relay/people/clients.rs
  • crates/probe/src/relay/people/roster_metadata.rs
  • crates/probe/src/relay/pi.rs
  • crates/probe/src/relay/pi/agent-relay.mjs
  • crates/probe/src/relay/pi/config.rs
  • crates/probe/src/relay/pi/extension.test.mjs
  • crates/probe/src/relay/pi/inbox.rs
  • crates/probe/src/relay/pi/setup.rs
  • crates/probe/src/relay/plan.rs
  • crates/probe/src/relay/probe_alias.rs
  • crates/probe/src/relay/process.rs
  • crates/probe/src/relay/process/command_line.rs
  • crates/probe/src/relay/process/fake.rs
  • crates/probe/src/relay/process/linux.rs
  • crates/probe/src/relay/process/snapshot.rs
  • crates/probe/src/relay/process/windows.rs
  • crates/probe/src/relay/project.rs
  • crates/probe/src/relay/project/cache.rs
  • crates/probe/src/relay/protocol.rs
  • crates/probe/src/relay/relay_uploads.rs
  • crates/probe/src/relay/request_log.rs
  • crates/probe/src/relay/sdk_gaps.rs
  • crates/probe/src/relay/server.rs
  • crates/probe/src/relay/session_cli.rs
  • crates/probe/src/relay/session_naming.rs
  • crates/probe/src/relay/session_naming/tests.rs
  • crates/probe/src/relay/session_query/index.rs
  • crates/probe/src/relay/session_query/tests.rs
  • crates/probe/src/relay/session_query/tests/catalog.rs
  • crates/probe/src/relay/session_titles.rs
  • crates/probe/src/relay/session_titles/extra.rs
  • crates/probe/src/relay/sessions.rs
  • crates/probe/src/relay/settings_registry.rs
  • crates/probe/src/relay/setup.rs
  • crates/probe/src/relay/setup/account_status.rs
  • crates/probe/src/relay/setup/sign_in_state.rs
  • crates/probe/src/relay/setup/uploader_cache.rs
  • crates/probe/src/relay/spawn.rs
  • crates/probe/src/relay/spawn/drive.rs
  • crates/probe/src/relay/spawn/drive/claude.rs
  • crates/probe/src/relay/spawn/drive/claude/tests.rs
  • crates/probe/src/relay/spawn/ledger.rs
  • crates/probe/src/relay/spawn/node.rs
  • crates/probe/src/relay/spawn/node/control_retry.rs
  • crates/probe/src/relay/spawn/node/enroll.rs
  • crates/probe/src/relay/spawn/reconcile.rs
  • crates/probe/src/relay/spawn/release.rs
  • crates/probe/src/relay/spawn/settings.rs
  • crates/probe/src/relay/spawn/tests/native_sender.rs
  • crates/probe/src/relay/spawn/tests/owner_turns.rs
  • crates/probe/src/relay/spawn/tests/requester_approvals.rs
  • crates/probe/src/relay/spawn/tests/session_end.rs
  • crates/probe/src/relay/state.rs
  • crates/probe/src/relay/store.rs
  • crates/probe/src/relay/store/archives.rs
  • crates/probe/src/relay/store/session_kind.rs
  • crates/probe/src/relay/store/session_refresh.rs
  • crates/probe/src/relay/store/settings_extras.rs
  • crates/probe/src/relay/store/tests.rs
  • crates/probe/src/relay/store_settings.rs
  • crates/probe/src/relay/telemetry.rs
  • crates/probe/src/relay/telemetry/surface.rs
  • crates/probe/src/relay/telemetry/usage.rs
  • crates/probe/src/relay/test_account.rs
  • crates/probe/src/relay/transport.rs
  • crates/probe/src/relay/transport/windows.rs
  • crates/probe/src/relay/uploader.rs
  • crates/probe/src/relay/uploader/process_io.rs
  • crates/probe/src/relay/uploader/query.rs
  • crates/probe/src/relay/uploader/query/observations/tests.rs
  • crates/probe/src/relay/uploader/query/observations/tests/upload_revision.rs
  • crates/probe/src/relay/uploader/query/tests/retention.rs
  • crates/probe/src/relay/uploader/refresh.rs
  • crates/probe/src/relay/uploader/refresh/lifecycle.rs
  • crates/probe/src/relay/uploader/retrying.rs
  • crates/probe/src/relay/uploader/status_read.rs
  • crates/probe/src/relay/uploader/tests/supervise.rs
  • crates/probe/src/relay/websocket_tls.rs
  • crates/probe/src/relay/workspace_recovery_tests.rs
  • crates/probe/src/session_model.rs
  • crates/probe/src/session_model/agent_kind.rs
  • crates/probe/src/session_model/local_sessions.rs
  • crates/probe/src/session_model/session_project.rs
  • crates/probe/src/session_model/uploads.rs
  • crates/probe/src/session_model/uploads/session_state.rs
  • crates/probe/src/session_model/uploads/stages.rs
  • crates/probe/tests/build_retry.rs
  • crates/probe/tests/core_boundary.rs
  • crates/probe/tests/omp_live_session.rs
  • crates/probe/tests/relay_account.rs
  • crates/probe/tests/relay_agents.rs
  • crates/probe/tests/relay_contract.rs
  • crates/probe/tests/relay_core_binary.rs
  • crates/probe/tests/relay_outbound.rs
  • crates/probe/tests/support/bridge.rs
  • crates/probe/tests/support/fake_cloud.rs
  • crates/probe/tests/support/outbound_harness.rs
  • crates/probe/tests/support/provider_credentials.rs

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@cubic-dev-ai cubic-dev-ai Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed across 330 files

Note: This PR contains a large number of files. cubic selects up to 200 of the highest-priority eligible files for this review, so some files may not have been reviewed.

View guided diff | Re-trigger cubic

Comment thread crates/probe/src/relay/outbound/http.rs Resolved
Comment thread crates/probe/src/relay/server.rs Resolved
Comment thread crates/probe/src/install.rs Resolved
Comment thread crates/probe/src/relay/local/paths.rs Resolved
Comment thread crates/probe/src/relay/local/paths.rs Resolved
@greptile-apps

greptile-apps Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5

[High impact] The PR appears safe to merge based on this re-review.

Summary

The PR brings the desktop app’s shared core into Relay while keeping account features optional.

  • Relay’s core can run from a workspace key and add account features by build.
  • Codex thread reads reuse database connections for up to five minutes.
  • Integration defaults wait until a workspace is available.
  • Linux desktop launches use agent-relay-desktop, leaving agent-relay to the CLI.

Reviews (7) · Last reviewed commit: "Move the delivery fix to Fixed in the ch..." · Reviewed by Greptile

Comment thread crates/probe/Cargo.toml Resolved
kjgbot and others added 4 commits November 2, 2026 08:38
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ai-hist and history-provider-sources are both published at 0.56.0;
pin both exactly so Cargo builds a single ai-hist.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Restore spawn_requester_approvals when a settings change fails
- Answer an account-only extension method method_not_found without an account
- Retry a failed activation pass on the next poll; gate on workspace and roster too
- Keep Oh My Pi's extension when Pi's is turned off in a shared folder
- Retry a legacy permission_denied block once more, not at every start
- Re-read the platform TLS roots every 10 minutes; log and do not cache a failed read
- Serialize remote pacing writes and merge a sweep with concurrent downloads
- Fence Linux command_line reads by start time; skip an overlong XDG socket path
- Drop unused serde_yaml and tar; toml_edit is a dev-dependency
- Neutral names in tests and comments; docs and module table brought up to date
- CHANGELOG entry for the flip

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…st's doc

A host whose store always reports an error or an unparsable certificate
no longer reads its roots on every connect. The legacy retry marker's
const no longer takes retry_job_for_build's doc comment.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@cubic-dev-ai cubic-dev-ai Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed across 60 files (changes from recent commits).

Reply with feedback, questions, or to request a fix.

View guided diff | Re-trigger cubic

Comment thread crates/probe/src/relay/outbound.rs Resolved
Comment thread CHANGELOG.md Resolved
Comment thread CHANGELOG.md Resolved

@cubic-dev-ai cubic-dev-ai Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed across 60 files (changes from recent commits).

Reply with feedback, questions, or to request a fix.

View guided diff | Re-trigger cubic

Comment thread crates/probe/src/migration.rs Resolved
…case, rewrite the changelog bullets

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@cubic-dev-ai cubic-dev-ai Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed across 3 files (changes from recent commits).

Reply with feedback, questions, or to request a fix.

View guided diff | Re-trigger cubic

Comment thread CHANGELOG.md Resolved
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kjgbot
kjgbot merged commit 41c286e into main Nov 3, 2026
120 of 126 checks passed
kjgbot pushed a commit that referenced this pull request Nov 3, 2026
…erge dropped

#2057 three-way merged each file against the desktop snapshot 5601b739 and
kept relay's side where both had changed, which dropped desktop changes made
before the split. A full audit (every file, every test, every commit since
the snapshot; see docs/desktop-parity-ledger.md) restores them:

- relay serve --headless keeps the app's Open-at-login entry (d23664e2).
- Devin reviews are never discovered, activated or recreated as offline
  rows (27854327, aa893455).
- Grok usage records do not become empty transcript messages (fc84dd6e).
- Presentation discovery runs on a fixed cadence and reads never start a
  pass (96ebd2c5); the fleet-authority slot stays.
- AccountPlugin::auto_activate_by_default lets the desktop's account turn
  automatic activation on unless turned off (a37b11a3, 7373df8b); the CLI's
  core keeps it unset. Pi, Oh My Pi and OpenCode keep their own opt-ins,
  as the desktop's core never activated them by itself.
- The inventory test lets startup passes settle (desktop's flake fix).

Also from review: consent 401/403 mapping and Pi installer tests, the Pi
installer refuses any non-regular file, and doc wording.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.

2 participants