Addresses review comments from CodeRabbit and Sentry:
- Change reasoning format from {"enabled": True} (invalid) to
{"max_tokens": config.thinking_budget_tokens} per OpenRouter docs
- Add missing thinking_budget_tokens config field (default: 10000)
- Extract duplicate code into _apply_thinking_config() helper function
- Update description from 'adaptive' to 'extended' thinking for clarity
References:
- OpenRouter reasoning docs: https://openrouter.ai/docs/reasoning-tokens