Primary finding
Anthropic provider uses different default output_config.effort between streaming and non-streaming
- src/providers/anthropic.ts:92-95
- src/providers/anthropic.ts:181-185
Defaulting to 'high' for streaming and 'low' for non-streaming creates surprising differences in latency/cost/quality between otherwise identical calls when only the delivery mode changes. This is non-obvious to callers and complicates tuning.
Recommendation
Choose a single default (e.g., 'high' or 'medium') for both paths, or centralize defaulting logic (e.g., resolveEffort(options.effort ?? 'high')) so behavior is consistent across streaming/non-streaming.