diff --git a/deprecated-claude-app/backend/src/services/enhanced-inference.ts b/deprecated-claude-app/backend/src/services/enhanced-inference.ts index d2264b1..0d58e25 100644 --- a/deprecated-claude-app/backend/src/services/enhanced-inference.ts +++ b/deprecated-claude-app/backend/src/services/enhanced-inference.ts @@ -700,6 +700,13 @@ export class EnhancedInferenceService { ?? INPUT_PRICING_PER_MILLION[model.id]; if (price === undefined) { + if (model.provider === 'openai-compatible') { + console.warn( + `[Pricing] No pricing configured for openai-compatible model ${model.id} (${model.providerModelId || 'none'}), assuming $0 for metrics` + ); + return 0; + } + // Throw error instead of silently returning $0 - prevents untracked charges throw new PricingNotConfiguredError(model.id, model.provider, model.providerModelId); } @@ -727,6 +734,13 @@ export class EnhancedInferenceService { ?? OUTPUT_PRICING_PER_MILLION[model.id]; if (price === undefined) { + if (model.provider === 'openai-compatible') { + console.warn( + `[Pricing] No pricing configured for openai-compatible model ${model.id} (${model.providerModelId || 'none'}), assuming $0 for metrics` + ); + return 0; + } + // Throw error instead of silently returning $0 - prevents untracked charges throw new PricingNotConfiguredError(model.id, model.provider, model.providerModelId); } @@ -786,4 +800,4 @@ export class EnhancedInferenceService { return this.contextManager.getCacheMarker(conversationId, participantId); } -} \ No newline at end of file +}