“It shall be unlawful for any employer to collect or receive from an employee any part of wages theretofore paid by said employer to said employee.” Labor Code § 221. Wages are defined broadly to include “all amounts for labor performed ... ” This definition makes it clear that the statute prevents an employer from taking back wages earned and paid (as opposed to overpayments of wages not earned). See Harris v. Investor's Business Daily, Inc. (2006) 138 CA4th 28, 40.
However, there is no prohibition against an employer recovering advances (payments not yet earned by the employee's full performance of the contract). Steinhebel v. Los Angeles Times Communications (2005) 126 CA4th 696, 705.
Based upon your stated facts, you could be on the hook for the advances against the retention bonus. The way out may be to prove that the contract is a restrictive covenant not to compete, in violation of Bus. & Prof. Code 16600, on the theory that if the employer can't prohibit an employee from competing after termination by any direct means, it may be able to do so, by making the cost of quiting employment so great that the employee cannot reasonably do so -- or, by creating an effective damage award against the employee created such that the employer can recover for the employee's resignation, and ultimate competition with the employer.
There's no case law on this issue -- I'm trying to give you a legal argument that you could use as a defense to a lawsuit.
Re the odds of being sued -- it's all about the employer. There's no way for me to analyze the risk, especially as your particular employment relationship is atypical/rare.
Hope this helps.
NOTICE: My goal here is to educate others about the law. I am always available to answer your follow-up questions after you click Accept – however, if you do not click Accept, the website gets paid, and I receive nothing. This is true, even if you are on a subscription plan. So please click Accept, so that I will be able to continue to provide this service for others in the future.
And, if you need to contact me again, please put my user id on the title line of your question (“To Socrateaser”), and the system will send me an alert. Thanks!