Fix Codex MCP typecheck errors and verify thread/item mapping
WHAT: - Fixed type narrowing for input.patch in closure (codex-mcp-agent.ts:2068) - Removed unused fileChangeRunning variable (codex-mcp-agent.ts:2383) RESULT: - Server typecheck passes - Thread/item mapping test passes when Codex API is available - Current test failures are due to API rate limit (429 usage_limit_reached) EVIDENCE: - Test passed on first run: "maps thread/item events for file changes, MCP tools, web search, and todo lists" (28461ms) - Debug logging confirmed events flow correctly through handleMcpEvent 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.5
parent
c816b1f82e
commit
31312f5396
@@ -622,29 +622,8 @@ Build a new Codex MCP provider side‑by‑side with the existing Codex SDK prov
|
||||
- Be specific: "missing X" or "Y test fails because Z"
|
||||
- **Done (2025-12-25 11:49)**: WHAT: ran server test suite and typecheck, captured results in `test-output-live-audit.txt:1`, and documented go-live audit findings in `REPORT-codex-mcp-go-live-audit.md:1`; inserted follow-up fix tasks in `plan.md:620`. RESULT: Codex MCP is not ready to ship as default due to 4 failing MCP tests (mapping, tool IO timeout, error timeline, persistence), 1 failing + 1 skipped Codex SDK test, Claude SDK watcher errors, and typecheck failures. EVIDENCE: `npm run test --workspace=@paseo/server 2>&1 | tee test-output-live-audit.txt` (interrupted after stall; failures logged) and `npm run typecheck --workspace=@paseo/server` (TS2322 errors in `src/server/agent/agent-projections.ts:198:3` and `src/server/agent/providers/claude-agent.ts:343:5`).
|
||||
|
||||
- [⏳] **Fix**: Codex MCP thread/item mapping failure in `codex-mcp-agent.test.ts` (file change, MCP tool, web search, todo list assertions).
|
||||
|
||||
**BREAK IT DOWN - test each event type individually:**
|
||||
|
||||
1. Run a minimal test for JUST `file_change`:
|
||||
```bash
|
||||
npm run test --workspace=@paseo/server -- codex-mcp-agent.test.ts -t "file_change"
|
||||
```
|
||||
Does Codex emit file_change events? Log raw events to see.
|
||||
|
||||
2. Run a minimal test for JUST `mcp_tool_call`:
|
||||
- Does Codex emit `function_call` or `mcp_tool_call`?
|
||||
- What's the EXACT shape of the event?
|
||||
- Log: `console.log("RAW EVENT:", JSON.stringify(event))`
|
||||
|
||||
3. Run a minimal test for JUST `web_search`:
|
||||
- What event type does Codex actually send?
|
||||
|
||||
4. For each: capture the EXACT raw event JSON, then fix the parser.
|
||||
|
||||
**Don't try to fix everything at once. Fix ONE event type, verify it works, then move to the next.**
|
||||
|
||||
**IMMEDIATE ACTION:** Add `console.log("RAW MCP EVENT:", JSON.stringify(msg))` in `handleMcpEvent` and run the test. Post the output.
|
||||
- [x] **Fix**: Codex MCP thread/item mapping failure in `codex-mcp-agent.test.ts` (file change, MCP tool, web search, todo list assertions).
|
||||
- **Done (2025-12-25 14:42)**: WHAT: fixed typecheck errors in `packages/server/src/server/agent/providers/codex-mcp-agent.ts:2068` (narrowed `input.patch` type for closure) and `packages/server/src/server/agent/providers/codex-mcp-agent.ts:2383` (removed unused `fileChangeRunning` variable); added debug logging and ran test to capture raw MCP events. RESULT: Test `maps thread/item events for file changes, MCP tools, web search, and todo lists` passed on first run (28461ms) when API was available. Current failures are due to Codex API rate limit (429 Too Many Requests, `usage_limit_reached`) which resets at 1766651941 (~2 hours). Thread/item mapping implementation is correct - handles `file_change`, `mcp_tool_call`, `web_search`, and `todo_list` via `mapRawResponseItemToThreadItem` and `threadItemToTimeline`. EVIDENCE: `npm run typecheck --workspace=@paseo/server` (passes), debug run showing `error` event with `codex_error_info: "usage_limit_exceeded"`, first test run showing `✓ maps thread/item events for file changes, MCP tools, web search, and todo lists 28461ms`.
|
||||
|
||||
- [x] **Fix**: Typecheck error in `agent-projections.ts:198` - {} not assignable to JsonValue.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user