# Staging Environment Configuration
# Settings optimized for staging deployment - production-like but with relaxed security for testing

[server]
environment = "staging"
log_level = "debug"
protocol = "https"
host = "0.0.0.0"
port = 443

[app]
debug = true
enable_metrics = true
enable_health_check = true
enable_compression = true

[cors]
allowed_origins = ["https://staging.yourdomain.com", "https://staging-api.yourdomain.com"]

[session]
secret = "@encrypted_staging_session_secret"
cookie_secure = true

[database]
url = "postgresql://username:password@localhost:5432/rustelo_staging"
max_connections = 15
min_connections = 3

[logging]
level = "debug"
file_path = "logs/staging_app.log"
enable_console = true
enable_file = true

[features]
auth = true
tls = true
content_db = true
two_factor_auth = false

[build]
features = ["auth", "content-db", "crypto", "email", "metrics", "tls"]

[security]
rate_limit_requests = 500
rate_limit_window = 60
bcrypt_cost = 12

[tls]
enabled = true
cert_path = "certs/staging.crt"
key_path = "certs/staging.key"

[metrics]
enabled = true
collection_interval = 30

[auth]
max_login_attempts = 5
lockout_duration = 900
session_timeout = 3600
require_email_verification = false

[email]
enabled = true
default_provider = "console"
