fix(lint): auto-fix ruff violations and tune lint rules
- Auto-fixed 4,496 lint issues (import sorting, modern syntax, etc.) - Added ignore rules for patterns intentional in this codebase: E402 (late imports), E712 (SQLAlchemy filters), B904 (raise from), SIM108/SIM105/SIM117 (readability preferences) - Added per-file ignores for tests and scripts - Excluded broken scripts/rename_terminology.py (has curly quotes) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -5,13 +5,13 @@ Billing module services.
|
||||
Provides subscription management, Stripe integration, and admin operations.
|
||||
"""
|
||||
|
||||
from app.modules.billing.services.subscription_service import (
|
||||
SubscriptionService,
|
||||
subscription_service,
|
||||
)
|
||||
from app.modules.billing.services.stripe_service import (
|
||||
StripeService,
|
||||
stripe_service,
|
||||
from app.modules.billing.exceptions import (
|
||||
BillingServiceError,
|
||||
NoActiveSubscriptionError,
|
||||
PaymentSystemNotConfiguredError,
|
||||
StripePriceNotConfiguredError,
|
||||
SubscriptionNotCancelledError,
|
||||
TierNotFoundError,
|
||||
)
|
||||
from app.modules.billing.services.admin_subscription_service import (
|
||||
AdminSubscriptionService,
|
||||
@@ -21,34 +21,34 @@ from app.modules.billing.services.billing_service import (
|
||||
BillingService,
|
||||
billing_service,
|
||||
)
|
||||
from app.modules.billing.exceptions import (
|
||||
BillingServiceError,
|
||||
PaymentSystemNotConfiguredError,
|
||||
TierNotFoundError,
|
||||
StripePriceNotConfiguredError,
|
||||
NoActiveSubscriptionError,
|
||||
SubscriptionNotCancelledError,
|
||||
from app.modules.billing.services.capacity_forecast_service import (
|
||||
CapacityForecastService,
|
||||
capacity_forecast_service,
|
||||
)
|
||||
from app.modules.billing.services.feature_service import (
|
||||
FeatureService,
|
||||
feature_service,
|
||||
)
|
||||
from app.modules.billing.services.capacity_forecast_service import (
|
||||
CapacityForecastService,
|
||||
capacity_forecast_service,
|
||||
)
|
||||
from app.modules.billing.services.platform_pricing_service import (
|
||||
PlatformPricingService,
|
||||
platform_pricing_service,
|
||||
)
|
||||
from app.modules.billing.services.stripe_service import (
|
||||
StripeService,
|
||||
stripe_service,
|
||||
)
|
||||
from app.modules.billing.services.subscription_service import (
|
||||
SubscriptionService,
|
||||
subscription_service,
|
||||
)
|
||||
from app.modules.billing.services.usage_service import (
|
||||
UsageService,
|
||||
usage_service,
|
||||
UsageData,
|
||||
UsageMetricData,
|
||||
LimitCheckData,
|
||||
TierInfoData,
|
||||
UpgradeTierData,
|
||||
LimitCheckData,
|
||||
UsageData,
|
||||
UsageMetricData,
|
||||
UsageService,
|
||||
usage_service,
|
||||
)
|
||||
|
||||
__all__ = [
|
||||
|
||||
@@ -324,7 +324,7 @@ class AdminSubscriptionService:
|
||||
.all()
|
||||
)
|
||||
|
||||
tier_distribution = {tier_name: count for tier_name, count in tier_counts}
|
||||
tier_distribution = dict(tier_counts)
|
||||
|
||||
# Calculate MRR (Monthly Recurring Revenue)
|
||||
mrr_cents = 0
|
||||
|
||||
@@ -13,7 +13,6 @@ from typing import TYPE_CHECKING
|
||||
|
||||
from app.modules.contracts.features import (
|
||||
FeatureDeclaration,
|
||||
FeatureProviderProtocol,
|
||||
FeatureScope,
|
||||
FeatureType,
|
||||
FeatureUsage,
|
||||
|
||||
@@ -15,15 +15,6 @@ from datetime import datetime
|
||||
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from app.modules.billing.services.stripe_service import stripe_service
|
||||
from app.modules.billing.services.subscription_service import subscription_service
|
||||
from app.modules.billing.models import (
|
||||
AddOnProduct,
|
||||
BillingHistory,
|
||||
MerchantSubscription,
|
||||
SubscriptionTier,
|
||||
StoreAddOn,
|
||||
)
|
||||
from app.modules.billing.exceptions import (
|
||||
BillingServiceError,
|
||||
NoActiveSubscriptionError,
|
||||
@@ -32,6 +23,15 @@ from app.modules.billing.exceptions import (
|
||||
SubscriptionNotCancelledError,
|
||||
TierNotFoundError,
|
||||
)
|
||||
from app.modules.billing.models import (
|
||||
AddOnProduct,
|
||||
BillingHistory,
|
||||
MerchantSubscription,
|
||||
StoreAddOn,
|
||||
SubscriptionTier,
|
||||
)
|
||||
from app.modules.billing.services.stripe_service import stripe_service
|
||||
from app.modules.billing.services.subscription_service import subscription_service
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@@ -49,7 +49,9 @@ class CapacityForecastService:
|
||||
Should be called by a daily background job.
|
||||
"""
|
||||
from app.modules.cms.services.media_service import media_service
|
||||
from app.modules.monitoring.services.platform_health_service import platform_health_service
|
||||
from app.modules.monitoring.services.platform_health_service import (
|
||||
platform_health_service,
|
||||
)
|
||||
|
||||
now = datetime.now(UTC)
|
||||
today = now.replace(hour=0, minute=0, second=0, microsecond=0)
|
||||
@@ -234,7 +236,9 @@ class CapacityForecastService:
|
||||
|
||||
Returns prioritized list of recommendations.
|
||||
"""
|
||||
from app.modules.monitoring.services.platform_health_service import platform_health_service
|
||||
from app.modules.monitoring.services.platform_health_service import (
|
||||
platform_health_service,
|
||||
)
|
||||
|
||||
recommendations = []
|
||||
|
||||
|
||||
@@ -229,7 +229,7 @@ class FeatureAggregatorService:
|
||||
if decl.scope == FeatureScope.STORE and store_id is not None:
|
||||
usage = self.get_store_usage(db, store_id)
|
||||
return usage.get(feature_code)
|
||||
elif decl.scope == FeatureScope.MERCHANT and merchant_id is not None and platform_id is not None:
|
||||
if decl.scope == FeatureScope.MERCHANT and merchant_id is not None and platform_id is not None:
|
||||
usage = self.get_merchant_usage(db, merchant_id, platform_id)
|
||||
return usage.get(feature_code)
|
||||
|
||||
|
||||
@@ -33,9 +33,8 @@ from app.modules.billing.models import (
|
||||
MerchantFeatureOverride,
|
||||
MerchantSubscription,
|
||||
SubscriptionTier,
|
||||
TierFeatureLimit,
|
||||
)
|
||||
from app.modules.contracts.features import FeatureScope, FeatureType
|
||||
from app.modules.contracts.features import FeatureType
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -397,7 +396,6 @@ class FeatureService:
|
||||
}
|
||||
|
||||
# Get all usage at once
|
||||
store_usage = {}
|
||||
merchant_usage = feature_aggregator.get_merchant_usage(db, merchant_id, platform_id)
|
||||
|
||||
summaries = []
|
||||
|
||||
@@ -11,7 +11,6 @@ Provides:
|
||||
"""
|
||||
|
||||
import logging
|
||||
from datetime import datetime
|
||||
|
||||
import stripe
|
||||
from sqlalchemy.orm import Session
|
||||
@@ -22,10 +21,7 @@ from app.modules.billing.exceptions import (
|
||||
WebhookVerificationException,
|
||||
)
|
||||
from app.modules.billing.models import (
|
||||
BillingHistory,
|
||||
MerchantSubscription,
|
||||
SubscriptionStatus,
|
||||
SubscriptionTier,
|
||||
)
|
||||
from app.modules.tenancy.models import Store
|
||||
|
||||
|
||||
@@ -29,8 +29,7 @@ from datetime import UTC, datetime, timedelta
|
||||
from sqlalchemy.orm import Session, joinedload
|
||||
|
||||
from app.modules.billing.exceptions import (
|
||||
SubscriptionNotFoundException,
|
||||
TierLimitExceededException, # Re-exported for backward compatibility
|
||||
SubscriptionNotFoundException, # Re-exported for backward compatibility
|
||||
)
|
||||
from app.modules.billing.models import (
|
||||
MerchantSubscription,
|
||||
|
||||
@@ -92,7 +92,9 @@ class UsageService:
|
||||
self, db: Session, store_id: int
|
||||
) -> MerchantSubscription | None:
|
||||
"""Resolve store_id to MerchantSubscription."""
|
||||
from app.modules.billing.services.subscription_service import subscription_service
|
||||
from app.modules.billing.services.subscription_service import (
|
||||
subscription_service,
|
||||
)
|
||||
return subscription_service.get_subscription_for_store(db, store_id)
|
||||
|
||||
def get_store_usage(self, db: Session, store_id: int) -> UsageData:
|
||||
|
||||
Reference in New Issue
Block a user