旧システムの会計機能を、別システムへ移植するための資料をAIに作らせました。
資料ができたあと、こう頼みました。
この資料を深く読んで分析して、レビューを繰り返し、抜け漏れや考慮漏れがないか徹底的に考えて
指示はこれだけです。ここからAIが自分で進めた流れと、出してきた結果を紹介します。
1. AI が観点を分けて、並行でレビューした
AI は観点の違う3つのサブエージェントを立ち上げ、同時にレビューさせていました。
レビュー観点
- 旧システムの挙動を正しく写せているか
- 移植先の既存機能を壊さないか
- 経理・運用の目で見て穴がないか
返ってきた指摘の一部です(3つ合わせて約50件)。
【高】移植案では「付替行は除外」としているが逆効果
親子予約の間で金額を移す行。除外すると、子は全件「入金不足」、
親は「過不足」のエラーになる。
直し方: チェックにも仕訳にもそのまま含める
【高】「旧システムで現役の機能」と書いているが、実際は無効化されている
呼び出し口がコメントアウトされている
指摘にはどれも、該当するコードの箇所が根拠として付いていました。
2. AI が指摘を裏取りしてから反映した
AI はレビュー役の指摘をそのまま採用せず、重要なものは自分でコードを読んで確かめていました。誤った指摘も見つけています。
レビュー役の指摘:
チェック②の対象は「一昨日以前」の売上だけ
コードで確認した結果:
日付を時刻付きのまま比較しているため、昨日の分も含まれる
→ この指摘は反映しない
3. 直したあと、もう一度レビューした
AI は修正した資料を、別のサブエージェントにもう一度レビューさせていました。旧システムのバグが出てきたのは、この2回目です。
【高】未収金・預り金の計算が正しい累計になっていない
未収 += 売上日計 − 入金日計 − 預り残高
預り += 入金日計 − 売上日計 − 未収残高
例: 前日に入金 5,000、1泊目・2泊目の売上が各 10,000、チェックアウト日に入金 15,000
2泊目の未収金 → 正しくは 15,000、実際は 10,000
チェックアウト日の貸借が 5,000 ずれる
直し方: 旧システムのとおりに再現するか、正しく作り直すかを決める
この機能は、経理から「数字が合わない」という声が続いて使われなくなっていました。
その原因の一つが、コードで説明できました。
わかったこと
- 「レビューを繰り返して」と頼むだけで、AI は観点を分けた並行レビュー、裏取り、再レビューまで自分で進めた
- 1回目は資料の大きな穴、2回目は計算式の細部と、周回ごとに見つかるものが変わった
- レビュー役のAIも間違える。裏取りの工程があったから、誤った指摘を資料に入れずに済んだ