Refactor exec-server filesystem API into codex-file-system (#19892)

## Summary
- Extracted the shared filesystem types and `ExecutorFileSystem` trait
into a new `codex-file-system` crate
- Switched `codex-config` and `codex-git-utils` to depend on that crate
instead of `codex-exec-server`
- Kept `codex-exec-server` re-exporting the same API for existing
callers

## Testing
- Ran `cargo test -p codex-file-system`
- Ran `cargo test -p codex-git-utils`
- Ran `cargo test -p codex-config`
- Ran `cargo test -p codex-exec-server`
- Ran `just fix -p codex-file-system`, `just fix -p codex-git-utils`,
`just fix -p codex-config`, `just fix -p codex-exec-server`
- Ran `just fmt`
- Updated and verified the Bazel module lockfile
This commit is contained in:
Michael Zeng authored and GitHub committed 2026-04-27 17:43:15 -07:00
1 parent 2f3b5ed81a
commit a3350de855
14 files changed
+61 -24

No files matched your search

+13 -2
View File
@@ -2288,9 +2288,9 @@ dependencies = [
"async-trait",
"base64 0.22.1",
"codex-app-server-protocol",
"codex-exec-server",
"codex-execpolicy",
"codex-features",
"codex-file-system",
"codex-git-utils",
"codex-model-provider-info",
"codex-network-proxy",
@@ -2609,6 +2609,7 @@ dependencies = [
"bytes",
"codex-app-server-protocol",
"codex-client",
"codex-file-system",
"codex-protocol",
"codex-sandboxing",
"codex-test-binary-support",
@@ -2719,6 +2720,16 @@ dependencies = [
"tokio",
]
[[package]]
name = "codex-file-system"
version = "0.0.0"
dependencies = [
"async-trait",
"codex-protocol",
"codex-utils-absolute-path",
"serde",
]
[[package]]
name = "codex-git-utils"
version = "0.0.0"
@@ -2726,7 +2737,7 @@ dependencies = [
"anyhow",
"assert_matches",
"chrono",
"codex-exec-server",
"codex-file-system",
"codex-protocol",
"codex-utils-absolute-path",
"futures",