[aside] Fly app が single machine + bound volume 構成なので、health check(#286)を入れても bad deploy の完全な無停止 prevention にはならない ── volume が 1 machine に縛られて別 instance に rolling できず、悪い release は一瞬 swap in してから check で落ちる(検知は効くが prevention は不完全)。#286 は検知までを scope とし prevention は別 follow-up にした。本格的に防ぐなら second machine で rolling / canary / blue-green が要るが、volume 共有の制約をどう解くか(read-only replica / volume なしの projection-only machine 等)の設計が要る。トリガー = deploy 周りを次に触るとき、または無停止が要件化したとき。