Repository navigation
OpenNextの資材を削除する - #73
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
cateiru-com | fb43377 | Commit Preview URL Branch Preview URL |
Nov 06 2026, 12:44 PM |
cateiru
left a comment
There was a problem hiding this comment.
レビューしました。wrangler.jsonc で ASSETS バインディングが消えている点を 1 件コメントしています。それ以外の削除(OpenNext の設定ファイル、scripts、依存、ドキュメント類)は問題ないと思います。
Generated by Claude Code
| // assets は vite build 時に生成される dist/server/wrangler.json で上書きされる | ||
| "assets": { | ||
| "directory": ".open-next/assets", | ||
| "binding": "ASSETS" | ||
| }, |
There was a problem hiding this comment.
assets ブロックを丸ごと削除すると、ASSETS バインディングまで消えてしまいます。
@cloudflare/vite-plugin がビルド時に上書きするのは directory だけで、binding は入力側の wrangler.jsonc の値が引き継がれます。手元で両方ビルドして dist/server/wrangler.json を比較したところ、次のようになりました。
- main:
{"directory":"../client","binding":"ASSETS"} - この PR:
{"directory":"../client"}(bindingなし)
vinext は env.ASSETS を使って以下の処理をしており(vinext/dist/server/app-router-entry.js の 52・94〜96・113〜127 行目付近)、ASSETS が無いとこれらがすべてスキップされます。
- クライアントビルドファイルの配信
- RSC ハンドラが返す静的ファイルシグナルの解決(
resolveStaticAssetSignal) - 画像最適化
なお、PR 版を wrangler dev で起動すると /・/favicon.svg・/ogp.png は 200 でした。Cloudflare が Worker より先に静的アセットを返すためで、現時点では表に出にくい状態です。ただ、next/image を使ったり Worker を先に通す構成にしたりすると、空のレスポンスや 404 になると思われます(推測)。
binding だけ残すのがよさそうです(directory はビルド時に上書きされるので省略して大丈夫です)。
"assets": {
"binding": "ASSETS"
},Generated by Claude Code
There was a problem hiding this comment.
対応しました(fb43377)。ご指摘のとおり、assets は binding のみを残す形に戻し、directory は指定していません。検証として pnpm build:vinext を実行し、生成された dist/server/wrangler.json の assets が main と同じ {"directory":"../client","binding":"ASSETS"} になることを確認しました。pnpm start:vinext での表示確認(ページ・CSS・画像すべて 200)と、typecheck / biome check の通過も確認済みです。プラットフォームが Worker より先に静的アセットを返すため、こちらの検証では見落としていました。ありがとうございます。
VRT (reg-suit) 結果
|
概要
PR #72 で本番経路を vinext に切り替えたため、legacy として残していた OpenNext の資材を削除します。PR #72 のレビューでフォローアップ扱いになっていた項目への対応です。
変更内容
@opennextjs/cloudflareを依存から削除(latest指定もあわせて解消)open-next.config.tsとwrangler.opennext.jsoncを削除package.jsonのpreview/deployスクリプト(OpenNext 用)を削除wrangler.jsoncから OpenNext 前提のassetsブロックを削除(デプロイ用の設定は vite build が生成するdist/server/wrangler.jsonを使用)renovate.jsonの Cloudflare グループから@opennextjs/cloudflareを削除biome.jsonと.gitignoreから.open-nextのエントリを削除検証
pnpm build:vinextが成功し、生成された設定で assets が../clientを指すことを確認pnpm start:vinextでトップページと静的アセット(CSS / JS / 画像)がすべて HTTP 200pnpm build(Next.js)、pnpm typecheck、pnpm checkが通過pnpm vrtが既存スナップショットに対して 4 件すべて通過opennext/open-nextへの参照が残っていないことを確認