8f922e68b3
Add engram_auto_link_semantic(): when a node is embedded, scan all embedded nodes for cosine sim >= 0.72 and create bidirectional "semantic-similar" edges to the top-3 matches. Runs once at write time rather than at every query, converting the expensive O(N) scan from live activation into durable graph structure. Fixes the core connectivity problem: 63 edges / 5364 nodes (0.012 edges/node). Verified: new Knowledge nodes now auto-link at sim 0.77– 0.95 with correct threshold discrimination. One checkpoint per insert (not one per edge) bounds the persistence overhead. Excludes InternalStateEvents and inbox/outbox transient nodes to keep semantic graph clean.