A function whose name doesn't match what it does, or whose parameter list carries unused/awkwardly-ordered arguments — readers must inspect the body to understand the call.
Function names match what they actually do; parameter lists carry only what the function needs, in the order callers expect.
Before the refactoring
function circum(radius) {return 2 * Math.PI * radius;}
After the refactoring
function circumference(radius) {return 2 * Math.PI * radius;}
Every reader of a call site pays a comprehension cost; mismatches between name and behavior hide bugs; new callers learn the wrong abstraction from the wrong signature.
Every caller pays for the signature change at once, even those whose call sites were already fine; other-team callers get forced coordination.
Call sites read fluently; mismatches between expectation and behavior surface immediately at the boundary.
Renaming or reshaping signatures across team boundaries without coordination — forces other teams to rebuild their code on the change's PR timeline.