forklaunch 1.35.1

Launch faster with forklaunch
# Apply --migrate with a schema-owner DATABASE_URL before running either process.
DATABASE_URL=postgres://ecommerce_app:CHANGE_ME@127.0.0.1:5432/ecommerce
TENANT_ID=example-tenant
ENCRYPTION_KEY=replace-with-a-high-entropy-field-encryption-key
# LEGACY_ENCRYPTION_KEYS=previous-key
HOST=127.0.0.1
PORT=8000
HMAC_SECRET_KEY=replace-with-a-service-secret
JWKS_PUBLIC_KEY_URL=https://iam.example.com/.well-known/jwks.json
STRIPE_API_KEY=replace-with-stripe-api-key
STRIPE_WEBHOOK_SECRET=replace-with-stripe-webhook-secret
# Stripe Connect: set both the account and the platform fee.
# STRIPE_CONNECTED_ACCOUNT_ID=acct_merchant
# STRIPE_PLATFORM_FEE_BPS=0
# Optional HTTPS API proxy; unset calls the Stripe API directly.
# STRIPE_API_BASE=https://api.stripe.com
# Enable PayPal by supplying all four values.
# PAYPAL_CLIENT_ID=replace-with-client-id
# PAYPAL_CLIENT_SECRET=replace-with-client-secret
# PAYPAL_BASE_URL=https://api-m.sandbox.paypal.com
# PAYPAL_WEBHOOK_ID=replace-with-paypal-webhook-id
MCP_ENABLED=true
MCP_PATH=/mcp
# MCP_ALLOWED_HOSTS=api.example.com
# MCP_ALLOWED_ORIGINS=https://app.example.com:443
# Retry settings apply to both processes; the --worker process also needs the runner settings.
WORKER_MAX_ATTEMPTS=3
WORKER_BACKOFF_SECONDS=30
WORKER_CONCURRENCY=1
WORKER_BATCH_SIZE=1
WORKER_POLL_MS=250
WORKER_LEASE_MS=30000
WORKER_RENEW_MS=10000
WORKER_DRAIN_MS=30000
# WORKER_HTTP_ADDR=127.0.0.1:9001
# WORKER_CONTROL_TOKEN=replace-with-high-entropy-control-token
RUST_LOG=info
# OTEL_EXPORTER_OTLP_ENDPOINT=http://127.0.0.1:4318

# MCP uses the HTTP listener by default. For a separate listener:
# MCP_LISTENER=separate
# MCP_PORT=10000
# MCP_HOST=127.0.0.1
# Without MCP_PORT, separate mode uses the HTTP port + 2000.
# MCP_PATH=/mcp
# MCP_ENABLED=false