{"record":{"id":"533c02e88b308ef5","repo":"NousResearch/hermes-agent","slug":"codex-responses-input-idx-message-content-part-533c02","errorCode":null,"errorMessage":"Codex Responses input[{idx}] message content[{part_idx}] has unsupported type {part_type!r}.","messagePattern":"Codex Responses input\\[(.+?)\\] message content\\[(.+?)\\] has unsupported type (.+?)\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"agent/codex_responses_adapter.py","lineNumber":862,"sourceCode":"                )\n            continue\n\n        if item_type == \"message\":\n            role = item.get(\"role\")\n            if role != \"assistant\":\n                raise ValueError(f\"Codex Responses input[{idx}] message items must have role='assistant'.\")\n            content = item.get(\"content\")\n            if not isinstance(content, list):\n                raise ValueError(f\"Codex Responses input[{idx}] message item must have content list.\")\n            normalized_content = []\n            for part_idx, part in enumerate(content):\n                if not isinstance(part, dict):\n                    raise ValueError(\n                        f\"Codex Responses input[{idx}] message content[{part_idx}] must be an object.\"\n                    )\n                part_type = part.get(\"type\")\n                if part_type not in {\"output_text\", \"text\"}:\n                    raise ValueError(\n                        f\"Codex Responses input[{idx}] message content[{part_idx}] has unsupported type {part_type!r}.\"\n                    )\n                text = part.get(\"text\", \"\")\n                if text is None:\n                    text = \"\"\n                if not isinstance(text, str):\n                    text = str(text)\n                normalized_content.append({\"type\": \"output_text\", \"text\": sanitize_text(text)})\n            if not normalized_content:\n                raise ValueError(f\"Codex Responses input[{idx}] message item must contain at least one text part.\")\n            normalized_item: Dict[str, Any] = {\n                \"type\": \"message\",\n                \"role\": \"assistant\",\n                \"status\": _normalize_responses_message_status(item.get(\"status\")),\n                \"content\": normalized_content,\n            }\n            item_id = item.get(\"id\")\n            if (","sourceCodeStart":844,"sourceCodeEnd":880,"githubUrl":"https://github.com/NousResearch/hermes-agent/blob/c896c09c42910c584c4c7d2325b58c14713ea42c/agent/codex_responses_adapter.py#L844-L880","documentation":"Error \"Codex Responses input[{idx}] message content[{part_idx}] has unsupported type {part_type!r}.\" thrown in NousResearch/hermes-agent.","triggerScenarios":"Thrown at agent/codex_responses_adapter.py:862 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Map the unsupported content part type to a supported Responses type (text/output_text).","Drop or convert content parts the Responses API cannot represent."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"c896c09c42910c584c4c7d2325b58c14713ea42c","analyzedAt":"2026-08-14T17:18:01.089Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}