# VAPORA Enterprise Deployment Mode Defaults
# Production configuration with high availability, security, and cost optimization

{
  deployment_mode = "enterprise",

  backend = {
    host = "0.0.0.0",
    port = 8001,
    workers = 8,
    request_timeout = 30000,
    max_connections = 2000,
    graceful_shutdown = true,
    shutdown_timeout = 60,
    auth.jwt_ttl = 3600,
    auth.mfa_enabled = true,
    auth.audit_logging = true,
    database.pool_size = 50,
    storage.path = "/var/lib/vapora/storage",
    cache.enabled = true,
    cache.ttl = 3600,
    cache.max_size = 536870912,
  },

  agents = {
    host = "0.0.0.0",
    port = 8002,
    max_instances = 50,
    heartbeat_interval = 60,
    learning.enabled = true,
    learning.recency_window_days = 14,
    learning.recency_multiplier = 3.5,
    knowledge_graph.enabled = true,
    knowledge_graph.retention_days = 90,
    knowledge_graph.causal_reasoning = true,
    knowledge_graph.similarity_search = true,
    swarm.enabled = true,
    swarm.load_balancing_strategy = "weighted",
    nats.enabled = true,
    nats.url = "nats://nats-cluster:4222",
    registry.persistence = true,
  },

  llm_router = {
    host = "0.0.0.0",
    port = 8003,
    cost_tracking.enabled = true,
    cost_tracking.track_tokens = true,
    cost_tracking.track_latency = true,
    cost_tracking.reporting_interval = 600,
    budget_enforcement.enabled = true,
    budget_enforcement.window = "monthly",
    budget_enforcement.near_threshold_percent = 75,
    budget_enforcement.auto_fallback = true,
    budget_enforcement.detailed_tracking = true,
    budget_enforcement.role_limits = {
      architect_cents = 1500000,
      developer_cents = 1000000,
      reviewer_cents = 600000,
      testing_cents = 400000,
    },
    providers.claude_enabled = true,
    providers.openai_enabled = true,
    providers.gemini_enabled = true,
    providers.ollama_enabled = true,
    routing.strategy = "cost_aware",
    routing.fallback_chain = ["claude-opus", "gpt-4", "gemini-pro", "ollama"],
    routing.retry_attempts = 5,
    routing.retry_delay = 500,
    routing.request_timeout = 120,
  },

  frontend = {
    host = "0.0.0.0",
    port = 3000,
    enable_wasm = true,
  },

  database = {
    url = "ws://surrealdb-cluster:8000",
    pool_size = 100,
  },

  nats = {
    enabled = true,
    url = "nats://nats-cluster:4222",
    timeout = 120,
  },

  monitoring = {
    prometheus_enabled = true,
    log_level = "info",
    tracing_enabled = true,
    metrics_path = "/metrics",
  },

  security = {
    tls_enabled = true,
    tls_cert_path = "/etc/vapora/certs/tls.crt",
    tls_key_path = "/etc/vapora/certs/tls.key",
  },

  storage = {
    base_path = "/var/lib/vapora",
    backup_enabled = true,
    backup_interval = 6,
  },
}
