"""
Arquivo: passenger_wsgi.py
"""
import os
import sys
import traceback

# Trava de threads numéricas para evitar sobrecarga no cPanel (LVE)
os.environ["OPENBLAS_NUM_THREADS"] = "1"
os.environ["OMP_NUM_THREADS"] = "1"
os.environ["MKL_NUM_THREADS"] = "1"
os.environ["NUMEXPR_NUM_THREADS"] = "1"
os.environ["VECLIB_MAXIMUM_THREADS"] = "1"

sys.path.insert(0, os.path.dirname(__file__))

try:
    from app import app as application
except Exception as e:
    # Captura a árvore completa do erro (linha, arquivo, motivo)
    erro_completo = traceback.format_exc()
    
    # Exibe o erro gigante na tela do navegador em vez de um 503 invisível!
    def application(environ, start_response):
        start_response('500 Internal Server Error', [('Content-Type', 'text/plain')])
        mensagem = f"Erro critico ao carregar o aplicativo:\n\n{erro_completo}"
        return [mensagem.encode('utf-8')]