開発2026-06-20
vercel.json に独自キーを足したら全デプロイが沈黙で失敗した
vercel.json にコメント代わりの独自キーを書いたら、git push は成功するのにデプロイだけが静かに失敗し、本番が古いビルドに固定された。Vercel は未知のトップレベルキーを拒否する。
vercel.json にメモを残したくて独自キーを足したら、それ以降のデプロイが全部反映されなくなった。エラーらしいエラーも出ず、本番は古いビルドのまま固定されていた。
事象
git pushは成功する- なのに本番サイトが更新されない(古いビルドのまま)
- ビルドログが出ず、コミットのデプロイ詳細に
project-configurationドキュメントへのリンクだけが付く
原因
vercel.json に、コメント代わりのつもりで未知のトップレベルキー(例:"_note")を書いていた。
{
"crons": [...],
"_note": "ここにメモを書いた" // ❌ これが原因
}
Vercel は vercel.json をスキーマで検証し、知らないトップレベルキーがあると拒否する。これはビルドより前、設定読み込みの段階で落ちる。だからビルドログは出ず、代わりに設定ドキュメントへのリンクが付く。push 自体は GitHub に通るので、ローカルからは成功に見えてしまう。
解決策
vercel.json は JSON なのでコメントは書けない。独自キーも置けない。メモは別ファイル(README など)に書く。
{
"crons": [...]
// 余計なキーは入れない
}
不要なキーを消して push し直せば、通常どおりデプロイが流れる。
補足:push 成功 ≠ デプロイ成功
この件のいちばんの教訓はここだ。git push が通っても、デプロイが成功したとは限らない。沈黙で失敗していると、本番が古いまま放置される。
- コミットのデプロイステータス(success / error)を見る
- もしくは本番URLの実物を開いて、変更が反映されているか確かめる
「push したから大丈夫」で終わらせず、最後に本番側で裏を取る。
※ 本記事にはアフィリエイトリンクが含まれます。