feat(macos): targetClientId acceptance guard and x-vellum-client-id headers for host_transfer#29435
Conversation
…eaders for host_transfer
|
@codexbot review |
|
@devin-ai-integration[bot] please review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b849a135d5
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| let isLocalConversation = self.mainWindow?.conversationManager | ||
| .conversations.contains(where: { $0.conversationId == msg.conversationId }) ?? false | ||
| let isTargeted = msg.targetClientId == localClientId | ||
| let isUntargetedLocal = msg.targetClientId == nil && isLocalConversation | ||
| guard isTargeted || isUntargetedLocal else { break } |
There was a problem hiding this comment.
Do not gate untargeted transfers on UI conversation cache
The new hostTransferRequest guard drops untargeted requests unless mainWindow?.conversationManager.conversations already contains the conversation ID, but that UI cache can lag behind transport ownership (or be unavailable when mainWindow is nil). EventStreamClient already admits untargeted host-tool messages only for locallyOwnedConversationIds, so this extra UI-based check can reject legitimate local transfer requests and cause transfers to stall/fail in early/new/background conversation flows.
Useful? React with 👍 / 👎.
|
@codexbot review |
|
@devin-ai-integration[bot] please review |
…se3' into run-plan/host-transfer-xc/pr-3-merge
947a5fe
into
Credence/targeted-host-proxy-phase3
|
Codex Review: Didn't find any major issues. Delightful! ℹ️ About Codex in GitHubCodex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback". |
…sfer (#29440) * feat(host-proxy): add targetClientId support to HostTransferProxy and message envelopes (#29431) * feat(host-proxy): add targetClientId support to HostTransferProxy and message envelopes * fix(tests): add listClientsByCapability and getClientById to host-transfer-proxy mock --------- Co-authored-by: credence-the-bot <credence@vellum.ai> * feat(routes): enforce x-vellum-client-id ownership on host-transfer routes; add target_client_id to tool (#29434) * feat(routes): enforce x-vellum-client-id ownership on host-transfer routes; add target_client_id to tool * fix(tests): await .rejects assertions; guard executeLocal fallthrough on targetClientId --------- Co-authored-by: credence-the-bot <credence@vellum.ai> * feat(macos): targetClientId acceptance guard and x-vellum-client-id headers for host_transfer (#29435) * feat(macos): targetClientId acceptance guard and x-vellum-client-id headers for host_transfer * fix(swift): use setValue (not addValue) for extraHeaders in GatewayHTTPClient.get --------- Co-authored-by: credence-the-bot <credence@vellum.ai> --------- Co-authored-by: credence-the-bot[bot] <277301654+credence-the-bot[bot]@users.noreply.github.com> Co-authored-by: credence-the-bot <credence@vellum.ai>
Summary
Part of plan: targeted-host-proxy-phase3.md (PR 3 of 3)