# Building the graph in Neo4j; names that are the same thing (STUB extraction)

image    : neo4j:2026.10.1-community
server   : Neo4j Kernel 2026.10.1 community

--- vector indexes (one from Neo4jVectorStore for chunks, one of ours for entity names) ---
chunk_embedding        on (:Chunk).embedding  ONLINE
entity_name_embedding  on (:Entity).embedding  ONLINE

--- A. exact-name matching only (no alias table, similarity merge off) ---
entities: 28
Payments Gateway : -[DEPENDS_ON]-> Ledger Service; -[HOSTED_ON]-> Arcadia Cloud; -[OWNED_BY]-> Payments Team; <-[DEPENDS_ON]- Checkout Service
Card Gateway     : <-[AFFECTED]- INC-2060

--- same-type name pairs by cosine of their embeddings, top 8 of 72 ---
0.806  INCIDENT INC-2057  <->  INC-2060
0.797  INCIDENT INC-2041  <->  INC-2057
0.758  INCIDENT INC-2041  <->  INC-2060
0.681  SYSTEM  Card Gateway  <->  Payments Gateway
0.540  SYSTEM  Ledger Service  <->  Inventory Service
0.535  TEAM    Storefront Team  <->  Platform Team
0.530  TEAM    Core Data Team  <->  Platform Team
0.519  SYSTEM  Inventory Service  <->  Checkout Service
-- Card Gateway <-> Payments Gateway: cosine 0.681, rank 4

--- what a similarity-only merge would do at each threshold ---
threshold 0.90 -> 0 merges: 
threshold 0.80 -> 1 merges: INC-2057 + INC-2060
threshold 0.70 -> 3 merges: INC-2057 + INC-2060; INC-2041 + INC-2057; INC-2041 + INC-2060
threshold 0.60 -> 4 merges: INC-2057 + INC-2060; INC-2041 + INC-2057; INC-2041 + INC-2060; Card Gateway + Payments Gateway

--- B. plus a one-line alias table (Card Gateway = Payments Gateway) ---
entities: 27
Payments Gateway : -[DEPENDS_ON]-> Ledger Service; -[HOSTED_ON]-> Arcadia Cloud; -[OWNED_BY]-> Payments Team; <-[AFFECTED]- INC-2060; <-[DEPENDS_ON]- Checkout Service
chunks: 35, MENTIONS edges: 54, dropped relations: 0

--- relationships by type ---
DEPENDS_ON   6
OWNED_BY     6
HOSTED_ON    5
LED_BY       5
REPORTS_TO   4
AFFECTED     3
CAUSED_BY    2
LOCATED_IN   2
