Excel講座の画面再現を仕上げ、演習のフィードバックを回収して本番前に235コミットを洗い直した日
Excel講座の画面再現を仕上げ、演習のフィードバックを回収して本番前に235コミットを洗い直した日
「基本的に全て良いと思ってるんですけどね、出してしまって。」
本番に出す前に main の235コミットのレビューを頼んだとき、私はそう添えた。 それでも、デプロイは一度も通らないまま一日が終わった。
作業の中心は、Excel講座の画面再現の続きだった。
F5 → Enter で戻る場面に、ジャンプの画面を出す
Ctrl+[ で参照先へ飛んだあと、F5 → Enter で元のセルに戻る場面がある。 ここに Excel の「ジャンプ」の画面を出す作業の続きを、引き継ぎプロンプトのファイルを渡して Claude Code に再開させた。
制作画面で409が出て開けなかった xlookup と donts-c10-s00 の2本は、合成し直してもらった。 台本とずれていたのは、2本とも最後の拍だけだった。 GPU で作り直したのは xlookup の3文と donts-c10-s00 の1文で、残りは合成済みの声を使い回した。 差し込みスクリプトを空打ちすると、xlookup は「組み直しても今と同じ」と判定された。 F5 の文の後には合成の時点で2秒の間が入っているので、差し込みは要らなかった。
台本と音声の照合は全256本にかけて通り、2本とも制作画面で開けるようになった。
途中で一度、置換に sed -i を使ったコマンドをフックが実行前に止め、Edit ツールでやり直させている。
私が確かめるべきページを聞くと、制作画面の41本が挙がった。
ワークツリーは main に入っていたか
「これワークツリーってメインにマージしてましたっけ?」と聞いた。
答えは、マージは要らない、だった。
F5 の作業はワークツリーを使わずに main へ直接コミットしており、6e44f4fa から 8cbf42f0 まですべて main に入っている。
ただし origin へは未 push で、15コミット先行していた。
あわせて、main に入っていないコミットを持つワークツリーが3本あると報告された。
ほかのセッションがマージしたはずだと思い、もう一度調べさせた。
kobetsu は別セッションが main へマージ済みで(dcf35fc4 Merge cfws-kobetsu)、今の作業に関係する未マージは cfws-aggregation の5コミットだけだった。
aggregation はまだ終わっていない気がしたので、別のセッションで始めることにして、こちらでは触らせなかった。
push を頼むと、c6fb77ad..a80a4ac1 で origin と同じ状態になった。
この push には、別セッションが main に入れた aggregation のマージ(256d9adb)と計画書(a80a4ac1)も含まれていた。
中身はコードと計画書だけで、音声は git の対象外なので、合成中の作業に差し障りはない。
本番へのデプロイはしていない。
画面再現を完了扱いにし、演習のフィードバックを切り出す
自分で一通り全部見て、Excel講座の画面再現は基本的にすべて完了にした。 ただ、演習の実務練習と卒業課題にはフィードバックを付けていた。 これを回収する計画書を別に1本作り、本計画に合流させて相互参照を取るよう頼んだ。 これが終われば、画面再現版は一区切りになる気がしている。
確かめさせると、閉じていないフィードバックは演習の4本にあり、中身は3種類だった。 計画書の材料として、置換のダイアログの出し方、SUMIFS の範囲の色、照合シートのいまの作りを読ませた。
ここで、私の記憶が揺らいだ。 Excel基礎講座の動画制作の計画(9/22)がもともとの本計画で、画面再現が完了したらそちらを入れ替えていく、という話だったはずだ。 各セクションのレビューやフィードバックは全部リンクされていると思っていたが、別の講座の話だったかもしれない。 そこで、2つのページの位置づけを聞いた。
返ってきた答えは、2つのページは記録をつなげて整理してあり、リンクされていなかったのは計画書の側だ、というものだった。 動画制作の目次(207項目)を洗うと、動画制作の側で独自に内容が進んでいる区間はほぼ無かった。 講座データ(記事の本文)には確かめたい点が1つあるとのことで、そのうえで計画書を作らせた。
計画書は、本計画(9/22)に「画面再現の合流」の節を足す形でつないだ。 提示の前に Codex のレビューを回し、指摘を本文に入れた。 判断3の選択肢も直して、もう一度見てもらった。 判断事項は5問の判断フォームにまとめさせ、ブラウザで開いたあと、記号の崩れを直して HTML を作り直した。
Codex のファイル読み取り不具合
レビューは通っているのか、と聞いた。 通ってはいた。 ただし、Codex にファイルを直接読ませたのではなく、本文とコードの抜粋を標準入力で渡す回避策だった。 読み取りの不具合そのものを直してからコミットするよう頼んだ。
直すまでに、仮説を1つ捨てている。
- Codex の起動ラッパーが、引用符を含む引数を崩していた
- node_repl.exe のロックを疑い、止めてみた。同じエラーが出たので、ロックの主は node_repl ではなかった
- 直前のログとスキルの手順書を読み、サンドボックスの指定を正本とスキルの実行例に足した
判断の回答を計画書に書き込んだあと、今度は Codex がファイルを自分で読む形でレビューをかけ直した。
計画を直してもう一度確かめてもらい、最終判定は「承認」になった。
コミットは2つのリポジトリに分けた。
~/.claude には手順書の修正を、eurekapu-nuxt4 には計画書と issue を入れた。
実務練習03 は何を参照して作ったのか
実務練習の連結AJEを取り込む場面を見ていて、作業の順番が私のやり方にすごく似ていることに気づいた。 何かを参照しているはずだと思い、私の Excel なのか、どこかの記事なのかを聞いた。
参照元は、私自身の Excel と、私が以前撮った元の録画だった。 外部の記事は使っておらず、場面のコード冒頭のコメントと計画書に、そう残っていた。 私の記事のことかと思って URL を聞くと、紛らわしい書き方だったと訂正が入った。 参照したのは記事ではなく、実務練習03の元動画と Excel ファイルで、どちらもいまの講座ページの実務練習03(Web 版)に載っている。
フィードバックを反映した6本
別の引き継ぎプロンプトを渡して、フィードバックの回収に入らせた。 最初に、変更前の全動画の指紋を取らせている。 対象外の動画を壊していないかを、あとで照合するためだ。 指紋は再計算を挟んで、275本分がそろった。
コードで手を入れたのは次の4点である。
- 横の画に「検索と置換」のダイアログを出す口を作った
- 置換して件数のメッセージを出す操作を足し、置換の4か所を書き換えた
- SUMIFS の組の色を足した
- 答え合わせのデータを作り直した(生成、実物の Excel で減算照合、画面再現用 JSON の順)。照合シートと答え合わせの台本も書き直した
確認では何度か足止めされた。 レイアウト検査は、今回触っていない230秒付近(F5 のキー表示)で止まったので、DevTools で静止画を直接見させた。 照合シートは、「0 になったか」の見出しが列幅不足で欠けていた。 行を入れすぎて縮小が強くかかり、数字まで欠けていた。 カメラを行の範囲で固定し直すと、見やすくなった。 Python と Perl による書き換えは、どちらも Edit ツールでやり直させた(Perl はテンプレートのキーを崩していた)。
合成は10拍、204秒で、グリッド検査も通った。 変更後の指紋と照らすと、6本が意図どおり変わり、ほかの265本は一致した。 cfws-s1-1〜4 も変わっていたので、原因を確かめさせた。
Codex のコミットレビューは、データ JSON で差分が上限を超えて自動で飛ばされた。
そこで、コード部分だけを Codex にレビューさせ、a604e4e4 でコミットした。
解答ファイルを R2 に上げ直すと、CDN が古い版を返していた。
そのファイルの URL だけキャッシュを消し、配信 URL から取り直した中身がローカルと同じであることを確かめさせた。
前回上げた6本をフルパスの URL で出してもらい、明日確認することにした。 進捗を計画書に書き戻させ、確認の作業は明日の Google タスクに入れた。
235コミットを本番に出してよいか
続けて、push とデプロイの手順に入った。
別セッションのコミットでかかっていたロックが外れるのを待って、a80a4ac1..f042a064 を push した。
並行セッションが直前にコミットした cfws の1件も含まれている。
デプロイの前に、本番に入るものが思っていた範囲と違うかもしれない、と確認を求められた。 そこで、main の235コミットを全部本番に出してよいか、自分で見るか Codex に見てもらうかしてほしいと頼んだ。 本番に出すべきでないものがあれば、相談してほしいとも伝えた。
主目的は仕訳の問題(クイズ)の修正を本番に出すことなので、その部分が main に入っているかを先に確かめさせた。 並行して、新しく公開されるページ、画像の R2 への同期、出典表記を見させ、dev 用の場面が本番コードに読み込まれていないかも確かめさせた。 講義ノートの元は市販の書籍の論点表なので、出典表記の禁止ルールに触れていないかも見させた。 途中、Git LFS のせいで比較の方法を誤り、作業ツリーの実ファイルで照合し直している。 画像7枚は CDN のキャッシュを消して、配信も一致した。
ビルドとデプロイは、main だけを取り出した別フォルダで回させた。 その間に、デプロイ後に確かめる2問(q_1_4_4 と q_1_3_1)の本番の場所も調べさせた。
止まったのは、ここだった。 FILTER の章(関数の活用、10/2 に追加)は、まだ本番に出ていない。 今回出すと9区間が初めて公開されるのに、その読み上げ音声30本が R2 にも手元にも無かった。 デプロイスクリプトのガードが、音声が無いことを検知して止めた。 音声は git の対象外なので、コミットの差分には現れない。
音声の合成は、MacBook に指示を出してもらうことにした。
Mac の tmux の claude2 セッションに依頼を送らせ、届いたことを確かめた(MSG-ID 890d913f)。
明日の続き(Mac に聞く、デプロイ、本番の確認)は、10/10 の Google タスクに2件入れてもらった。
F5 の作業の進捗と引き継ぎ
F5 の作業を区切るセッションでは、進捗を更新させ、引き継ぎプロンプトを書き出させた。
新しいコミットは無く、音声36本も台本と一致したままだった。
計画書の進捗は Codex のゲートを通して 69fb1561 でコミットし、引き継ぎはダウンロードフォルダの 2026-10-09_f5-goto-dialog-handoff-prompt.txt に置かせた。
F5 の作業のセッションは、この名前のファイルを渡して始めている。
学びメモ
- レビューが通っていても、Codex がファイルを読んだとは限らない。この日は、抜粋を標準入力で渡す回避策で通っていた
- 235コミットを読んでも、git の対象外にある音声の欠落は見えない。デプロイを止めたのは、デプロイスクリプトのガードだった
- 「似ている」と感じた場面は、私自身の録画と Excel を再現した結果だった。参照元は、場面のコード冒頭のコメントと計画書に残っていた
明日やること
- フィードバックを反映した6本を確認する
- Mac に FILTER の章の音声30本の合成と R2 アップロードの状況を聞く
- 音声がそろったらデプロイし、本番で2問(q_1_4_4 と q_1_3_1)を確かめる