Add three billing lifecycle methods to the TaskAdaptor interface: - EstimateBilling: compute OtherRatios from user request before pricing - AdjustBillingOnSubmit: adjust ratios from upstream submit response - AdjustBillingOnComplete: determine final quota at task terminal state Introduce BaseBilling as embeddable no-op default for adaptors without custom billing. Move Sora/Ali OtherRatios logic from shared validation into per-adaptor EstimateBilling implementations. Add TaskBillingContext to persist pricing params (model_price, group_ratio, other_ratios) in task private data for async polling settlement. Extract RecalculateTaskQuota as a general-purpose delta settlement function and unify polling billing via settleTaskBillingOnComplete (adaptor-first, then token-based fallback).
| Name |
Last commit
|
Last Update |
|---|---|---|
| .. | ||
| billing.go | Loading commit data... | |
| channel-billing.go | Loading commit data... | |
| channel-test.go | Loading commit data... | |
| channel.go | Loading commit data... | |
| channel_affinity_cache.go | Loading commit data... | |
| checkin.go | Loading commit data... | |
| codex_oauth.go | Loading commit data... | |
| codex_usage.go | Loading commit data... | |
| console_migrate.go | Loading commit data... | |
| custom_oauth.go | Loading commit data... | |
| deployment.go | Loading commit data... | |
| group.go | Loading commit data... | |
| image.go | Loading commit data... | |
| log.go | Loading commit data... | |
| midjourney.go | Loading commit data... | |
| misc.go | Loading commit data... | |
| missing_models.go | Loading commit data... | |
| model.go | Loading commit data... | |
| model_meta.go | Loading commit data... | |
| model_sync.go | Loading commit data... | |
| oauth.go | Loading commit data... | |
| option.go | Loading commit data... | |
| passkey.go | Loading commit data... | |
| performance.go | Loading commit data... | |
| playground.go | Loading commit data... | |
| prefill_group.go | Loading commit data... | |
| pricing.go | Loading commit data... | |
| ratio_config.go | Loading commit data... | |
| ratio_sync.go | Loading commit data... | |
| redemption.go | Loading commit data... | |
| relay.go | Loading commit data... | |
| secure_verification.go | Loading commit data... | |
| setup.go | Loading commit data... | |
| subscription.go | Loading commit data... | |
| subscription_payment_creem.go | Loading commit data... | |
| subscription_payment_epay.go | Loading commit data... | |
| subscription_payment_stripe.go | Loading commit data... | |
| swag_video.go | Loading commit data... | |
| task.go | Loading commit data... | |
| telegram.go | Loading commit data... | |
| token.go | Loading commit data... | |
| topup.go | Loading commit data... | |
| topup_creem.go | Loading commit data... | |
| topup_stripe.go | Loading commit data... | |
| twofa.go | Loading commit data... | |
| uptime_kuma.go | Loading commit data... | |
| usedata.go | Loading commit data... | |
| user.go | Loading commit data... | |
| vendor_meta.go | Loading commit data... | |
| video_proxy.go | Loading commit data... | |
| video_proxy_gemini.go | Loading commit data... | |
| wechat.go | Loading commit data... |