Read right from the source... he received a bad conduct discharge. While that is not a dishonorable discharge, it also is not a "less than honorable" discharge. Those are two sperate things.
"
attempted larceny, three specifications of dereliction of duty, making a false official statement, wrongfully using another’s social security number,1 and ten specifications of making and uttering checks without having sufficient funds in his account for 1 The appellant was charged under Article 134, UCMJ, for a violation of Title 42 U.S.C. § 408(a)(7)(B). 2 payment, in violation of Articles 80, 92, 107, and 134, Uniform Code of Military Justice, 10 U.S.C. §§ 880, 892, 907, and 934."
https://www.jag.navy.mil/courts/documents/archive/2008/WHELAN, P.N. 200800152 PCE.pdf
My point in this is simply... drop the "he's a vet" act... if you want to call that woman a criminal, than so is this guy. He broke the faith, and did it to his fellow shipmate. He is a criminal too.
As to the allegations he was spying, I doubt it, and doubt IF he was, that he was doing it for the US even more. The info he was accused of receiving, by even Russia was low level BS, not of much use to our government. It is entirely possible he was setup to facilitate a trade, as the US had just charged two Russians with spying when he was charged.... in 2018. So remember that Trump let this guy sit in a Russian gulag for 2 years, and refused to trade him for the spies he did release to Russia, so its unlikely he was a US asset.
So hate Biden for any of his numerous policy positions you don't agree with, but don't toss this criminal up as just a good vet being left behind... hes not.