Draft alternate exec process split layout#15234
Closed
starr-openai wants to merge 10 commits intomainfrom
Closed
Conversation
Add a narrow ExecProcess trait for process lifecycle RPCs and expose it from Environment behind an ExecutorEnvironment trait. Keep the first cut behavior-preserving by delegating remote mode to the existing ExecServerClient and returning an unavailable process stub for default local Environment values. Co-authored-by: Codex <noreply@openai.com>
Fall back to an in-process exec-server client when no remote URL is configured, so constructed Environment values have a real process capability in both local and remote modes. Co-authored-by: Codex <noreply@openai.com>
Give Environment a real local ExecProcess implementation by default and keep remote mode selecting the websocket-backed client when configured. The local implementation lazily initializes an in-process exec-server client on first use. Co-authored-by: Codex <noreply@openai.com>
Replace the in-process client wrapper with a local ExecProcess that owns ExecServerHandler directly and forwards process notifications to the trait event stream. This keeps the default Environment process path entirely local instead of routing through ExecServerClient. Co-authored-by: Codex <noreply@openai.com>
Remove the duplicate direct-handler local process implementation and make the local ExecProcess path delegate to the existing in-process ExecServerClient. Keep lazy initialization only to support sync Environment::default(). Co-authored-by: Codex <noreply@openai.com>
Remove sync Default from Environment, construct the local process client with connect_in_process() in create(None), and switch the fs-only app server default to a local filesystem constructor. Co-authored-by: Codex <noreply@openai.com>
Drop the stale remote_exec_server_client() accessor now that Environment exposes the process capability directly, and rename the capability getter to get_executor() on the environment trait and concrete type. Co-authored-by: Codex <noreply@openai.com>
Remove the temporary Environment::local_filesystem() helper and export LocalFileSystem so fs-only defaults can construct the local filesystem directly without going through Environment. Co-authored-by: Codex <noreply@openai.com>
Apply the pending formatting reorderings and switch the server-side filesystem default to LocalFileSystem so the current PR compiles again. Co-authored-by: Codex <noreply@openai.com>
Reshape the exec process seam to mirror the filesystem split style with separate process, local_process, remote_process, and server/process_handler modules, and make Environment own an Arc<dyn ExecProcess>. Co-authored-by: Codex <noreply@openai.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
process,local_process,remote_process, andserver/process_handlerEnvironmentownArc<dyn ExecProcess>instead of a concrete clientNotes
Co-authored-by: Codex noreply@openai.com