pub fn maintenance_risk(facts: &GroupFacts) -> f64Expand description
What keeping the copies in step costs.
Copies drift. What decides how expensive that is: how many places have to receive the same edit, how much code each of them is, and how far apart they sit — copies in one file are read together and tend to be changed together, copies in different directories are not and do not.
GroupFacts::churn and GroupFacts::ownership_spread belong here too
and are not read: nothing supplies them yet, and inventing a value for a
missing input would put findings in an order the evidence does not support.
Structural mode also reports loop, allocation, and call-site evidence.
Those facts measure maintenance surface, not generated code size.