set -e 下で mktemp した一時ファイルはクリーンアップを保証する
設計判断
シェルスクリプト
set -euo pipefail を有効にしたシェルスクリプトで mktemp した一時ファイルを使う場合、途中のコマンド(jq など)が失敗するとその場でシェルが終了し、後続の mv や rm に到達せず一時ファイルが残る。対策は trap 'rm -f "$temp_file"' EXIT で確実に消すか、最小修正なら cmd > "$temp_file" || { rm -f "$temp_file"; return 1; } のように失敗時クリーンアップを明示する。