# 11 — Processos automáticos

| Processo | Frequência | Trigger | Entrada | Resultado | Falha |
|----------|------------|---------|---------|-----------|-------|
| Sync ClassTrib | Diário 06:00 | `Schedule::job(SyncClassTribJob)` em `routes/console.php` | Portal/API/arquivo | Upsert `classtrib_referencia` | withoutOverlapping; erros no job |
| ConsultaSimplesJob | Sob demanda | Dispatch create/update cliente | CNPJ pessoa | Atualiza regime + diagnóstico | CNPJ≠14 aborta |
| Diagnóstico pós-SPED | Sob demanda | Fim do parse OK | Import | Pendências + prontidão + log | Erros de parse |
| Auto-resolução pendências | Sob reprocessamento | `persistirPendencias` | Conjunto atual | Status resolvida | — |
| `assinatura:gerar-cobrancas` | everyMinute (Kernel + console) | Schedule | — | **Command inexistente** | Falha operacional esperada |

## Commands

| Signature | Classe | Status |
|-----------|--------|--------|
| `classtrib:sync {--fonte=}` | `SyncClassTribCommand` | CONFIRMADO |
| `assinatura:gerar-cobrancas` | — | **NÃO EXISTE** no repo (agendado) |
| `inspire` | closure console | Demo Laravel |

## Queue

`QUEUE_CONNECTION=sync` no ambiente analisado → jobs rodam sincronamente no request/schedule, sem worker separado (**CONFIRMADO** env).
