🌳 feat: Provision Conversation-Scoped Code Worktrees - #239
Conversation
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5f6031ba36
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
|
@codex review |
|
@codex review |
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: fa5cdfdd91
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 80bb7b980f
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a0f2423e14
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a7bd224904
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4ccdc020fc
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: fbdb79443d
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Update: the later security review correctly found gaps in this audit. Four worker findings are fixed in Previous ownership/recovery audit: The recurring review findings pointed to one ownership invariant: identity, cancellation, durable state, and executor cleanup must agree on when a checkout becomes usable and when it can be discarded. I traced both ingress paths, replay state and signed payloads, admission/fencing, worker execution, provisioning, setup credentials, and restart recovery. Additional fixes from this audit:
Local verification: 32 focused lifecycle tests, 2 CLI/process checks, focused service identity/admission/replay tests, and a passing TypeScript build. A real native-worker canary on macOS also passed concurrent same-filename writes in two isolated checkouts, unchanged source files, and cancellation with no delayed mutation, rerun on the final build. Real child-process tests prove lock release after a crash and preservation of a checkout reserved by a killed provisioning process. The graph matches the pre-audit PR SHA but has no compiler-level call edges for this repo/ref. Available references were reconciled with source searches; the authoritative selector returned HTTP 401, so local test selection was source-based. Full suites run in CI. All existing Codex threads are addressed. No new bot review requested for this final self-review pass. |
|
@codex review the latest head |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e1804e543f
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Problem and behavior
Multiple conversations using one attached repository currently share one scheduling boundary and checkout. This adds opt-in conversation checkouts: operations within a conversation remain serialized, while independent conversations use the worker's bounded execution slots without sharing writable Git metadata or files.
The worker and Code API negotiate
git_worktreesupport. LibreChat supplies an opaque conversation identity; Code API binds it to the authenticated tenant and user before admission. That identity survives programmatic replay and continuation, signed bridge payloads, executor selection, quarantine, and reset. Requests without it retain their existing behavior.Provisioning and recovery
The worker option and recovery procedure are documented in
packages/code/README.md. This is the Code API/worker foundation for Agents #548 and LibreChat #16107. Operators must enable conversation checkout storage and bounded lease slots to use the capability.Cold clone/setup work is also bounded by the triggering operation's execution deadline. The clone timeout is an upper bound, not an extension of that deadline. Environments with long setup commands should initialize via a command with a sufficient configured timeout before ordinary file operations.
Verification
The follow-up security review correctly found gaps missed by the prior self-review. Those worker findings are addressed in
f255141135e7636c106d506f47cf67b0e4e0dc1f, with focused regressions and a repeated native canary. No additional automated review was requested. LibreChat #16107 is draft: Agents #548 must be merged/released and the actual release pinned before the integration can ship. This PR alone does not establish cross-stack PTC rollout readiness.