v2.5.1
[2.5.1] - 2026-04-25
Hotfix release. Surfaced during the v2.5.0 perf benchmark run.
Fixed
KnowledgeGraph._cache_edgecrashed on legacy-schema edges.
Long-running deployments accumulatedkg_edges.jsonlentries written
by a now-removed pre-v2.5.x writer that used
{source_id, target_id, relation_type}instead of the canonical
{from_node_id, to_node_id, relationship}keys. The loader hard-failed
withKeyError: 'from_node_id'on the first such row, taking down
everyrecall()andsynthesize()that touches the KG. Affects any
workspace with mixed-schema edge history; observed locally with 189k
edges where ~80k were the legacy shape.
_normalize_edge_schema()now remaps legacy keys to canonical on load
and silently drops entries that are still un-normalizable, with a
count logged at WARNING so operators can see the skip volume.
Six new regression tests intests/test_kg_edge_schema.pycover
pass-through, remap, missing-fields, non-dict, mixed-batch, and
corrupt-JSON cases. The previously-broken environment-dependent
test_basic.py::test_ingest_relationshipnow passes deterministically.