system-prompts-and-models-o.../salesflow-saas/.env.example
Claude 4d385f0482
feat(dealix): k6 smoke test, SLO definition, fault-injection tests, env update
Close 3 more launch gates:
- T5: k6 smoke test script (scripts/k6_smoke_test.js) with p95<500ms
  and <1% error rate thresholds, tests health/pricing/DLQ/approvals
- O5: SLO.md with latency targets per endpoint category, recovery
  objectives (RPO 24h, RTO 15min), and escalation matrix
- DLQ fault-injection tests (6/6 passing): webhook crash → DLQ,
  retry-then-succeed, exhausted retries → dead, circuit breaker
  open/recover, multi-queue isolation

Also:
- .env.example updated with POSTHOG_*, MOYASAR_SECRET_KEY,
  MOYASAR_WEBHOOK_SECRET, DLQ_*, CALENDLY_* settings
- LAUNCH_GATES.md updated: 13/33 gates closed, 5 blocked on
  founder API keys (PostHog/Moyasar/HubSpot/Calendly/UptimeRobot)

https://claude.ai/code/session_01W1rJthWDkasijTdXCfxVHs
2026-04-23 10:46:57 +00:00

136 lines
4.7 KiB
Plaintext

# ═══════════════════════════════════════════════
# Dealix — AI Revenue Operating System
# Environment Configuration
# ═══════════════════════════════════════════════
# ── App ───────────────────────────────────────
APP_NAME=Dealix
APP_NAME_AR=ديل اي اكس
ENVIRONMENT=development
DEFAULT_TIMEZONE=Asia/Riyadh
DEFAULT_CURRENCY=SAR
DEFAULT_LOCALE=ar
# ── Database ──────────────────────────────────
DB_NAME=salesflow
DB_USER=salesflow
DB_PASSWORD=change_me_in_production
DATABASE_URL=postgresql+asyncpg://salesflow:change_me_in_production@db:5432/salesflow
DB_POOL_SIZE=20
DB_MAX_OVERFLOW=10
# ── Redis ─────────────────────────────────────
REDIS_URL=redis://redis:6379/0
REDIS_CACHE_TTL=3600
# ── Security ──────────────────────────────────
SECRET_KEY=change-this-to-a-random-secret-key-in-production
ACCESS_TOKEN_EXPIRE_MINUTES=30
REFRESH_TOKEN_EXPIRE_DAYS=7
# ── URLs ──────────────────────────────────────
API_URL=http://localhost:8000
FRONTEND_URL=http://localhost:3000
# Next.js dev: proxy /dealix-marketing → API (see next.config.js)
NEXT_PUBLIC_INTERNAL_API_URL=http://127.0.0.1:8000
NEXT_PUBLIC_API_URL=http://localhost:8000
WEBHOOK_BASE_URL=http://localhost:8000/api/v1/webhooks
# Marketing static files (empty = auto path to repo salesflow-saas). Docker: MARKETING_STATIC_ROOT=/salesflow
MARKETING_STATIC_ENABLED=true
MARKETING_STATIC_ROOT=
# ── LLM Providers (AI Engine) ─────────────────
# Primary: OpenAI
OPENAI_API_KEY=sk-your-openai-key
OPENAI_MODEL=gpt-4o
OPENAI_EMBEDDING_MODEL=text-embedding-3-small
OPENAI_MAX_TOKENS=4096
OPENAI_TEMPERATURE=0.7
# Secondary: Groq (fast inference)
GROQ_API_KEY=gsk_your-groq-key
GROQ_MODEL=llama-3.3-70b-versatile
GROQ_MAX_TOKENS=4096
# Fallback: Ollama (local)
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=qwen2.5:7b
# LLM Strategy
LLM_PRIMARY_PROVIDER=openai
LLM_FALLBACK_PROVIDER=groq
LLM_CACHE_ENABLED=true
LLM_RATE_LIMIT_RPM=60
# ── WhatsApp Business API ─────────────────────
WHATSAPP_API_TOKEN=
WHATSAPP_PHONE_NUMBER_ID=
WHATSAPP_BUSINESS_ACCOUNT_ID=
WHATSAPP_VERIFY_TOKEN=
WHATSAPP_API_VERSION=v21.0
# ── Email ─────────────────────────────────────
EMAIL_PROVIDER=smtp
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=
SMTP_PASSWORD=
SENDGRID_API_KEY=
EMAIL_FROM_NAME=Dealix
EMAIL_FROM_ADDRESS=noreply@dealix.sa
# ── SMS (Unifonic - Saudi) ────────────────────
UNIFONIC_APP_SID=
UNIFONIC_SENDER_ID=Dealix
# ── Voice AI ──────────────────────────────────
VOICE_PROVIDER=elevenlabs
ELEVENLABS_API_KEY=
ELEVENLABS_VOICE_ID=
AZURE_SPEECH_KEY=
AZURE_SPEECH_REGION=uaenorth
# ── CRM Integrations ─────────────────────────
# Salesforce
SALESFORCE_CLIENT_ID=
SALESFORCE_CLIENT_SECRET=
SALESFORCE_REDIRECT_URI=
# HubSpot
HUBSPOT_CLIENT_ID=
HUBSPOT_CLIENT_SECRET=
HUBSPOT_API_KEY=
# ── Calendar ──────────────────────────────────
GOOGLE_CALENDAR_CREDENTIALS=
MICROSOFT_CLIENT_ID=
MICROSOFT_CLIENT_SECRET=
# ── Payment (Moyasar - Saudi) ─────────────────
PAYMENT_PROVIDER=moyasar
MOYASAR_API_KEY=
MOYASAR_PUBLISHABLE_KEY=
MOYASAR_SECRET_KEY=
MOYASAR_WEBHOOK_SECRET=
STRIPE_SECRET_KEY=
STRIPE_PUBLISHABLE_KEY=
# ── Analytics (PostHog) ──────────────────────
POSTHOG_API_KEY=
POSTHOG_HOST=https://eu.i.posthog.com
# ── DLQ Configuration ───────────────────────
DLQ_MAX_RETRIES=5
DLQ_DRAIN_BATCH_SIZE=10
# ── Calendly ─────────────────────────────────
CALENDLY_PAT=
CALENDLY_WEBHOOK_SECRET=
# ── Agent Configuration ───────────────────────
AGENT_PROMPTS_DIR=ai-agents/prompts
AGENT_MAX_CONCURRENT=10
AGENT_DEFAULT_TIMEOUT=60
AGENT_ESCALATION_ENABLED=true