session-typestypescriptprotocol-statetype-systems TypeScriptがその呼び出しを許さない:型システムにプロトコル状態を埋め込む方法 Phantom typesと `this` パラメータを使い、違法なプロトコル遷移を実行時のバグではなくコンパイルエラーに変える方法。 すべてのAPIクライアントの内部には、state machineが隠れている。まずhandshake。次に認証。三番目にデータ送信。最後に切断。この順序を崩すと、実行時エラー、混乱したサーバー、あるいはより悪いことに、静かなデータ破損が起きる。… 2026年8月12日