Skip to content

docs: how-to のレスポンス返却を #539 後に更新(陳腐化修正)(#757) - #758

Merged
hideyukiMORI merged 1 commit into
mainfrom
docs/issue-757-refresh-response-patterns
May 29, 2026
Merged

docs: how-to のレスポンス返却を #539 後に更新(陳腐化修正)(#757)#758
hideyukiMORI merged 1 commit into
mainfrom
docs/issue-757-refresh-response-patterns

Conversation

@hideyukiMORI

Copy link
Copy Markdown
Owner

概要

「how-to が古くなっていないか/資産として育てたい」を受けて全28本を監査。大半は妥当だが、ドリフトが2本に集中していた——response_model=JSONResponse 直接返却が同居し、#539(response_model 統一)以前のパターンを教えていた。

監査結果

doc 状態 対応
response-patterns.md §1「正しい組み合わせ」で旧パターン(手動 dict + JSONResponse、response_model はスキーマ専用)を既定として筆頭で教えていた §1 を「既定=モデルインスタンス返却(検証+直列化される)」に書き直し。JSONResponse は §3 以降の特別用途のエスケープハッチで内容は検証されない旨を明記。§2 も更新
soft-delete.md get_article が success パス欠落で -> JSONResponse response_model 付き・success でモデル返却に修正(list_articles は既に正しかった)
他10本の JSONResponse streaming / DI例 / webhook 署名 等の正当な用途 変更不要

§3〜6(problem_details 混在・mode="json"・204+response_model のアサーション等)は正当な FastAPI 落とし穴集なので維持。

整合

現在の src/example/*/handler.py(全て return XxxResponse(...))・CLAUDE.md「response_model 明示・Any 返却禁止」と一致。npm run docs:build → exit 0。

Closes #757

🤖 Generated with Claude Code

how-to 全28本を監査。ドリフトは2本に集中していた(response_model= と
JSONResponse 直接返却の同居=#539 以前のパターン)。

- response-patterns.md: §1 を「既定=レスポンスモデルのインスタンスを返す
  (FastAPI が検証+直列化)」に書き直し。JSONResponse はカスタム status/ヘッダ/
  ストリーミング/成功エラー混在など特別用途のエスケープハッチで内容は検証されない
  旨を明記。§2 の手動 dict 変換例もモデル返却に更新。§3〜6 は正当なので維持。
- soft-delete.md: get_article を success パス付き・response_model 付きに修正
  (list_articles は既に正しいモデル返却だった)。

他10本の JSONResponse は streaming/DI例/webhook 署名など正当な用途で変更不要。
現在の example handler・CLAUDE.md ポリシーと整合。

Closes #757

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@hideyukiMORI
hideyukiMORI merged commit e605058 into main May 29, 2026
4 checks passed
@hideyukiMORI
hideyukiMORI deleted the docs/issue-757-refresh-response-patterns branch May 29, 2026 12:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

how-to の陳腐化: response-patterns/soft-delete が #539 以前のレスポンス返却を教えている

1 participant