Authentication
The web app uses Supabase-backed email magic-link sessions. Protected workspace routes require a server-side session before rendering.
Organization scoping
Core API reads and writes resolve the active organization from the authenticated request context and scope domain records by org_id.
Shopify OAuth and webhooks
Shopify install flows use OAuth state records, callback HMAC verification, and webhook HMAC verification before accepting Shopify events.
Stored secrets
Shopify access tokens are encrypted before storage. Production environments must provide WEAVECYCLE_APP_ENCRYPTION_KEY instead of using demo defaults.
Auditability
Membership, organization, integration, return routing, listing, forecast, handoff, and DPP events create audit or product event records.
Security headers
The web app sets nosniff, strict referrer policy, denied framing, restricted browser permissions, and a baseline CSP for frame, base, and object restrictions.