refactor: remove all backward compatibility code across 70 files
Some checks failed
Some checks failed
Clean up 28 backward compatibility instances identified in the codebase. The app is not live, so all shims are replaced with the target architecture: - Remove legacy Inventory.location column (use bin_location exclusively) - Remove dashboard _extract_metric_value helper (use flat metrics dict) - Remove legacy stat field duplicates (total_stores, total_imports, etc.) - Remove 13 re-export shims and class aliases across modules - Remove module-enabling JSON fallback (use PlatformModule junction table) - Remove menu_to_legacy_format() conversion (return dataclasses directly) - Remove title/description from MarketplaceProductBase schema - Clean billing convenience method docstrings - Clean test fixtures and backward-compat comments - Add PlatformModule seeding to init_production.py Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -6,7 +6,7 @@ Detects platform from host/domain/path and injects into request.state.
|
||||
This middleware runs BEFORE StoreContextMiddleware to establish platform context.
|
||||
|
||||
Handles two routing modes:
|
||||
1. Production: Domain-based (oms.lu, loyalty.lu → Platform detection)
|
||||
1. Production: Domain-based (omsflow.lu, rewardflow.lu → Platform detection)
|
||||
2. Development: Path-based (localhost:9999/platforms/oms/*, localhost:9999/platforms/loyalty/*)
|
||||
|
||||
URL Structure:
|
||||
@@ -42,7 +42,7 @@ class PlatformContextManager:
|
||||
Detect platform context from request.
|
||||
|
||||
Priority order:
|
||||
1. Domain-based (production): oms.lu → platform code "oms"
|
||||
1. Domain-based (production): omsflow.lu → platform code "oms"
|
||||
2. Path-based (development): localhost:9999/platforms/oms/* → platform code "oms"
|
||||
3. Default: localhost without /platforms/ prefix → 'main' platform (marketing site)
|
||||
|
||||
@@ -74,12 +74,12 @@ class PlatformContextManager:
|
||||
# For now, assume non-localhost hosts that aren't subdomains are platform domains
|
||||
if "." in host_without_port:
|
||||
# This could be:
|
||||
# - Platform domain: oms.lu, loyalty.lu
|
||||
# - Store subdomain: store.oms.lu
|
||||
# - Platform domain: omsflow.lu, rewardflow.lu
|
||||
# - Store subdomain: store.omsflow.lu
|
||||
# - Custom domain: shop.mymerchant.com
|
||||
# We detect platform domain vs subdomain by checking if it's a root domain
|
||||
parts = host_without_port.split(".")
|
||||
if len(parts) == 2: # e.g., oms.lu (root domain)
|
||||
if len(parts) == 2: # e.g., omsflow.lu (root domain)
|
||||
return {
|
||||
"domain": host_without_port,
|
||||
"detection_method": "domain",
|
||||
@@ -409,7 +409,7 @@ class PlatformContextMiddleware:
|
||||
if host_without_port and host_without_port not in ["localhost", "127.0.0.1"]:
|
||||
if "." in host_without_port:
|
||||
parts = host_without_port.split(".")
|
||||
if len(parts) == 2: # Root domain like oms.lu
|
||||
if len(parts) == 2: # Root domain like omsflow.lu
|
||||
return {
|
||||
"domain": host_without_port,
|
||||
"detection_method": "domain",
|
||||
|
||||
Reference in New Issue
Block a user