Skip to content

Fix Codex ACP startup failures stuck as running tools - #2698

Merged
jonathanKingston merged 2 commits into
mainfrom
codex/fix-acp-startup-tools
Sep 20, 2026
Merged

jonathanKingston merged 2 commits into
mainfrom
codex/fix-acp-startup-tools

Conversation

@jonathanKingston

@jonathanKingston jonathanKingston commented Sep 19, 2026

Copy link
Copy Markdown
Collaborator

Codex ACP reports an MCP startup failure as a single tool_call carrying status: failed and its diagnostic. Copse discarded that initial state and waited for a later update that never arrives, leaving identical “Startup” rows spinning indefinitely.

Preserve initial tool output and terminal status by emitting the creation followed by the existing update path. Keep the MCP server name in startup labels, so failures appear as docs startup or issue_tracker startup with their original diagnostics.

Closes #2494.

Validation:

  • Added a real ACP SDK transport fixture replaying the one-event failure emitted by codex-acp 1.10.0, plus adapter and renderer-controller regressions.
  • 521 focused ACP, controller, and tool-display tests passed; pnpm run build passed.
  • Focused Electron eval passed and the screenshot was visually inspected: distinct failed servers, readable diagnostics, and no activity spinners.
  • Oracle-selected Electron run (high confidence): 61/65 specs passed, including the new startup regression and existing MCP labels, ACP recovery, tool activity, and tool rollup specs. Failures were hook-cards (wait timeout), mermaid-parity (SVG geometry), pane-loading (loading UI assertion), and staged-diff-ui (timeouts/missing proposed section).
  • Full pnpm run check: all static gates passed; 9,267 of 9,296 unit tests passed. The 29 failures hit deadlines in unchanged hook suites (after-file-edit, before-submit-prompt, diff-apply, permission-decision, post-turn-review, session-start, stop, and subagent).
  • Local Electron runs use an untracked config overriding only the browser version to Chromium 152, matching Electron 44; the base config still pins Chromium 150.

GitHub CI is currently blocked in precheck: pnpm audit --audit-level=high reports GHSA-7q85-xj36-vmfc for the existing adm-zip@0.6.0 dependency through Rampart → Transformers → onnxruntime-node. The dependency manifest and lockfile are identical to main.

Failed MCP startup tools with server-specific labels and diagnostics

github-actions Bot added a commit that referenced this pull request Sep 19, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🖥️ PR preview

@copse-release-bot

Copy link
Copy Markdown
Contributor

Reference screenshots ready for review

Review GitHub’s image diffs in screenshot PR #2707.
Merge it (or enable auto-merge) to apply the accepted PNGs to codex/fix-acp-startup-tools.

Rendered for a17fc5867b4f by CI run 35476282234; the immutable artifact is reference-screenshot-candidates-35476282234.

If this source branch moves, a later successful render closes the stale review PR and replaces this link.

@jonathanKingston
jonathanKingston merged commit d455e23 into main Sep 20, 2026
24 checks passed
@jonathanKingston
jonathanKingston deleted the codex/fix-acp-startup-tools branch September 20, 2026 14:10
github-actions Bot added a commit that referenced this pull request Sep 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[bug] Codex ACP tool calls all render as 'Startup' and never resolve

1 participant