takさんこんにちは。
SQLiteで型名に長さを指定せずTEXTだけ記述すると、長さが不明であるため内部的にはCLOBとして扱われます。これは開発ツールであるDelphiの制約なのですが、CLOBの場合、主キーとして扱うことができなくなってしまいます。
このため、長さの指定されないTEXT型を主キーとして使用すると、サロゲートペアでなくとも、レコードが更新できなくなるようでした。
Version 2.15.0 release candidate 1で、デフォルトの動作モードで、長さの指定されないTEXT型をCLOBではなく文字列型として認識するようにしました。
ただし、長さは8192バイト以下に制限されます。8192バイトを超えるTEXTを扱うには、オプションダイアログから「TEXT型及び不明な型をラージオブジェクト(CLOB)型ではなく、文字列型として扱う」のチェックをOFFにしてください。