← ishizakahiroshi.com
失敗談 2026-08-11

手元の pytest が緑でもリリースしてはいけない。タグを打つまでに踏んだ4つの穴

夜の暗がりに架かる 4 枚の踏み石と、見えないガラスの壁を描いたヘッダー画像

自作 CLI の新バージョンを出すとき、手元のテストは 751 件すべて緑でした。それでもリリースは 4 回止まりました。依存の上限未設定、OS 差で変わる期待値、CSP が inline script を黙って拒否していた件、タグを打つまで走らない wheel build。どれも「出荷する成果物と同じ経路を一度も通していなかった」ことが原因でした。

Qiita で読む →

この記事のテーマ

テストが全部緑でも、その緑が保証しているのは「その OS の、その依存構成の、プロセス内の振る舞い」だけです。今回踏んだ 4 つは、それぞれ CI・Linux 実行・ブラウザ描画・wheel build という別の工程でしか姿を現しませんでした。とくに CSP による inline script の拒否は、画面にもサーバーログにも痕跡が出ないまま機能だけが停止するため、ブラウザで実際に開くまで気づけません。

もう 1 つ書いているのは、4 つのうち 2 つは自分で言語化済みのチェックリストに載っていたという話です。持っているのに起動せず、その場で手書きしたリストで進めたことが原因でした。蓄積した手順は、使わなければ持っていないのと同じでした。

同じ値でも渡し方で実行されるかどうかが変わることを示した図

渡している値は同じでも、inline に置くか外部 js とデータ島に分けるかで実行されるかが変わる

どの工程で何が初めて分かるかを示した表

走る場所ごとの「そこで初めて分かること」と「今回そこで出た穴」。手元のテストの行だけ空になる

記事の要約

記事の要約(AI 生成のインフォグラフィック)