Skip to content

JSMKC の Cloudflare / D1 運用を cf CLI 前提へ段階移行する #4201

Description

@azumag

背景

Cloudflare の新しい cf CLI を標準操作面にする。JSMKC は OpenNext Worker と Cloudflare D1 を利用しており、特に Prisma migrations と D1 用 SQL migrations の二重管理、および wrangler d1 migrations apply を前提とした運用契約があるため、単純置換ではなく migration correctness を優先して段階移行する。

方針

  • Cloudflare 操作は cf-first
  • wrangler は cf で安全に parity を確認できない箇所だけ一時 fallback
  • Prisma migration と D1 migration の二重管理契約は維持
  • preview / production DB を取り違えない
  • migration と Worker deploy の順序・失敗時挙動を変えない
  • OpenNext の既存 build/deploy 契約は cf 側の parity が取れるまで維持
  • 設定は可能な範囲で cloudflare.config.ts へ移行

現在確認できる主な Wrangler 依存

  • smkc-score-app/wrangler.toml
  • wrangler d1 migrations apply
  • wrangler d1 export
  • wrangler tail
  • preview schema preflight 内の Wrangler 呼び出し
  • Wrangler 形式の migrations/*.sql

TODO

  • Cloudflare / D1 / OpenNext / preview / observability の Wrangler 依存を完全棚卸し
  • D1 migration list/apply/export の cf parity を検証
  • preview schema preflight を cf へ移せるか確認
  • migration ordering と fail-closed 条件をテストで固定
  • wrangler.toml → cloudflare.config.ts migration を検証
  • OpenNext Worker の bindings / compatibility / secrets parity を確認
  • logs / tail / diagnostics を cf 前提に更新
  • CI / operational docs / CLAUDE.md 等を cf-first に更新
  • cf 未対応部分は fallback 理由を明記
  • Wrangler 撤去後も Prisma/D1 migration parity CI が維持されることを確認

完了条件

  • D1 migration の安全契約を壊さず cf-first に移行できている
  • preview / production の DB 境界が維持されている
  • OpenNext の build/deploy に回帰がない
  • 残存 Wrangler は理由が明記された一時 fallback のみ

親Issue

  • azumag/CV#52 — 全体TODO: Cloudflare運用を cf CLI 前提へ統一する

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions