その4をまとめられるほど学習が進まなかったわ
デザイン方向と機能案に時間を多く割いた結果、有名アセットとしてFinalIKを購入してデモを見て使い方をほんの少し覚えるだけで終わった

FinalIKそのものの話ではないけど、FinalIKは昔はアニメーション時にイベントを発生させる方法がSendMessageしか用意されていなかったっぽいのね(古いデモ動画見たらこれしかインスペクターに映ってなかった)
今はUnityEventにも対応しているので基本的にこっちを使うことになりそう
そもそもUnityにイベントを発生させる方法って何があるの?って再度調べてみると、現在ではUnityEventとC#Eventの二つが主流っぽい?
他にもSendMessageやBroadCastMessageというイベント発生機能も用意されているが、パフォーマンス面や管理のコストの問題を指摘する記事が多い印象(ゲームオブジェクト全体にイベントを送信してしまうため重い、関数を名前で指定するからゲームシステムを設計変更したりすると変更漏れとかが生じやすい?)
ちなみにEventSystemが入力情報を経てコールバックを発火するのに使うExecuteEventsもIEventSystemHandlerを実装するコンポーネントの関数をコールするものらしいので実はイベント発生に利用できるらしい(使う必要性があるかは知らない)