Repository navigation
RFC-0024: managed outbound HTTPS for dedicated Gateways - #3520
miguelbranco80 wants to merge 1 commit into
Conversation
|
🦞👀 Pull request received. I will update this pull request when review starts. ClawSweeper review completeClawSweeper finished reviewing this revision. The review result is being finalized. |
|
Codex review: blocked before merge. What this changesThis PR proposes administrator-controlled outbound connectivity for dedicated Gateways through revision-owned CONNECT proxies. Example: A trusted Gateway integration needs https://api.example.com.
Review scores
ProductKind: Feature · Worth it: Needs a maintainer decision Merge readiness⛔ Blocked before merge - 1 item remains Keep this PR open for architectural review: it addresses a concrete Gateway connectivity gap, stays within documentation scope, and has no actionable patch findings. Priority: P3 Decision needed
Before merge
FindingsNone. Agent review detailsHow this fits togetherOCC admits Agent configuration and deployment authority; Kubernetes Compute would translate the admitted connectivity selection into Gateway proxy resources and NetworkPolicies, while Harness credentials and networking retain their existing owners. flowchart TB
A[Administrator] -. approves proposed access .-> O[OCC admission]
O -. snapshots proposed policy .-> C[Kubernetes Compute]
C -. prepares proposed resources .-> P[Revision proxy]
G[Dedicated Gateway] -. proposed CONNECT route .-> P
P -. admitted destinations .-> E[External services]
G -->|existing transport| H[Dedicated Harness]
Technical reviewBest possible solution: Resolve the Gateway transport architecture in this RFC and retain implementation qualification in the linked draft. Do we have a high-confidence way to reproduce the issue? This is a proposal rather than a bug report; source and existing conformance coverage establish the current Slack-only destination boundary. Is this the best way to solve the issue? The proposal coherently extends existing Agent, Compute, and Channel owners, explains the replacement path and operating cost, and distinguishes destination control from credential mediation; accepting that architecture remains a maintainer decision. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning medium; reviewed against e3c2a56a17f5. Provenance checked
SecurityNone. EvidenceWhat I checked:
LabelsLabel changes:
Label justifications:
Rating scale6/6 🦀 challenger crab · 5/6 🦞 diamond lobster · 4/6 🐚 platinum hermit · 3/6 🦐 gold shrimp · 2/6 🦪 silver shellfish · 1/6 🧂 unranked krab. Overall follows the weaker of proof and patch quality; ✨ marks media proof (a screenshot, video, or linked artifact) that directly shows the changed behavior. WorkflowClawSweeper edits this one comment on every review. Comment Reviewed October 24, 2026, 5:35 PM ET / 21:35 UTC. |
|
Human Free here. @miguelbranco80: we've discussed this internally because of the overlap with the Credential Proxy that just landed. I'm wondering about, in terms of the primitives that OCE has, what the right architectural shape to build this would be. It would be nice to not have to have separate implementations of the sandboxing + network proxy primitives just to support isolating the Gateway. Will bring this up to the team to discuss. As a stop-gap, if you need this while we do deeper refactoring, I would be open to a smaller change/PR that gives this capability. What do you think would be a reasonable minimal change that would work for that? If you want to mint a PR for this to unblock your need, I'm happy to review it. For the context of this RFC though, I would like to ensure we have a strong design in place that doesn't duplicate sandboxing primitives. |
|
I agree with the controls introduced in this pr: limiting gateway outbound, channels contributing destinations, etc Echo @freeqaz-openai sentiments about not introducing new infra given we already have multiple levels of network proxies on the agent side. We should just wrap the credential proxy around the gateway and implement the controls as proxy authorization rules |
|
Thanks @freeqaz-openai @kevinlin-openai. We maintain our own fork with a few changes, so we’re not blocked; we can take the time to get the design right (and embedded is always a fallback). I agree on reusing the existing sandboxing and proxy primitives. We were already experimenting similar-ish ideas, including running the Gateway inside OpenShell through Sandbox/Compute. That part tests containment only though, not Credential Proxy integration or end-to-end OCE provisioning. Kevin, expressing the controls as Credential Proxy authorization rules makes sense. Are you also thinking of sandboxing the Gateway, or just reusing the proxy? (But it does open that option for later.) I’ll close this RFC and in parallel, continue an experiment to test both credential requests and approved HTTPS through the shared proxy, with direct external egress blocked. I may contribute an RFC based on those results. (Traveling today to SF and will be in town for a few days, so should have the time.) |
Proposed decision
Let administrators approve external HTTPS connectivity for trusted integrations in dedicated Gateways. Use revision-owned CONNECT proxies and Kubernetes NetworkPolicies, with a separate restricted route for control-plane requests. Keep existing Gateway and Harness credential boundaries.
Read RFC-0024.
This extracts the existing RFC from #2518 for focused architectural discussion, not a second proposal. It keeps the proposed architecture and improves its rationale, alternatives, operating costs, and qualification limits. The implementation and its evidence are linked from the document.
Review focus
Scope and verification
Only the RFC and specification index change. This PR contains no implementation code.