APP_NAME="Audit Firm v2"
ENV="dev"
DEBUG=true

# IMPORTANT: change in production
SECRET_KEY="change-me-to-a-long-random-string"

# Cookie/security
COOKIE_SECURE=false
COOKIE_SAMESITE="lax"         # lax|strict|none
COOKIE_SESSION_NAME="af2sid"

# DB backend
DB_BACKEND="sqlite"           # sqlite|postgres

SQLITE_COMMON_PATH="./data/common.db"

ERP_PUBLIC_BASE_URL=http://localhost:8000
DEV_AUTH_OTP_PRINT=false

# Postgres placeholders (later)
PG_HOST="127.0.0.1"
PG_PORT=5432
PG_USER="postgres"
PG_PASSWORD="postgres"
PG_DB_COMMON="audit_common"

# Defaults (context fallback)
DEFAULT_TENANT_CODE="default"
DEFAULT_BRANCH_CODE="main"
DEFAULT_YEAR_CODE="2025-26"
DEFAULT_TIMEZONE="Asia/Kolkata"

# Security hardening: do not trust browser/client supplied context headers in public deployment.
# Keep false for production unless an internal proxy/test runner is explicitly trusted.
TRUST_CONTEXT_HEADERS=false
TRUST_CONTEXT_HEADER_HOSTS="127.0.0.1,localhost,::1"
# Optional shared secret for trusted internal callers. If set, caller must send
# X-AuditFirm-Context-Secret with this value before context headers are accepted.
CONTEXT_HEADER_SECRET=""

# Bootstrap admin (seeded if users table is empty)
BOOTSTRAP_ADMIN_EMAIL="admin@auditfirm.local"
BOOTSTRAP_ADMIN_PASSWORD="ChangeMe@123"

# JWT for API clients (mobile/apps/integrations)
JWT_ISSUER="audit_firm_v2"
JWT_AUDIENCE="audit_firm_clients"
JWT_ACCESS_MINUTES=15
JWT_REFRESH_DAYS=30

# Coolify API integration for System Admin domain sync
# Enable API in Coolify first and create a token with write permission.
COOLIFY_API_BASE_URL="https://coolify.example.com/api/v1"
COOLIFY_API_TOKEN=""
COOLIFY_ERP_APPLICATION_UUID=""
COOLIFY_VERIFY_TLS=true
