MicroFish/backend/app
Ubuntu 6bce05dca2 fix(graphiti): flatten nested attribute dicts before Neo4j write; hide summary from properties panel
Graphiti's attribute extraction LLM sometimes returns values wrapped in
nested dicts ({"value": "CTTI"}) instead of plain strings. Neo4j rejects
these with TypeError: "Property values can only be of primitive types".

Fix: after _AzureGenericClient gets the LLM response, validate it through
the Pydantic response_model and call _flatten_attributes() so every value
reaching Neo4j is a scalar. Also add _flatten_attributes() helper.

UI: exclude 'summary' from the Properties section of the node detail panel
since it already appears in the dedicated Summary section below.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 20:08:39 +00:00
..
api chore(i18n): replace all hardcoded Chinese strings with English in backend 2026-04-24 23:40:58 +00:00
graph fix(graphiti): flatten nested attribute dicts before Neo4j write; hide summary from properties panel 2026-04-25 20:08:39 +00:00
models chore(i18n): replace all hardcoded Chinese strings with English in backend 2026-04-24 23:40:58 +00:00
services feat(ontology): make entity/edge type limits configurable via env vars 2026-04-25 19:56:44 +00:00
utils feat(llm): auto-configure Google AI Studio URL when LLM_PROVIDER=gemini 2026-04-25 13:13:11 +00:00
__init__.py chore(i18n): replace all hardcoded Chinese strings with English in backend 2026-04-24 23:40:58 +00:00
config.py feat(ontology): make entity/edge type limits configurable via env vars 2026-04-25 19:56:44 +00:00