O bloco dev
O bloco dev controla o watcher de desenvolvimento local que reinicia o processo do bot quando os arquivos-fonte mudam. Todos os campos são opcionais. O entrypoint padrão é src/main.ts, e o debounce padrão é de 300 milissegundos; a maioria dos projetos só precisa ajustar debounce para evitar tempestades de reinicialização durante salvamentos rápidos.
import { defineConfig } from '@spraxium/core';
export default defineConfig({
dev: {
entrypoint: 'src/main.ts',
debounce: 500,
include: ['locales'],
exclude: ['.spraxium/**', 'dist/**'],
},
});| Campo | Tipo | Padrão | Finalidade |
|---|---|---|---|
| entrypoint | string | src/main.ts | Arquivo executado pelo watcher ao reiniciar o processo. |
| include | string[] | [] | Diretórios adicionais que disparam reinicializações quando mudam. |
| exclude | string[] | [] | Padrões glob que devem ser ignorados durante a observação de arquivos. |
| debounce | number | 300 | Milissegundos de espera após uma mudança antes de disparar a reinicialização. |
Exclua diretórios gerados
Sempre adicione .spraxium/** e dist/** à lista exclude. Esses diretórios mudam durante operações de build, e observá-los causa loops infinitos de reinicialização que desestabilizam o processo do watcher.
Nomes de arquivo de config aceitos
O framework procura seu arquivo de configuração usando a seguinte ordem de prioridade. Em modo de produção, a saída compilada é verificada primeiro; em todos os outros modos, o código-fonte TypeScript tem precedência.
| Prioridade | Path | Modo |
|---|---|---|
| 1 | .spraxium/dist/spraxium.config.js | Somente produção |
| 2 | dist/spraxium.config.js | Somente produção |
| 3 | spraxium.config.ts | Todos os modos |
| 4 | spraxium.config.js | Todos os modos |
| 5 | spraxium.config.mjs | Todos os modos |
Resolução de ambiente
NODE_ENV é lido uma vez na inicialização e mapeado para um objeto ConfigEnv. Esse valor nunca muda depois que a config é carregada, então toda ramificação baseada em ambiente precisa acontecer dentro do callback de defineConfig.
| NODE_ENV | Modo | Flags ativas |
|---|---|---|
| production | production | isProd = true |
| neutral, staging, test | neutral | isNeutral = true |
| Qualquer outro valor | development | isDev = true |