Dual token tracking & OpenTelemetry
Normalized WaddleAI tokens for billing and quotas, plus raw LLM tokens for per-provider analytics.
- Every response includes both waddleai_tokens (normalized, cross-provider) and the provider’s raw prompt/completion token counts.
- OpenTelemetry gen_ai.* span attributes emitted on every dispatch: gen_ai.system, gen_ai.request.model, gen_ai.response.model, gen_ai.usage.input_tokens/output_tokens, gen_ai.response.finish_reason.
- Usage is aggregated in-process and flushed through a bounded retry buffer, so a transient database failure never silently drops billable tokens.