CoChange
Two modules that changed together (co-changed) across the analysed commit window.
Temporal (change) coupling is orthogonal to the static dependency graph: it measures how the code actually evolves rather than what it declares. Pairs are canonicalised so moduleA is always lexicographically less than moduleB, giving one deterministic row per unordered pair.
Parameters
First module path (the lexicographically smaller of the pair).
Second module path.
Number of commits that touched both modules.
Coupling strength in [0.0, 1.0]: sharedCommits / min(commitsA, commitsB). 1.0 means the less-churned module never changed without the other.
True when a production (non-test) dependency edge exists between the two modules in either direction - i.e. the co-change is backed by a declared structural link.