- Task 1: Admin endpoints for wallet management (balance, ledger, adjust, reconcile) - Task 2: AI Credits admin UI (pricing.tsx, credit.tsx) - Task 3: Ollama security (NetworkPolicy, prompt validation, audit logging) - Task 4: LiteLLM integration (litellm.rs, migrated AI feature handlers) - Task 5: Refund architecture (ai_refunds table, endpoints) - Task 6: Coupons, promotions, referrals (order creation with coupon validation) - Task 7: Subscription lifecycle (plan upgrades/downgrades/cancellations, cron jobs) - Task 8: Credit expiration enforcement (daily cron task) - Task 9: Token cost engine (ai_model_cost_config, margin view) - Task 10: Observability (metrics tables, aggregation function) New files: - apps/users/src/litellm.rs (LiteLLM client) - apps/users/src/ai_credits.rs (Charging primitives) - apps/users/src/ai_subscription.rs (Plan lifecycle) - apps/users/src/handlers/ai_credits.rs (Admin endpoints) - apps/payments/src/ai_credits.rs (Package purchase) - apps/payments/src/payu.rs (PayU integration) - apps/cron/src/tasks/ai_credits.rs (Cron jobs) - 9 SQL migrations for schema - crates/db/src/models/ai_credits.rs (Repository) - tests for ai_credits
20 lines
739 B
PL/PgSQL
20 lines
739 B
PL/PgSQL
BEGIN;
|
|
|
|
DROP INDEX IF EXISTS idx_ai_reservation_holds_status_expires;
|
|
DROP INDEX IF EXISTS idx_ai_reservation_holds_wallet_id;
|
|
DROP INDEX IF EXISTS idx_ai_credit_ledger_reference;
|
|
DROP INDEX IF EXISTS idx_ai_credit_ledger_wallet_id;
|
|
DROP INDEX IF EXISTS idx_ai_usage_logs_created_at;
|
|
DROP INDEX IF EXISTS idx_ai_usage_logs_feature_code;
|
|
DROP INDEX IF EXISTS idx_ai_usage_logs_user_id;
|
|
DROP INDEX IF EXISTS idx_user_ai_subscriptions_plan_id;
|
|
DROP INDEX IF EXISTS idx_user_ai_subscriptions_user_id;
|
|
|
|
DROP TABLE IF EXISTS ai_reservation_holds;
|
|
DROP TABLE IF EXISTS ai_credit_ledger;
|
|
DROP TABLE IF EXISTS ai_usage_logs;
|
|
DROP TABLE IF EXISTS ai_feature_costs;
|
|
DROP TABLE IF EXISTS user_ai_subscriptions;
|
|
DROP TABLE IF EXISTS ai_plans;
|
|
|
|
COMMIT;
|