📄️ Brand 型を unique symbol + Mapped Type で実装し companion で生成境界を閉じる
問題
📄️ Object.hasOwn() は ES2022 — ES2020 ターゲットだとコンパイルエラー
問題
📄️ classify/Decision 型は guard (canCreate) に集約すれば不要
TL;DR
📄️ companion object パターンで型 + 同名名前空間を統一する
遭遇した問題
📄️ wire 型と domain 型の adapter boundary パターン(Tauri IPC の実例)
問題
📄️ TypeScript でエラーをドメイン概念として扱うのは「普通」か
TL;DR
📄️ ドメイン集約で薄いラッパー被覆はアンチパターン
TL;DR
📄️ モジュールは「単位ごとにフォルダを切り、index で公開 API を絞る」— folder-by-feature と barrel の使いどころ
問題
📄️ ライブラリをラップしたら下層を fake にできなくなった — 薄い差し替え口と翻訳する port に分ける
TL;DR
📄️ ラップした内部依存(CommandTransport)を外から完全に隠蔽する
TL;DR
📄️ TypeScriptで共通部分を持つ型を組む — `&`合成 / `interface extends` / ジェネリクスの使い分け
TL;DR
📄️ TypeScript で注入なしに I/O を分離する:domains / lib / service の3層とモジュール境界
TL;DR