erio
c5864f5c19
chore: bump version to 0.1.108.28
2026-04-06 21:50:54 +08:00
erio
30943a9701
chore: bump version to 0.1.108.27
2026-04-06 21:37:46 +08:00
erio
4a10a31b34
chore: bump version to 0.1.108.26
2026-04-06 21:18:12 +08:00
erio
4e54d95645
chore: bump version to 0.1.108.25
2026-04-06 20:58:02 +08:00
erio
76193ee3c9
chore: bump version to 0.1.108.24
2026-04-06 20:12:45 +08:00
erio
9f98284382
chore: bump version to 0.1.108.23
2026-04-06 20:06:39 +08:00
erio
2cb9d73fa5
chore: bump version to 0.1.108.22
2026-04-06 19:57:42 +08:00
erio
fc6514c18b
chore: bump version to 0.1.108.21
2026-04-06 19:43:50 +08:00
erio
3ba667d5c0
chore: bump version to 0.1.108.20
2026-04-06 19:31:26 +08:00
erio
b0025ed25d
chore: bump version to 0.1.108.19
2026-04-06 19:04:01 +08:00
erio
b7367c5b31
chore: bump version to 0.1.108.18
2026-04-06 18:28:17 +08:00
erio
f8a07d59c4
chore: bump version to 0.1.108.17
2026-04-06 18:15:15 +08:00
erio
f90d0f86fd
chore: bump version to 0.1.108.16
2026-04-06 18:06:36 +08:00
erio
d68479d4af
chore: bump version to 0.1.108.15
2026-04-06 17:51:07 +08:00
erio
c577595f50
chore: bump version to 0.1.108.14
2026-04-06 17:40:05 +08:00
erio
5f64f744de
chore: bump version to 0.1.108.13
2026-04-06 17:16:59 +08:00
erio
86204170d9
chore: bump version to 0.1.108.12
2026-04-06 16:44:21 +08:00
erio
d25669ab52
chore: bump version to 0.1.108.11
2026-04-06 16:19:19 +08:00
erio
9b8317fc66
chore: bump version to 0.1.108.10
2026-04-06 16:04:20 +08:00
erio
1984a19285
chore: bump version to 0.1.108.9
2026-04-06 15:37:39 +08:00
erio
f72f79f48f
chore: bump version to 0.1.108.8
2026-04-06 15:21:25 +08:00
erio
329d3445fa
chore: bump version to 0.1.108.7
2026-04-06 15:03:19 +08:00
erio
fdc9c6d8b8
chore: bump version to 0.1.108.6
2026-04-06 14:52:16 +08:00
erio
22a3931984
chore: bump version to 0.1.108.5
2026-04-06 14:40:53 +08:00
erio
fa00ad06d2
chore: bump version to 0.1.108.4
2026-04-06 14:27:10 +08:00
erio
485b843637
fix: add PaymentOrderExpiryService param to provideCleanup test
2026-04-06 02:17:42 +08:00
erio
7a77ab2d09
chore: bump version to 0.1.108.3
2026-04-06 02:12:39 +08:00
erio
c69929bbb7
Merge feature/payment into release/custom-0.1.108
...
集成支付系统(EasyPay、Alipay、WxPay、Stripe),包含完整的订单管理、
Webhook 回调、管理后台仪表盘和用户充值/订阅流程。
2026-04-06 00:53:57 +08:00
erio
cb56b96cd1
chore: bump version to 0.1.108.2
2026-04-06 00:00:31 +08:00
erio
db6413039a
Merge tag 'v0.1.108' into release/custom-0.1.108
...
彻底移除 Sora 平台功能,精简代码库约 24000 行;修复渠道平台定价隔离问题。
- 完全移除 Sora 平台:删除所有 Sora 相关的后端服务、前端组件、数据库 Schema 和 ent 代码
- 移除 Sora 相关的 S3 存储、媒体管理、配额管理、生成服务等模块
- 清理前端 Sora 视图、组件、composables、API 调用和国际化文本
- 移除 Sora OAuth 选项,简化 OpenAI OAuth 流程
- 更新 antigravity User-Agent 版本号至 1.21.9
- 修复 antigravity 分组错误匹配其他平台(anthropic/gemini)定价和模型映射的问题
- 修复渠道未映射模型时 BillingModel 被错误还原导致零计费的问题
# Conflicts:
# backend/cmd/server/VERSION
# backend/cmd/server/wire_gen.go
# backend/ent/group.go
# backend/ent/mutation.go
# backend/ent/runtime/runtime.go
# backend/ent/schema/group.go
# backend/internal/handler/admin/channel_handler.go
# backend/internal/handler/admin/channel_handler_test.go
# backend/internal/handler/gateway_handler.go
# backend/internal/pkg/antigravity/stream_transformer.go
# backend/internal/server/api_contract_test.go
# backend/internal/service/billing_service.go
# backend/internal/service/channel_service.go
# backend/internal/service/channel_service_test.go
# backend/internal/service/gateway_service.go
# backend/internal/service/openai_account_scheduler.go
# backend/internal/service/openai_gateway_chat_completions.go
# backend/internal/service/openai_gateway_service.go
# backend/internal/service/openai_oauth_service.go
2026-04-05 23:11:04 +08:00
erio
aa151ef0e1
fix: resolve all audit findings — registry init, expiry task, dashboard, i18n, stripe
...
C1: Add EnsureProviders() lazy initialization to populate Registry
from PaymentProviderInstance DB rows at first use
C2: Delete stale payment/provider_factory.go dead code
C3: Add PaymentOrderExpiryService background ticker (60s interval)
C4: Expand DashboardStats with daily_series, payment_methods, top_users
C5+C6: Add 152 payment i18n keys (en + zh) for admin and settings pages
C7: Fix Stripe global key race — use per-instance client.API
I1: Remove old purchase_subscription_enabled/url from settings form
I2: Add MigrateLegacyPurchaseURL to auto-convert old URL to custom menu
I3: Add migration 092 no-op placeholder for numbering continuity
2026-04-05 18:32:24 +08:00
erio
c6089ccb33
fix: remove Sora DI from wire_gen.go and clean remaining upstream Sora references
2026-04-05 17:50:01 +08:00
erio
62e80c602d
revert: completely remove all Sora functionality
2026-04-05 17:11:01 +08:00
erio
8cb2409ea5
refactor: remove PaymentChannel, reuse upstream Channel with features field
...
- Delete payment_channels table and PaymentChannel Ent schema
- Add `features` column to upstream channels table (migration 095)
- Add Features field to Channel struct, input types, handler request/response
- Payment user/admin handlers now use ChannelService directly
- Remove Channel CRUD from PaymentConfigService and admin payment routes
- Remove "渠道管理" tab from admin orders page (use /admin/channels)
2026-04-05 16:39:24 +08:00
erio
64c4495ae5
feat: integrate payment system (EasyPay, Alipay, WxPay, Stripe)
...
Replace iframe-based external payment with native implementation:
Backend (Go):
- 5 new Ent schemas: PaymentOrder, PaymentAuditLog, PaymentChannel,
SubscriptionPlan, PaymentProviderInstance
- 5 SQL migrations (090-094)
- Payment provider interface + registry + load balancer
- 4 provider implementations (EasyPay, Alipay, WxPay, Stripe)
- PaymentService (order lifecycle, fulfillment, refund 3-phase)
- PaymentConfigService (settings, instance/channel/plan CRUD)
- 31 API endpoints (9 user + 4 webhook + 18 admin)
- Wire DI integration
Frontend (Vue3):
- Payment types, API modules, store, router changes
- Sidebar: payment_enabled controls visibility, new menu items
- User pages: PaymentView (replace iframe), QR payment, Stripe,
result page, order list
- Admin pages: Order management (4 tabs), provider instance mgmt
- Settings: new payment tab, removed old purchase iframe config
- i18n: full payment namespace (en + zh)
Docs:
- PAYMENT_FRONTEND_MIGRATION_PLAN.md
- PAYMENT_BACKEND_MIGRATION_PLAN.md
- PAYMENT_IMPLEMENTATION_ROADMAP.md
2026-04-05 15:06:05 +08:00
github-actions[bot]
dbb248df52
chore: sync VERSION to 0.1.107 [skip ci]
2026-04-05 06:02:08 +00:00
erio
dece8987e9
revert: completely remove all Sora functionality
...
Remove ALL Sora code — client, gateway, generation, S3 storage, accounts,
media, SDK, quota, scheduling, billing, OAuth, settings, and frontend UI.
Backend: 60+ files deleted/cleaned, including service layer (scheduling,
billing, token provider), handler layer (client/gateway handlers, DTOs),
repository layer (sora repos), config, wire DI, routes, domain constants.
Frontend: 14 files deleted + 29 files cleaned, including components, views,
API clients, composables, i18n keys, types, router entries.
Cloudflare challenge detection migrated from soraerror to httputil package.
Migration files retained (046/047/063/070) to preserve DB migration history.
136 files changed, ~24,300 lines removed. All tests pass.
2026-04-04 23:50:00 +08:00
erio
c790b808dd
revert: remove affinity scheduling, Claude Max cache simulation, Sora async tasks, and GDrive remnants
...
Remove 4 features from the release branch to keep it focused on channel management + upstream:
1. Affinity scheduling: gateway affinity flow, Redis Lua scripts, account methods,
handler endpoints, frontend components (AffinityBadge, AffinityConfigCard)
2. Claude Max cache simulation: billing policy, tokenizer, response helpers,
Group.SimulateClaudeMaxEnabled field, ent schema changes, frontend toggles
3. Sora async tasks: task service/worker/repo, videos handler, object storage
abstraction, frontend components (SoraGeneratePage, SoraProgressCard, etc.),
S3 storage admin settings
4. Google Drive remnants: gdrive constant cleanup (base revert was already done)
All tests pass. Channel management code preserved intact.
2026-04-04 16:34:17 +08:00
erio
d4ff835bf1
revert: remove antigravity credits precheck logic (not part of channel feature)
...
Restore account_usage_service.go, antigravity_gateway_service.go,
antigravity_credits_overages.go and its test to upstream/main state.
These credits balance precheck changes were accidentally included
during cherry-pick of channel management commits.
2026-04-04 14:32:26 +08:00
erio
d72ac92694
feat: image output token billing, channel-mapped billing source, credits balance precheck
...
- Parse candidatesTokensDetails from Gemini API to separate image/text output tokens
- Add image_output_tokens and image_output_cost to usage_log (migration 089)
- Support per-image-token pricing via output_cost_per_image_token from model pricing data
- Channel pricing ImageOutputPrice override works in token billing mode
- Auto-fill image_output_price in channel pricing form from model defaults
- Add "channel_mapped" billing model source as new default (migration 088)
- Bills by model name after channel mapping, before account mapping
- Fix channel cache error TTL sign error (115s → 5s)
- Fix Update channel only invalidating new groups, not removed groups
- Fix frontend model_mapping clearing sending undefined instead of {}
- Credits balance precheck via shared AccountUsageService cache before injection
- Skip credits injection for accounts with insufficient balance
- Don't mark credits exhausted for "exhausted your capacity on this model" 429s
2026-04-04 11:15:59 +08:00
erio
8d03c52e15
feat(channel): 通配符定价匹配 + OpenAI BillingModelSource + 按次价格校验 + 用户端计费模式展示
...
- 定价查找支持通配符(suffix *),最长前缀优先匹配
- 模型限制(restrict_models)同样支持通配符匹配
- OpenAI 网关接入渠道映射/BillingModelSource/模型限制
- 按次/图片计费模式创建时强制要求价格或层级(前后端)
- 用户使用记录列表增加计费模式 badge 列
2026-04-04 11:13:43 +08:00
erio
632035aabd
feat(billing): 网关计费迁移到 CalculateCostUnified + 模型限制错误统一
...
- GatewayService/OpenAIGatewayService 注入 ModelPricingResolver
- RecordUsage 从旧路径迁移到 CalculateCostUnified(支持 per_request/image 模式)
- 无渠道时自动回退旧路径,保持原有行为
- 长上下文双倍计费仅在无渠道定价时生效
- CostBreakdown 新增 BillingMode 字段,使用日志记录实际计费模式
- 模型限制错误改为与"无可用账号"相同的 503 响应
2026-04-04 11:12:21 +08:00
erio
12d03e4030
feat(channel): 模型价格自动填充 + 默认定价 API
...
- 新增 GET /admin/channels/model-pricing?model=xxx API
- 从 BillingService 查询 LiteLLM/Fallback 默认定价
- 前端添加模型时自动查询并填充价格($/MTok)
- 仅在所有价格字段为空时才自动填充,不覆盖手动配置
2026-04-04 11:09:28 +08:00
erio
91c9b8d062
feat(channel): 渠道管理系统 — 多模式定价 + 统一计费解析
...
Cherry-picked from release/custom-0.1.106: a9117600
2026-04-04 11:00:55 +08:00
erio
950ac48f9f
revert: remove Google Drive storage backend
...
Remove all GDrive/Google Drive storage extension code:
- Delete 7 GDrive-specific files (handler, service, tests, router, frontend)
- Remove GDrive fields from setting service and DTOs
- Remove GDrive routes, wire dependencies, i18n entries
- Revert DataManagementView to S3-only storage management
2026-04-03 18:38:16 +08:00
erio
fc5e96aa9f
merge: upstream v0.1.106 into release/custom-0.1.106
...
Resolved conflicts:
- VERSION: set to 0.1.106.1
- wire_gen.go: keep our version with accountUsageService
- antigravity_gateway_service.go: keep accountUsageService field/param
- openai_gateway_service.go: keep billing model override logic
- account.go: keep both affinity methods and new custom base URL methods
- dto/types.go: keep both affinity fields and new custom base URL fields
- CreateAccountModal.vue: keep both affinity and custom base URL logic
- EditAccountModal.vue: keep both affinity and custom base URL state
2026-04-03 15:47:18 +08:00
erio
2ffdd2a573
chore: bump version to 0.1.105.41
2026-04-03 13:54:48 +08:00
erio
8d32daa9fe
chore: bump version to 0.1.105.40
2026-04-03 02:11:42 +08:00
erio
7a1a7d9c8d
chore: bump version to 0.1.105.39
2026-04-02 23:47:46 +08:00
erio
eb90335da1
chore: bump version to 0.1.105.38
2026-04-02 21:03:40 +08:00