Why not use ai to update the tests first? Make sure the tests conform to the old codebase, then use those same tests to verify the new functionality?
A change in behavior maybe construed as a bug, a breaking change or a regression, and a lot of time it's not so obvious. Sometimes you want the original behavior, sometimes you don't. Sometimes changing one for the better means another behavior needs to go, and you don't know if the user already depended on that other behavior. That's the real staying power of legacy software despite universal agreement that they suck.