fix: merge multiple filter operators for same key (#4559)

Co-authored-by: utkarsh240799 <utkarsh240799@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Utkarsh
2026-03-26 20:28:37 +05:30
committed by GitHub
co-authored by utkarsh240799 Claude Opus 4.6
parent a2ffca3266
commit 3ac4e047de
2 changed files with 47 additions and 3 deletions
+3 -3
View File
@@ -977,11 +977,11 @@ class Memory(MemoryBase):
}
if operator in operator_map:
result[key] = {operator_map[operator]: value}
result.setdefault(key, {})[operator_map[operator]] = value
else:
raise ValueError(f"Unsupported metadata filter operator: {operator}")
return result
for key, value in metadata_filters.items():
if key == "AND":
# Logical AND: combine multiple conditions
@@ -2099,7 +2099,7 @@ class AsyncMemory(MemoryBase):
}
if operator in operator_map:
result[key] = {operator_map[operator]: value}
result.setdefault(key, {})[operator_map[operator]] = value
else:
raise ValueError(f"Unsupported metadata filter operator: {operator}")
return result