feat(middleware): harden routing with fail-closed policy, custom subdomain management, and perf fixes
- Fix IPv6 host parsing with _strip_port() utility - Remove dangerous StorePlatform→Store.subdomain silent fallback - Close storefront gate bypass when frontend_type is None - Add custom subdomain management UI and API for stores - Add domain health diagnostic tool - Convert db.add() in loops to db.add_all() (24 PERF-006 fixes) - Add tests for all new functionality (18 subdomain service tests) - Add .github templates for validator compliance Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -33,7 +33,7 @@ def audit_logs(db):
|
||||
# Sent logs
|
||||
for i in range(3):
|
||||
uid = uuid.uuid4().hex[:8]
|
||||
log = EmailLog(
|
||||
logs.append(EmailLog(
|
||||
template_code="signup_welcome",
|
||||
recipient_email=f"sent_{uid}@example.com",
|
||||
recipient_name=f"Sent User {i}",
|
||||
@@ -45,14 +45,12 @@ def audit_logs(db):
|
||||
status=EmailStatus.SENT.value,
|
||||
provider="debug",
|
||||
sent_at=datetime.utcnow(),
|
||||
)
|
||||
db.add(log)
|
||||
logs.append(log)
|
||||
))
|
||||
|
||||
# Failed logs
|
||||
for i in range(2):
|
||||
uid = uuid.uuid4().hex[:8]
|
||||
log = EmailLog(
|
||||
logs.append(EmailLog(
|
||||
template_code="order_confirmation",
|
||||
recipient_email=f"failed_{uid}@example.com",
|
||||
recipient_name=f"Failed User {i}",
|
||||
@@ -62,22 +60,19 @@ def audit_logs(db):
|
||||
status=EmailStatus.FAILED.value,
|
||||
provider="smtp",
|
||||
error_message="Connection refused",
|
||||
)
|
||||
db.add(log)
|
||||
logs.append(log)
|
||||
))
|
||||
|
||||
# Pending log
|
||||
uid = uuid.uuid4().hex[:8]
|
||||
log = EmailLog(
|
||||
logs.append(EmailLog(
|
||||
template_code="team_invitation",
|
||||
recipient_email=f"pending_{uid}@example.com",
|
||||
subject=f"Invitation {uid}",
|
||||
from_email="noreply@orion.lu",
|
||||
status=EmailStatus.PENDING.value,
|
||||
)
|
||||
db.add(log)
|
||||
logs.append(log)
|
||||
))
|
||||
|
||||
db.add_all(logs)
|
||||
db.commit()
|
||||
for log in logs:
|
||||
db.refresh(log)
|
||||
|
||||
@@ -55,7 +55,7 @@ def email_logs(db, email_template):
|
||||
for status, count in statuses:
|
||||
for i in range(count):
|
||||
uid = uuid.uuid4().hex[:8]
|
||||
log = EmailLog(
|
||||
logs.append(EmailLog(
|
||||
template_code=email_template.code,
|
||||
recipient_email=f"user_{uid}@example.com",
|
||||
recipient_name=f"User {uid}",
|
||||
@@ -67,10 +67,9 @@ def email_logs(db, email_template):
|
||||
status=status.value,
|
||||
provider="debug",
|
||||
sent_at=datetime.utcnow() if status != EmailStatus.PENDING else None,
|
||||
)
|
||||
db.add(log)
|
||||
logs.append(log)
|
||||
))
|
||||
|
||||
db.add_all(logs)
|
||||
db.commit()
|
||||
for log in logs:
|
||||
db.refresh(log)
|
||||
@@ -86,7 +85,7 @@ def multi_template_logs(db):
|
||||
for tpl_code in templates:
|
||||
for i in range(2):
|
||||
uid = uuid.uuid4().hex[:8]
|
||||
log = EmailLog(
|
||||
logs.append(EmailLog(
|
||||
template_code=tpl_code,
|
||||
recipient_email=f"{tpl_code}_{uid}@example.com",
|
||||
subject=f"{tpl_code} email",
|
||||
@@ -94,12 +93,10 @@ def multi_template_logs(db):
|
||||
status=EmailStatus.SENT.value,
|
||||
provider="debug",
|
||||
sent_at=datetime.utcnow(),
|
||||
)
|
||||
db.add(log)
|
||||
logs.append(log)
|
||||
))
|
||||
|
||||
# Add one failed log
|
||||
log = EmailLog(
|
||||
logs.append(EmailLog(
|
||||
template_code="password_reset",
|
||||
recipient_email="failed@example.com",
|
||||
subject="Failed email",
|
||||
@@ -107,10 +104,9 @@ def multi_template_logs(db):
|
||||
status=EmailStatus.FAILED.value,
|
||||
provider="debug",
|
||||
error_message="SMTP connection refused",
|
||||
)
|
||||
db.add(log)
|
||||
logs.append(log)
|
||||
))
|
||||
|
||||
db.add_all(logs)
|
||||
db.commit()
|
||||
for log in logs:
|
||||
db.refresh(log)
|
||||
|
||||
Reference in New Issue
Block a user