daily-log
2026年2月27日の開発日記
業務アプリの実装を朝から夕方まで詰め込んだ一日。外貨対応のフルスタック実装、返品仕訳のバグ修正、136件の領収書OCR処理と、手を動かす作業が続いた。夕方にはClaude OpusとCodex(GPT-5.3)を対話させてプロジェクトの再設計を議論するという、少し変わったセッションも行った。
今日やったこと
1. 税務アプリの外貨建てレシート対応
アルゼンチンペソのレシートが $ 表記でOCRされ、USDと区別できない問題が発覚。通貨記号だけでは判別不能なので、is_foreign_currency フラグをフルスタックで実装した。
主な成果:
- Gemini OCRスキーマに外貨判定フィールド追加
- DB・API・フロントエンド(Vue)まで4レイヤーを貫通
- オレンジボーダー+「要チェック」バッジで視覚的に目立たせるUI
- 自動判別は見送り、フラグを立てて人間に委ねるシンプルな設計
2. クレカ明細の返品仕訳バグ修正
クレカ明細でプラス値(返品)があると仕訳の借方・貸方が反転しないバグを発見。is_refund フラグの追加からUIの編集可能性制御まで対応した。
主な成果:
is_refundフラグをDB・パーサー・API・仕訳ビューアに追加- Codexレビューで
SELECT *との列数不一致問題を事前回避 - 返品時は貸方(費用科目)が編集可能、借方(カード)は固定にするUI修正
- ユーザーフィードバックを即座に反映
詳細: クレカ明細の返品仕訳バグ修正
3. OCR・データ取込パイプラインの改善
領収書→仕訳変換スキル(receipt-to-shiwake)の新規作成、OCRスキーマへの税区分自動取得追加、大量データの取込処理を行った。
主な成果:
- receipt-to-shiwakeスキルを構築(PDF→Googleシート仕訳書き込み)
- OCRに税区分(3種enum)と「租税公課」を追加
- 領収書136件 + クレカCSV144件 = 計280件の仕訳データを取込
- CSVファイルの.gitignore追加 + 既存21件のGit追跡解除
4. プロジェクト再設計をClaude×Codexで議論
「ゼロから自由に再設計できるなら?」という問いをClaude Opus単独とCodexとのディスカッションの2セッションで検討した。
主な成果:
- 9項目の変更一覧表(現行→再設計→狙い)を整理
- Codexが過剰設計を抑制(4層→3層、TanStack Query見送りなど)
- 税務固有の要件(監査証跡・冪等性・ルールバージョン管理)がCodexから追加
- Codexへの質問はYes/No形式+ファイル読み込みが効果的と判明
詳細: Claude OpusとCodexでNuxt 4プロジェクトの再設計を議論した記録
今日の学び
- 通貨記号
$は20以上の通貨で使われている。記号だけで通貨を特定しようとする設計は破綻する - SQLiteの
ALTER TABLE ADD COLUMNは安全だが、既存マイグレーションのSELECT *と組み合わさると列数不一致で壊れる - AIに設計を聞くとき、Yes/No形式で立場を取らせると具体性が出る。自由記述だと「ケースバイケース」で終わる
- 大量データ処理では「あと一手間」の削減が効く。OCR時点で税区分を取得する改善が、136件の後工程を消した
明日やること
- クレカ返品仕訳のUI修正の実装(返品時の貸方編集対応、計画済み)
- 仕訳ビューア支出側の一括確定機能追加
- 再設計ドキュメントをもとに、最初に着手すべきリファクタリング箇所の選定