require "active_support/core_ext/integer/time" Rails.application.configure do config.enable_reloading = true config.eager_load = false # ⚠️ SEGURANÇA — a página de debug do Rails ("Action Controller: Exception # caught") mostra parâmetros, SESSÃO, cookies, IP do cliente, caminho do # servidor e o trace inteiro. O servidor de teste/produção sobe com # RAILS_ENV=development (docker-compose.yml), então esse painel estava indo # para a tela de qualquer pessoa que provocasse um erro. # # Agora o detalhe só aparece quando ALGUÉM PEDE explicitamente, na máquina de # desenvolvimento: `ERROS_DETALHADOS=true` no .env local. Sem a variável, o # visitante recebe a página estática de public/500.html. config.consider_all_requests_local = ENV['ERROS_DETALHADOS'] == 'true' # Sem isso, com consider_all_requests_local=false o Rails ainda tentaria # renderizar o painel para requisições vindas de localhost. config.action_dispatch.show_exceptions = :all config.server_timing = true config.cache_store = :memory_store config.active_storage.service = :local if defined?(ActiveStorage) config.action_mailer.raise_delivery_errors = false config.action_mailer.perform_caching = false config.action_mailer.default_url_options = { host: ENV.fetch("APP_HOST", "localhost:3000") } config.active_support.deprecation = :log config.active_record.migration_error = :page_load config.active_record.verbose_query_logs = true config.assets.quiet = true if config.respond_to?(:assets) config.hosts.clear # aceita qualquer host em dev (Docker/IP local) end