mirror of
https://github.com/netbirdio/netbird.git
synced 2026-08-24 16:41:30 +02:00
Gateway catalog entries pin provider_id "openai", and the same record serves Claude Code on /v1/messages. The parser preferred the pinned id over the path, so an Anthropic body was read with the OpenAI parser: on a streaming response the input tokens ride message_start nested under message, which that parser never reads, so input counted as zero. Both cache buckets were dropped, and pricing resolved against the openai surface where no claude-* model exists, skipping cost entirely. Detect from the path first and keep provider_id as the fallback for upstreams whose path carries no surface. The Kimi entry already leaves ParserID empty to work around this; the fallback ordering makes that unnecessary.