出版済みのKindleリフロー版を全数レビューする:図381か所の点検と元版596ページとの突き合わせ
出版済みのKindleリフロー版を全数レビューする:図381か所の点検と元版596ページとの突き合わせ
連続スクロールは動いた
前日、自著の会計の入門書を Kindle のリフロー版で出版した。 もとは2018年に出した Kindle 版で、そちらはページを丸ごと画像にした作りだった。 以下、2018年の版を「元版」、前日に出した版を「リフロー版」と呼ぶ。
朝、リフロー版を開くと、ページの区切りなしで続けて読める連続スクロールが使えた。 出版計画を作ったかどうかも覚えていなかったので、Claude Code に探させると、計画書は残っていた。 確かめられたことを計画書など3か所に書き足させ、その3ファイルをコミットした。 Codex のコミットレビューでは、止める必要のある指摘(critical / high)は出なかった。
ところが、そのまま中身を読んでいくと、羊の移動を説明する箇所で、差し込まれた絵が文と合っていなかった。
羊の図はなぜ1つ前の状態だったのか
差し込む画像が間違っている、とヒントを付けて、Claude Code に調べさせた。 羊の図は、どれも1つ前の状態の絵だった。 1回目の移動を説明する文に、羊がまだ牧場の外にいる移動前の図が付いている、という具合である。
図を撮影して書き出す設定に animations: 'disabled' を足して撮り直させると、12枚とも動き終わりの姿(羊が牧場に入り、石が置かれた状態)で撮れた。
撮影の直しと落とし穴のメモを、先にコミットした。
出版した本なら、ブラウザか何かで Claude Code にもレビューできるだろう。 そう思って、羊の図の原因調べと同時に、本の全体をちゃんとレビューしてほしいとも頼んでいた。
図381か所を5体で見る
全編の図は381か所、344種類あった。 これを5体のサブエージェントに分けてレビューさせ、待つ間に、本文に残ったサイト向けの言い回しを機械的に洗わせた。 本文で引っかかったのは、Part4 の「次のページからパターンを具体的に確認します」の1か所だけだった。
4体目の報告で、Claude Code がサブエージェントに伝えた分け目の番号が、1つずれていたことが分かった。 前半の担当範囲と突き合わせて抜けがないことを確かめさせ、台帳は381か所中381か所そろった。 指摘は115件。 このうち、読者が間違って覚えるおそれのある誤りを、図と文で確かめさせて14項目に絞った。
報告書を開く段で、Chrome DevTools への接続が2回続けてタイムアウトした。 報告書は Windows の既定の方法で開かせ、描画の確認は Playwright のスクリーンショットで代えさせた。 ブラウザで開いてほしいと頼んだあとも DevTools はつながらず、タブが前面に出たかどうかは Claude Code の側からは確かめられないままだった。
直す前と直したあとを並べる
要確認の項目や判断の要る項目について、計画書の中に「直す前/直したあと」を下書きしてほしいと頼んだ。 まず、図の中の文字を SVG のまま書き換えられるかを確かめさせた。 次に図に座標の目盛りを入れ、直した文字を重ねる位置を14枚分測らせた。 報告書に章を1つ足させ、左にリフロー版、右に直したあとの下書きを並べた。 図41枚がすべて読み込まれ、PC幅でもスマホ幅(390px)でも横にはみ出していないことは、Playwright で確かめさせた。
並べてみると、下書きどおりには進めない項目が出てきた。
A3:分記法でも商品は増え、現金は減る
A3 の下書きは、売上原価対立法を前提にしていた。 けれど分記法でも、仕入れたときには商品という資産が増え、現金という資産が減る。 これは本当に売上原価対立法で合っているのか、分記法の可能性もあるのではないか。 そう伝え、直す前と直したあとの図がないと判断できない、とも言った。
Claude Code の答えは、仕入れの仕訳(商品/現金)はどちらの方法でも同じで、仕入れの図だけでは区別できない、というものだった。 違いが出るのは売り上げたときの仕訳で、売上原価対立法なら「現金/売上」と「売上原価/商品」の2行になる。 そこで、次の売上の図を確かめさせた。
A5:当期純利益の位置
A5 は、当期純利益の位置を動かす下書きだった。 当期純利益は、収益から費用を差し引いた残額である。 直したあとのような描き方があることも知っている。 ただ、その描き方はミスリーディングだと思っている。 だから元の図では、あえて収益に重ねて描いた。 A5 は直さないと決めた。
B6:羊は石で数える
B6 では、羊を数える箇所が数字に置き換わっていた。 羊を石で数えることには意味がある。 ここは、あえて数字を使わないという制約の中で、分かりやすさを追った箇所である。 Claude Code が勝手に文を足した可能性もあると思い、元版の中身を見るように頼んだ。 元版は全ページを画像で持っているので、その置き場所も計画書に入れさせた。
元版の画像と突き合わせさせて、報告書の B6、B7(リンゴの数)と一覧の表を書き直させた。 B12 は、減価償却の図で残存価額30、年90になっている図4枚と文2か所を、直す対象として洗い出させた。 B6、B7、B12 の3点を直させたうえで、21項目すべてに承認ボタンを付けた報告書を開かせた。
21項目すべてに答えた。 A5 ともう1項目(A0)は「直さない」、それ以外はすべて「この変更で承認」である。 B6 にはコメントも付けた。 Kindle のページを丸ごと入れずに、上部のヘッダーとページに焼き込まれた文を外して図の部分だけを切り出し、ほかの図と見た目をそろえる。 文は本文として組む。 そういう趣旨である。
元版596ページを文字に起こす
B6 の件で、元版に無い文がリフロー版に入っているのでは、という疑いが残った。 元版は文がページ画像に焼き込まれているので、比べるにはまず文字に起こす必要がある。
Windows の日本語OCR にかけさせると、最初は全ページが空になった。 1枚で原因を確かめさせてから回し直すと、Part00〜07 の596枚を約15.8万字に起こせた。 これとリフロー版の本文を、4体のサブエージェントに章ごとに突き合わせさせた。 596ページ中596ページを照合し、元版に無い文が、リフロー版には49件足されていた。
第2回の下書きは、最初のレビューで残っていた指摘と元版との違い(足された、意味が変わった、抜けた)を、4体に分けて書かせた。 全127件で、そのうち文を直すものが58件、抜けたページを戻すものが40件だった。 承認ボタン付きのページに組み立てると7MBになった。 立ち上げようとしたポート8898は、このセッションで前に立てて残っていたサーバーがふさいでいたので、PID で止めて8896で立て直させた。 127件すべてにボタンが出て、画像135枚が読み込まれた。
途中の回答が読めない
方針として、誤字脱字と明らかな誤りは直し、それ以外は元版の文に戻すと伝えた。 足された文は消し、変わった文は元版の文に戻す。
ところが、ボタンで途中まで答えた内容を、Claude Code の側から読み取れなかった。 Chrome DevTools は、今回もタイムアウトした。 タブはまだ開いていたので、Claude in Chrome で読めないかと聞いた。 Claude in Chrome でも読めなかった。 Claude in Chrome が触れるのは自分で開いたタブだけで、chrome.exe に開かせたこのタブには届かない。 開き直せば、入力した内容は消える。 代わりに、そのタブで手を動かす手順を案内された。
その間に、2つ決めた。 元版の練習問題(Part08)も入れる。 ただし見た目は自分で確かめる。 役務収益は元版に無いが、収益認識の基準が変わったので、役務収益のままでいい。
10月19日の作業で入れた差し替えは、残すか元版に戻すか決められなかった。 何をどう直したのか覚えていなかったからだ。 調べさせると、今も残っている差し替えは18件で、ほとんどは誤りの直しか自分の指示によるものだった。 方針に照らして判断が分かれるのは、羊の数え方の3節だけだった。
案内された手順でコンソールに貼り付けると、undefined が返ってきた。 23件で書いた回答は口頭で伝えたこととそう変わらないので、そのまま進めてもらった。 127件を新しい方針で機械的に振り分けさせ、方針の確認画面(6項目)を開かせた。
練習問題はB案、1行は残す
練習問題は、2案を左右に並べた試作を作らせた。 A案はページをそのまま入れる形、B案は問題を文にして答えを図で示す形である。 どちらも本と同じ Kindle 用の CSS を当て、スマホの幅で表示させた。
ここまでを233ファイルでコミットした。 差分が1万行を超えたので、Codex のレビューは自動で飛ばされた。 自分が確かめるのは、練習問題の試作の1件だけになった。
試作を見ていて、答えの図に「① 左側(借方)に資産の+、右側(貸方)に資産の−。② 当座預金 100 / 現金 100」という1行が入っているのが気になった。 聞くと、この1行は元版には無く、B案のために Claude Code が足した文だった。 元版の答えのページは、取引の絵と解答欄の図だけで答えを示している。 あってもなくてもいい気もしたが、あったほうがいいと考えた。 B案で、その1行も残して進めてもらった。
Part 8 の50問は、各問の取引と答えを元版の画像から起こす作業を4体に分けさせた。 答えのページの絵と解答欄は、切り抜く範囲を自動で決めさせた。 途中、この環境ではプロセス置換が使えなかったので、切り抜きは一時ファイルへ書き出す形に切り替えさせた。 Perl でテンプレートの変数が消えたところは、Edit で直させている。 OCR との突き合わせで残った3ページ(給料と売上の科目)は画像で直接確かめさせ、すべて一致した。
元版で101ページ分ある練習問題を全部 B案で組み、答えの1行も入れた形で Chrome に開かせた。 自分の目で見て確かめ、コミットした。
振り返り
羊の図は、1回目の移動の文に移動前の絵が付いていた。 アニメーションを止めて撮り直すと、12枚とも、羊が牧場に入って石が置かれた絵に変わった。
A5 と B6 は、どちらもレビューで直す側に挙がった。 けれど当期純利益を収益に重ねた図も、羊を石で数える文も、意図してそう作ったものだった。 元版との突き合わせでは、元版に無い文が49件、リフロー版に入っていた。
次は、本全体を元版を土台に組み直す。