Skip to content

Exclude reference-only facts from god-class & hotspots fan-in (GAP-XL… - #92

Merged
dejo1307 merged 1 commit into
mainfrom
fix/gap-xl-15-exclude-test-refs-from-fan-in
Jul 10, 2026
Merged

Exclude reference-only facts from god-class & hotspots fan-in (GAP-XL…#92
dejo1307 merged 1 commit into
mainfrom
fix/gap-xl-15-exclude-test-refs-from-fan-in

Conversation

@dejo1307

Copy link
Copy Markdown
Collaborator

…-15)

test_ref/file_ref nodes are indexed into the coupling graph, so their RelCalls edges landed in the reverse adjacency map and were counted as dependents by the two reverse-index explainers — inflating fan-in and centrality and, worse, drifting the outlier threshold so genuine findings dropped below the cut. The plugin contract promised "no other explainer is affected"; it was.

Add Graph.ArchitecturalReverse(), which filters reverse edges by source fact kind, and point god-class and hotspots at it. orphans, impact_analysis, traverse and find_path keep the unfiltered Reverse() — they intentionally surface those references.

Explainer read-path + a derived index only; facts.jsonl is byte-identical, so no cacheVersion bump and no golden regeneration.

Tests: facts.TestArchitecturalReverse_ExcludesReferenceKinds, {godclass,hotspots}.TestExplain_ExcludesTestRefFanIn.

…-15)

test_ref/file_ref nodes are indexed into the coupling graph, so their
RelCalls edges landed in the reverse adjacency map and were counted as
dependents by the two reverse-index explainers — inflating fan-in and
centrality and, worse, drifting the outlier threshold so genuine
findings dropped below the cut. The plugin contract promised "no other
explainer is affected"; it was.

Add Graph.ArchitecturalReverse(), which filters reverse edges by source
fact kind, and point god-class and hotspots at it. orphans,
impact_analysis, traverse and find_path keep the unfiltered Reverse() —
they intentionally surface those references.

Explainer read-path + a derived index only; facts.jsonl is byte-identical,
so no cacheVersion bump and no golden regeneration.

Tests: facts.TestArchitecturalReverse_ExcludesReferenceKinds,
{godclass,hotspots}.TestExplain_ExcludesTestRefFanIn.
@dejo1307
dejo1307 merged commit 4c7ad12 into main Jul 10, 2026
4 checks passed
@dejo1307
dejo1307 deleted the fix/gap-xl-15-exclude-test-refs-from-fan-in branch July 17, 2026 22:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant