doc-service: parse fact_value_json string in doc context lookup

This commit is contained in:
Apple
2026-02-18 09:37:54 -08:00
parent 30ea12e0f8
commit bfd0e05bc9

View File

@@ -11,6 +11,7 @@ This service can be used by:
import os import os
import logging import logging
import hashlib import hashlib
import json
from typing import Optional, Dict, Any, List from typing import Optional, Dict, Any, List
from pydantic import BaseModel from pydantic import BaseModel
from datetime import datetime from datetime import datetime
@@ -160,6 +161,12 @@ class DocumentService:
if fact and fact.get("fact_value_json"): if fact and fact.get("fact_value_json"):
logger.debug(f"Retrieved doc context for session {session_id}") logger.debug(f"Retrieved doc context for session {session_id}")
ctx_data = fact.get("fact_value_json") ctx_data = fact.get("fact_value_json")
if isinstance(ctx_data, str):
try:
ctx_data = json.loads(ctx_data)
except Exception:
logger.warning("doc_context fact_value_json is not valid JSON string")
return None
return DocContext(**ctx_data) return DocContext(**ctx_data)
return None return None