fix: handle documents as list or dict in prompt builder

EspoCRM may send documents as a list instead of a dict with
totalFiles. Convert list to dict format to avoid AttributeError.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-13 18:18:44 +00:00
parent 4dc25d08a3
commit 4c491ce45a
+2
View File
@@ -65,6 +65,8 @@ def build_case_prompt(context: dict) -> str:
recent_notes = context.get("recentNotes", []) recent_notes = context.get("recentNotes", [])
templates = context.get("availableTemplates", []) templates = context.get("availableTemplates", [])
documents = context.get("documents", {}) documents = context.get("documents", {})
if isinstance(documents, list):
documents = {"totalFiles": len(documents)}
recent_calls = context.get("recentCalls", []) recent_calls = context.get("recentCalls", [])
case_memory = context.get("caseMemory", {}) case_memory = context.get("caseMemory", {})
assistant_rules = context.get("assistantRules", []) assistant_rules = context.get("assistantRules", [])