when holding cmd down on a “smooth” point, tangent points are smooth points, will not move the bcp(s) but only the anchor points across the angle of the bcp(s)
a small script that “corrects” wrong smooht points by toggling the smooth flag of each point
# get the current glyph
g = CurrentGlyph()
# loop over all contours
for c in g:
# loop over all points
for p in c.points:
# deslect all points
p.selected = False
# if the point is an off curve don't do anything
if p.type == "offCurve":
continue
# if the point is smooth
if p.smooth:
# set smooth to false
p.smooth = False
# select the point
p.selected = True
# get the naked selection object and toggle the smoothness
g.naked().selection.toggleSmoothness()
# whoehoe, done
g.update()
good luck