Skip to content

Regression: Codex connector drops modern function_call arguments from searchable content #339

Description

@Dicklesworthstone

Summary

The current full test suite fails tests/connector_codex.rs::codex_connector_indexes_modern_response_items because a modern Codex response_item with payload.type = "function_call" does not produce searchable message content containing its arguments.

This was discovered while validating an unrelated cass view test-only timing fix for #338. The changed files for #338 do not touch connector parsing.

Reproduction

cargo test --test connector_codex codex_connector_indexes_modern_response_items -- --nocapture

Observed on main at 84d71f25e6b23594d770567e01820cae10706d10 (plus only the unrelated uncommitted #338 test-delay patch):

thread 'codex_connector_indexes_modern_response_items' panicked at tests/connector_codex.rs:248:5:
function_call arguments should be searchable

The broader unit suite was green (6123 passed; 14 ignored; 0 failed) before Cargo reached this integration binary.

Expected behavior

Modern Codex function_call arguments should remain searchable text, while structured invocation metadata is also preserved. The existing parser appears to construct that content in src/connectors/codex.rs::tool_call_content, so the loss may occur in the wrapper/merge/deduplication path after parsing.

Acceptance criteria

  • The focused integration test passes reliably.
  • Modern function_call arguments remain present in searchable normalized message content.
  • Invocation name, call ID, and parsed structured arguments remain intact.
  • Existing duplicate-collapse behavior for event_msg.agent_message vs assistant output_text remains unchanged.
  • Connector-focused and full relevant test suites pass.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions