なんとなくですが,分かってきました. 一度和文組版処理の対象となった glyph_node (\unhbox で別の水平リストに追加された)も,和文フォントへの置換処理に通されてしまい,合字「fi」が 和文処理扱いとされてしまったようです.
そもそも U+FB00-FB4F Alphabetic Presentation Forms が和文文字なのか,という問題は別にありますが,妙な感じがします.
Adobe-Japan1-6 の一覧を見直してみたら,fi とか fl とかの合字も含まれていました. そのため,「Alphabetic Presentation Forms と Adobe-Japan1-6 は共通部分あり」と思い込んでしまったようです.
昼頃にでも直せたらいいなあ.
commit b5515fd, 8b538bc で直しました.
遅くなりましたが,確認しました.完了とします.
以下のコードをコンパイルします.
\documentclass{article} \usepackage{amsthm} \usepackage{luatexja-fontspec} \setmainfont{TeXGyreTermes} \setmainjfont{TeXGyreHeros} \theoremstyle{definition} \newtheorem{definition}{Definition} \begin{document} \begin{definition} {\bfseries Definition} \end{definition} \end{document}すると,Definition 1. の fi が \setmainjfont で指定した TeXGyreHeros になります. 一方,\bfseries の fi の方は正しく出ています.
そもそも U+FB00-FB4F Alphabetic Presentation Forms が和文文字なのか,という問題は別にありますが,妙な感じがします.