import os
import sys
from pathlib import Path

BASE_DIR = Path(__file__).resolve().parent

if str(BASE_DIR) not in sys.path:
    sys.path.insert(0, str(BASE_DIR))

os.environ.setdefault("FLASK_ENV", "production")
os.environ.setdefault("PYTHONUNBUFFERED", "1")

from app import app as application

try:
    from app import init_db
    init_db()
except Exception as exc:
    log_dir = BASE_DIR / "logs"
    log_dir.mkdir(exist_ok=True)
    with open(log_dir / "startup_error.log", "a", encoding="utf-8") as f:
        f.write(str(exc) + "\n")
    raise
