Hi,
\lastnodetype doesn't give the expected result for ligature nodes (7),
registering them as char nodes (0) instead. This happens for both legacy
and opentype fonts:
\font\x=cmr12
\x
\setbox0\hbox{fl}
\unhbox0
\the\lastnodetype
\ifdefined\directlua
\input luaotfload.sty
\font\x=[lmroman12-regular.otf]:script=latn;+trep;+tlig;%mode=base;
\x
\setbox0\hbox{fl}
\unhbox0
\the\lastnodetype
\fi
\bye
It seems to work fine with the other node types (but I haven't tested
all of them ...).