{"ok":true,"topic":"business-rules","generatedAt":"2026-09-19T06:40:33.170Z","specLevel":{"current":3,"target":5,"note":"AI-readable company specification. Served at /qa (legacy name) and /spec (preferred alias). Marketplace home services = Application #1 on the Capability OS.","preferredMount":"/spec","legacyMount":"/qa"},"happyPath":["Customer describes job (universal classify rules_v1)","Coverage / ZIP confirmed","Providers matched on rate cards + eligibility (not invented prices)","Customer selects provider or Fast Match path","Payment authorized (Stripe TEST on demo)","Provider accepts / confirmed","Job scheduled / in progress","Completion evidence + completion code","Payout release (demo ledger may simulate; bank RELEASED only after real Connect)","Review enabled for completed paid jobs"],"hardRules":["Do not invent final prices with an LLM — versioned rate cards / rules","Server-authoritative price; frontend price is not trusted","MARKETPLACE_TRANSACTIONS_LIVE gates live marketplace money CTAs","CUSTOMER_INSTANT_BOOK_LIVE gates customer Instant Book claims","Completion code before provider payout (one booking, rate-limited)","Providers are independent contractors — Proffera facilitates","Canonical domain for auth/Stripe: demo.profferaglobal.com (demo)","*.run.app is diagnostic only — not a second public product identity"],"moneyTruth":["Stripe is source of truth for payment state","Webhooks must be idempotent","Demo mode must not label simulated payouts as bank RELEASED"]}