daily-log
2026年3月29日の開発日記
会計ソフト連携Chrome拡張を朝から晩まで触り続けた一日。タブ構成の再編からバグ修正、新機能実装、未実装機能のAPI調査まで、拡張機能の守備範囲を一気に広げた。
今日やったこと
1. 自動仕訳ルールの独立タブ化とルールID照合バグ修正
エクスポートタブの中に埋もれていた自動仕訳ルール機能を独立タブに引き出し、UIを全面的に作り直した。3タブ→5タブ構成への再編。レイアウトは3行→2カラム5行→カードスタイルと3パターン試して最終形に落ち着いた。
ルールID照合で29件が未特定だったバグを発見。マルチマップ化→前方15文字一致→NFKC正規化と段階的にアプローチし、最終的に全件解消した。
主な成果:
- タブ構成を5タブに再編(設定/エクスポート/インポート/自動仕訳ルール/ログ)
- ルールID照合の29件未特定→0件(NFKC正規化で根本解決)
- グローバルボタンロック(CTI競合防止)
- タブ位置のlocalStorage記憶
詳細: Chrome拡張 自動仕訳ルールの独立タブ化とルールID照合バグ修正
2. 事業者設定エクスポート/インポート機能
Chrome拡張に「事業者設定」タブを新設し、全年度マトリクスのエクスポートとfetch POSTによるインポートを実装。当初はCLI経由のインポートを計画していたが、Chrome拡張UI上で完結するよう方針転換した。
主な成果:
- 事業者設定の全年度マトリクスをスプレッドシートに出力(エクスポート+インポート用の2シート構成)
- fetch APIによるページ遷移なしのフォームPOSTインポート
- Codexレビュー3回実施→致命的指摘を事前に反映
- ログタブへの記録統合(yearsプロパティ欠損バグ修正含む)
詳細: Chrome拡張 事業者設定エクスポート/インポート機能
3. MF未登録明細の一括自動登録 調査
Chrome DevTools MCPでクラウド会計の連携明細画面を調査し、APIエンドポイント・DOM構造・ステータス遷移を一通り解明した。確認ダイアログを誤ってAcceptして実データを登録してしまったが、仕訳削除→対象外→未入力に戻すフローで復元できた。
主な成果:
- 個別登録API(
/api/v1/account_transactions/{id}/journalize)の構造解明 - 明細ステータス遷移サイクル(未入力→取引完了→対象外→未入力)の実地確認
- テスト時のリカバリ手順確立
- 次回セッション向けの実装計画メモ作成
4. mdx-playground make-diary改善(軽微)
make-diaryコマンドでsync-once.shの完了前にログを読み始める問題を修正。Bashツールのtimeoutを300秒に設定して完了を待つ方式に変更した。
今日の試行錯誤
| # | テーマ | 試したこと | 結果 | 気づき |
|---|---|---|---|---|
| 1 | UIレイアウト | 3行縦並びレイアウト | 却下 | エクスポートとインポートの区別がつかない |
| 2 | UIレイアウト | 2カラム5行グリッド | 却下 | 横スクロールが発生 |
| 3 | UIレイアウト | カードスタイル+背景色分け | 採用 | 設定画面と統一感が出た |
| 4 | ID照合 | マルチマップ(同一キー複数ID対応) | 一部改善 | 29→17件に減少。別の原因がある |
| 5 | ID照合 | 前方15文字一致 | 一部改善 | CSVの途中切れに対応。まだ残る |
| 6 | ID照合 | 3パスフォールバック(緩いマッチ) | 効果薄 | 文字コード差異が根本原因だった |
| 7 | ID照合 | NFKC正規化 | 解決 | 全角/半角の揺れを吸収して0件達成 |
| 8 | シート1削除 | SS作成直後に削除 | 失敗 | シートが1枚しかない時点ではAPIが拒否 |
| 9 | シート1削除 | データシート追加後に削除 | 成功 | 順序を変えるだけで解決 |
| 10 | 確認ダイアログ | DevTools MCPでAccept | 失敗 | 本番データに登録してしまった |
| 11 | データ復元 | 仕訳削除→対象外→未入力に戻す | 成功 | リカバリフローが確立できた |
今日の学び
- NFKC正規化は文字コード差異の照合問題を一撃で解決する。フォールバックマッチを積み重ねるより、入力を正規化する方が根本的
- Codexレビューはエラーハンドリングの抜けを実装前に拾える。3回投げるとさすがに致命的な見落としは消える
- fetch POSTでフォーム送信するとページ遷移なしで連続更新できる。10項目が2秒で完了し、ページ遷移方式(30秒以上)と比べて体感が別物
- DevTools MCPの確認ダイアログは自動Acceptしない。本番データへの操作は必ず手動確認を挟む
明日やること
- 未登録明細の一括自動登録実装(API構造は判明済み)
- 補助科目の作成API調査
- 勘定科目マッピングルールの設定UI検討