# [DEPRECATED] OpenAPI Dart クライアント自動生成

> **2026-05-09 / MOBILE-P1-4 で完全廃止**
>
> このドキュメントが扱っていた openapi-generator-cli + Docker による Dart クライアント自動生成は、
> Dart pub の analyzer / riverpod / test version 衝突の長期維持コストが高く、
> raw dio + 手書き DTO への移行を決定しました。
>
> - `lib/generated/parky_api/` (OpenAPI 生成 Dart クライアント) — **削除済**
> - `lib/data/parky_bff_client.dart` — **削除済**
> - `tool/generate-api.sh` / `tool/generate-api.cmd` — **削除済**
> - `tool/check-openapi-drift.mjs` — **削除済**

## 移行先 (現行運用)

新しい endpoint を Flutter から叩く場合は、**raw dio + 手書き DTO + `BffClient.instance` 経路**に従うこと。

詳細:

- [`mobileapp/CLAUDE.md` §4.4 BFF 呼び出し](../../mobileapp/CLAUDE.md) — Flutter 側の標準パターン
- [`docs/api/flutter-integration-guide.md` §5](../api/flutter-integration-guide.md) — Day-1 オンボーディング向け解説 (raw dio + freezed DTO + ViewEnvelope decode の例)

OAS (`docs/mobile-app/openapi.json` / `docs/openapi-mobile.html` Redoc) は **API 仕様書としては引き続き SSoT**。client 自動生成入力には使わない。

## 廃止理由 (記録)

1. **依存衝突**: `gibahjoe/openapi_generator` (pub) は analyzer `<7.0.0` 制約で flutter_riverpod 3.x と衝突。一時 Docker 公式 CLI に切替えたが、生成物の `built_value` が `riverpod_annotation` の generator と build_runner で競合
2. **デバッグ容易性**: Dart 側 raw dio + 手書き fromJson の方が、HTTP レイヤのトラブルシューティングが直接的 (生成物に踏み込まなくて済む)
3. **保守責任の明確化**: codegen 出力 (`lib/generated/parky_api/`) は誰がいつ手で触っていいかが曖昧で、ESLint / build_runner の規約遵守が困難

代替策の検討経緯は内部 ADR として `docs/adr/` に追記予定 (2026-05 中)。
