{"record":{"id":"9c62c97a085c586b","repo":"BerriAI/litellm","slug":"file-sanitization-failed-e","errorCode":null,"errorMessage":"File sanitization failed: {e}","messagePattern":"File sanitization failed: (.+?)","errorType":"http","errorClass":"HTTPException","httpStatus":500,"severity":"error","filePath":"litellm/proxy/guardrails/guardrail_hooks/prompt_security/prompt_security.py","lineNumber":488,"sourceCode":"                )\n\n            if action == \"modify\":\n                sanitized_content: Final = sanitization_result.get(\"content\", \"\")\n                if sanitized_content:\n                    sanitized_encoded: Final = base64.b64encode(sanitized_content.encode()).decode()\n                    sanitized_url: Final = f\"{header},{sanitized_encoded}\"\n                    if isinstance(image_url_data, dict):\n                        image_url_data[\"url\"] = sanitized_url\n                    else:\n                        item[\"image_url\"] = sanitized_url\n                    verbose_proxy_logger.info(\"File content modified by Prompt Security\")\n\n            return item\n        except HTTPException:\n            raise\n        except Exception as e:\n            verbose_proxy_logger.error(\"Error sanitizing image file: %s\", e)\n            raise HTTPException(status_code=500, detail=f\"File sanitization failed: {e}\")\n\n    async def _process_document_item(self, item: dict, user_api_key_alias: str | None) -> dict:\n        \"\"\"Process and sanitize document/file items.\"\"\"\n        doc_data: Final = item.get(\"document\") or item.get(\"file\") or item\n\n        if isinstance(doc_data, dict):\n            url = doc_data.get(\"url\", \"\")\n            doc_content = doc_data.get(\"data\", \"\")\n        else:\n            url = doc_data if isinstance(doc_data, str) else \"\"\n            doc_content = \"\"\n\n        if not (url.startswith(\"data:\") or doc_content):\n            return item\n\n        try:\n            header = \"\"\n            if url.startswith(\"data:\"):","sourceCodeStart":470,"sourceCodeEnd":506,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/proxy/guardrails/guardrail_hooks/prompt_security/prompt_security.py#L470-L506","documentation":"Error \"File sanitization failed: {e}\" thrown in BerriAI/litellm.","triggerScenarios":"Thrown at litellm/proxy/guardrails/guardrail_hooks/prompt_security/prompt_security.py:488 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the underlying exception in the proxy logs for the sanitization failure.","Verify the file format is supported by Prompt Security sanitization."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8","analyzedAt":"2026-08-18T11:44:31.656Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}