fix(hosting): require merchant or prospect for site creation
- Schema: add merchant_id/prospect_id with model_validator requiring at least one. Remove from-prospect endpoint (unified into POST /sites) - Service: rewrite create() — if merchant_id use it directly, if prospect_id auto-create merchant from prospect data. Remove system merchant hack entirely. Extract _create_merchant_from_prospect helper. - Simplify accept_proposal() — merchant already exists at creation, only creates subscription and marks prospect converted - Tests: update all create calls with merchant_id, replace from-prospect tests with prospect_id + validation tests Closes docs/proposals/hosting-site-creation-fix.md Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -89,6 +89,7 @@ def hosted_site(db, hosting_platform, system_merchant):
|
||||
db,
|
||||
{
|
||||
"business_name": f"Test Business {unique}",
|
||||
"merchant_id": system_merchant.id,
|
||||
"contact_name": "John Doe",
|
||||
"contact_email": f"john-{unique}@example.com",
|
||||
"contact_phone": "+352 123 456",
|
||||
|
||||
Reference in New Issue
Block a user