drizzle-kit introspectのtinyint(1) DEFAULTはバージョンでboolean defaultの生成が変わる
Drizzle
ORM
データベース
MySQL上の tinyint(1) NOT NULL DEFAULT '0' は、drizzle-kit introspectのバージョンによって default(false)(旧) と default(0)(新) のように生成出力が変わる。tinyint→booleanの文字列置換だけしていると boolean(...).default(0) となり、boolean型に0を渡す型エラーになる。generateスクリプトで boolean(.+?).default(0) → default(false)、default(1)→default(true) の後段変換を追加すれば再生成のたびに再発しない。int/enum/varcharのdefaultは関数名がbooleanでないためマッチせず安全。