daily-log
2026年4月15日の開発日記
朝5時半から夜まで、CF精算表(CFWS)の自動生成パイプラインに没頭した1日。1ファイルのプロトタイプから始めて、42論点の一括生成、書籍PDFのスクリーンショット撮影、HTMLテーブルへの構造化、Excelビューア構築まで一気に通した。
今日のタイムライン

今日やったこと
1. CF精算表の独立Excel自動生成(Phase 1〜4)
仮説検証用Excelをパースして、MF仕訳シート・年次推移表・CFWSの3シート構成Excelを自動生成するスクリプトを構築した。Q3-9(有形固定資産)のプロトタイプから始めて、42論点の一括生成まで到達。
主な成果:
- 上半分check行 42/42 全てゼロ達成
- Codexレビュー3回で致命的指摘を全て反映(数式ベース化、開始残高SUMIFS混入防止)
- Turso DBから書籍解説テキストを自動挿入するパイプライン完成
- cfws_registryテーブルで次セッションへのコンテキストブリッジ構築
2. 書籍スクリーンショット撮影とHTMLテーブル構造化
Chrome DevToolsで参考書PDFを開き、全37論点の精算表スクリーンショットを撮影。ImageMagickでクロップし、HTMLテーブルに構造化データ変換した。
主な成果:
- 全39枚のスクリーンショット撮影完了(縦モニター200%ズームで品質向上)
- 37タブ構成のindex.htmlに全Q統合(タブ切替UI + 矢印キー移動)
- 全Qの数値照合レビュー完了(1セルずつスクショとHTMLを突合)
詳細: CF精算表スクリーンショット撮影からHTMLテーブル構造化まで
3. Excel CFWSのHTMLビューア構築
ExcelのCFWSシートをHTMLテーブルに変換するビューアを構築。iframeの高さ自動調整やcheck検証の可視化機能を実装した。
主な成果:
- Excel COM経由で数式計算済みファイルを生成→HTML変換のパイプライン確立
- postMessageベースのiframe高さ自動調整で、タブ切替時の表示崩れを解消
- check≠0のタブを赤色表示する可視化機能で、5件のバグを検出→4件修正完了
詳細: CF精算表HTMLビューア構築
今日の試行錯誤
| # | テーマ | 試したこと | 結果 | 気づき |
|---|---|---|---|---|
| 1 | SUMIFSの日付不一致 | 取引日をテキスト文字列で保存 | 失敗 | Excelの日付比較はdate型でないとマッチしない |
| 2 | 科目名の不一致 | 「備品」でACCOUNT_DBを検索 | 失敗 | 正式名「工具器具備品」とのエイリアス対応が必要 |
| 3 | 繰越利益剰余金のPL未反映 | SUMIFSだけでBS残高を計算 | check≠0 | PL利益を加算する数式を別途追加する必要がある |
| 4 | CFラベル名の不一致 | 短縮ラベル「売上債権の増減」で配賦 | 未配賦 | 正式名「売上債権の増減額(△は増加)」との正規化関数が必要 |
| 5 | iframeの高さ不足 | onloadでcontentDocument.scrollHeight | 取得不可 | file://のクロスオリジン制限。postMessage方式で迂回 |
| 6 | 非表示タブのscrollHeight | display:none時にpostMessage | 高さ0 | タブ切替時にcfws-request-heightメッセージを送信 |
| 7 | スクショのズーム | 75%で1ページ全体を撮影 | 文字が潰れる | 縦モニター200%ズームで品質が大幅に向上 |
| 8 | クロップ座標の注記切れ | bottomを控えめに設定 | <*C>以降が消える | 注記は<*A>〜最後まで余裕を持って含める |
今日の学び
- SUMIFSは日付型に厳格で、文字列と日付が混在するとサイレントに0を返す
- Codexレビューを3回回すと、致命的な設計ミス(値vs数式、開始残高汚染)を事前に潰せる
- iframeのpostMessageリサイズは、file://プロトコルでもクロスオリジン制限を回避できる実用的なパターン
- スクリーンショット撮影は、モニターの向き(縦横)とズーム倍率で品質が劇的に変わる
- check≠0のタブを視覚的に赤くすると、37タブの中から問題箇所が一瞬で目に飛び込む
明日やること
- Q4-2(連結仕訳)のcheck≠0バグ修正
- 残りのクロップ画像の仕上げ(Q5-23〜Q5-26)
- 全Q一括Excel→HTML変換の自動化スクリプト完成
- Phase 3: 書籍スクリーンショットとExcelの対応確認