Could you expand on what do you mean by rebase breaking CI tests? I don't see how that's possible.
I've never found this to be an actual problem in practice.
That said, shouldn't CI be triggered after the rebase anyway to confirm all still works?
Instead of taking the branch <feature> and rebasing it, make a branch called <feature>.1 on top of <feature>, then rebase that, leaving <feature> in place.
That way all your references remain intact and you can compare CI results.
Increment the number as needed.