Add managed worktrees to codex exec (#42652)

## What changed

- Add the experimental `worktrees` feature and a shared `--worktree` flag for new and forked `codex exec` sessions.
- Create each enabled session in a managed Git worktree, use that checkout as the session working directory, and bind the checkout to the new thread.
- Share the configured worktree pool with Desktop while leaving automatic cleanup disabled for CLI allocations.
- Reject unsupported commands, remote execution, ignored user configuration, ephemeral sessions, and use without the feature enabled before allocating a worktree.

## Testing

- Cover flag placement and inheritance, supported and rejected command combinations, worktree allocation and thread ownership, configuration gating, and compatibility with existing worktree-backed sessions.

GitOrigin-RevId: 011ff4639b09e8992c50d7b823df23e71798670e
This commit is contained in:
Benjamin Carlsson authored and copyberry committed 2026-09-04 01:56:38 +00:00
1 parent f46671b14a
commit eb5a00b068
18 files changed
+631 -9

No files matched your search

+6
View File
@@ -1056,6 +1056,9 @@
"workspace_owner_usage_nudge": {
"type": "boolean"
},
"worktrees": {
"type": "boolean"
},
"write_stdin_approval": {
"type": "boolean"
}
@@ -6407,6 +6410,9 @@
"workspace_owner_usage_nudge": {
"type": "boolean"
},
"worktrees": {
"type": "boolean"
},
"write_stdin_approval": {
"type": "boolean"
}