diff --git a/graphify/build.py b/graphify/build.py index 258036f8f..2de02b2ae 100644 --- a/graphify/build.py +++ b/graphify/build.py @@ -666,7 +666,15 @@ def deduplicate_by_label(nodes: list[dict], edges: list[dict]) -> tuple[list[dic """Merge nodes that share a normalised label, rewriting edge references. Prefers IDs without chunk suffixes (_c\\d+) and shorter IDs when tied. - Drops self-loops created by the merge. Called in build() automatically. + Drops self-loops created by the merge. + + Dormant: this is NOT wired into ``build()`` — the active dedup path is + ``deduplicate_entities`` (imported and called in ``build``), which supersedes + it. The previous "Called in build() automatically" note was never true. It + also merges by label alone with no ``file_type`` guard, so it must not be + enabled for code nodes: same-label symbols from different files/packages + (e.g. two ``Account`` types) would collapse into one — the cross-file + conflation ``deduplicate_entities`` deliberately avoids for code (#1205). """ _CHUNK_SUFFIX = re.compile(r"_c\d+$") canonical: dict[str, dict] = {} # norm_label -> surviving node