feat(codex)!: remove the codex-acp harness, app-server is the only codex adapter#3198
Merged
Conversation
|
Merging to
After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here |
Contributor
|
Reviews (1): Last reviewed commit: "feat(codex)!: remove the codex-acp harne..." | Re-trigger Greptile |
8d22c8f to
9ab595a
Compare
|
React Doctor found no issues in the changed files. 🎉 Reviewed by React Doctor for commit |
9ab595a to
5c07861
Compare
charlesvien
approved these changes
Jul 6, 2026
…dex adapter The native app-server adapter has been the default for codex sessions and codex-acp existed only as a flag-gated fallback. That fallback is a liability: when the selector's inputs wobble (missing binary, unresolved flag) sessions silently land on codex-acp, which deadlocks with current models instead of failing visibly. - delete the codex-acp adapter (CodexAcpAgent, its client, spawn, MCP server entries) and the acp-vs-app-server parity suite - move the shared CodexSettingsManager and model catalog into the codex-app-server directory - drop the codex-app-server feature flag, the useCodexAppServer plumbing (sessionService, workspace-server schemas, adapter-store pinning), and the POSTHOG_CODEX_USE_APP_SERVER / POSTHOG_CODEX_USE_ACP env overrides; a codex session always uses the app-server adapter and a missing native binary now fails loudly - stop downloading and staging the codex-acp binary (~80MB per platform); the bundle dir keeps its name so packaging config, CI verify steps, and older sandbox images stay compatible, and nativeCodexBinaryPath still accepts a sibling-binary hint from hosts that pass the old path Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
5c07861 to
318b26b
Compare
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.
Problem
Codex sessions could run through two harnesses: the native
codex app-serveradapter (flag-gated default-on) and the legacy codex-acp adapter as a silent fallback. The fallback is now a liability rather than a safety net: whenever the selector's inputs wobble (native binary not yet resolvable, flag not loaded), sessions silently land on codex-acp, which deadlocks with current codex models — the session does a minute of work and hangs forever. We hit exactly this in eval runs today: the first wave of sandboxes fell back to codex-acp and burned a 30-minute timeout each, while every later wave selected app-server and ran fine.Changes
adapters/codex/: CodexAcpAgent, client, spawn, session state, its structured-output/local-tools MCP server entries) and the acp-vs-app-server parity suite, which existed only to compare the two.CodexSettingsManagerand codex model catalog intoadapters/codex-app-server/.codex-app-serverfeature flag and alluseCodexAppServerplumbing: sessionService flag resolution and adapter-store pinning, workspace-server schemas, agent options, and thePOSTHOG_CODEX_USE_APP_SERVER/POSTHOG_CODEX_USE_ACPenv overrides. A codex session always uses the app-server adapter; a missing native binary now throws with a clear message instead of degrading.codex-acpname so electron-builder config, CI verify steps, and unrebased branches keep working, andnativeCodexBinaryPathstill accepts the old "sibling binary" hint so older sandbox images that pass the codex-acp path keep resolving the native binary.Breaking for in-flight codex-acp sessions: after upgrading, an existing codex session created by the acp harness resumes under app-server and will not retain its thread history. Given codex sessions were flag-gated to app-server already, the affected set is sessions created while the flag was off.
How did you test this?
tsc --noEmit: 0 errors across@posthog/agent,@posthog/core,@posthog/ui,@posthog/shared,@posthog/workspace-server, andapps/code.CodexAcpAgent,useCodexAppServer, or the env overrides.Automatic notifications
🤖 Agent context
Follow-up to the app-server rollout (#2723) and the native binary packaging fix (#3188). Requested as "remove the codex-acp harness completely, and we will just use the app server one". The eval-run fallback incident that motivated failing loudly is described under Problem.
🤖 Generated with Claude Code