If the function output remains the same, then there are no breaking changes.
If breaking changes occur, the type system will let you know :) Then you can either pin the function to an older version or fix the breaking changes directly.
The language provides enough guarantees to make tooling that can handle most of this for the user automatically.