How do I detect radicals?

What test should I run to detect that this molecule is a radical? Running the AtomRadical() function on each atom does not see atom 2 as a radical. Maybe I could do it by subtracting the number of bonds from the AtomValence() value (counting double bond as 2, triple bond as 3) and filter for residual value >0 but that is far from elegant (and I can see issue with aromatic bonds). This feels like something that should be simple but (for me) it turns out not to be.


When I make atom 2 a radical with AtomSetRadical(2,1)​​​​​​​ I get this. I struggle to see why these states are different, the images obviously are but both structure contain an oxygen with an unpaired electron.

For reference:

smiles = N1([O])C(C)(C)CC(CC1(C)C)O

I am running PP server 23.3.100.167 on Windows10

Willem van Hoorn