第5章
「エラー処理が if/throw で破綻している」
執筆中
降ってくる要件
「バリデーション失敗・状態遷移違反・検査機関API障害が入り乱れ、try/catch のネストが手に負えない。エラー処理を整理したい」という要件が降ってきます。
既存コードを動かしてみる
git checkout step-05-start
pnpm test
素朴にエージェントに依頼してみる
本章は執筆中です。
何が痛いのか
throw の経路がコード上から追えず、どこで失敗が起きうるかが型に表れません。
どう直すか — 原則の紹介
本章で導入する原則:
- Result 型
- Railway Oriented Programming
- ドメイン層からの
throw排除
リファクタを進める
本章は執筆中です。
章末の姿と次章への布石
次章では「ログにペットの病気の情報を出すことが法改正で禁止された」という規制起点の要件を起点に、Sensitive 型 + ログ redact による多層防御を導入します。