I recently filed a bug report on the XeTeX repo about the kerning of sub- and superscripts in OpenType fonts:
https://sourceforge.net/p/xetex/bugs/175/
luaTeX's find_math_kern() has many of the same flaws.
Cheers,
David.
P.S. I don't think the related bug
https://sourceforge.net/p/xetex/bugs/173/
is relevant here because luaTeX's analyze_script() already does essentially the same thing (I haven't compared the two implementations in detail). In fact, analyze_script() does more, since it also handles the sub_box case.