TemporalCouplingReport

data class TemporalCouplingReport(val commitsAnalyzed: Int, val churn: List<ModuleChurn> = emptyList(), val coChanges: List<CoChange> = emptyList(), val hiddenCoupling: List<CoChange> = emptyList(), val deadStructure: List<DeclaredEdgeRef> = emptyList())(source)

The result of a git temporal-coupling analysis over a window of recent commits.

Produced by TemporalCouplingAnalyzer in aalekh-analysis from plain commit data extracted by the Gradle plugin, and rendered as a local Markdown / JSON artefact by aalekh-report. All fields default to empty so reports written by older plugin versions still deserialize cleanly.

Parameters

commitsAnalyzed

Number of commits that mapped to at least one module (empty commits and commits touching only non-module files are excluded).

churn

Per-module commit counts, sorted most-churned first. The change hotspots.

coChanges

All co-changing pairs above the shared-commit threshold, strongest first.

hiddenCoupling

The subset of coChanges that co-change strongly yet have no declared dependency - implicit coupling the static graph cannot see.

deadStructure

Declared production edges whose endpoints both changed in the window but never co-changed - structure that may no longer reflect how the code evolves.

Constructors

Link copied to clipboard
constructor(commitsAnalyzed: Int, churn: List<ModuleChurn> = emptyList(), coChanges: List<CoChange> = emptyList(), hiddenCoupling: List<CoChange> = emptyList(), deadStructure: List<DeclaredEdgeRef> = emptyList())

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard