Orbit
Resolvendo Compilações Falhadas
When an Orbit build fails, the deployment detail page gives you the full log plus a categorised failure summary and a suggested fix. This guide walks through reading that page, the failures Orbit…
Resolução de Builds Falhados
Quando um build do Kapsule Orbit falha, a página de detalhes da implantação fornece o log completo, um resumo de falha categorizado e uma correção sugerida. Este guia o orienta na leitura dessa página, as falhas que o Kapsule Orbit reconhece por nome, as que não reconhece, e o que fazer quando um build é bem-sucedido, mas o site ainda está incorreto.
Leitura da Falha
- Abra seu projeto no Kapsule Orbit.
- Abra a aba Implantações.
- Clique na implantação com status Falhado.
- Leia o resumo da falha acima do log primeiro, depois o próprio log.

O Kapsule Orbit atribui a cada falha uma categoria: Memória insuficiente, Erro de compilação, Falha de teste, Erro de lint, Erro de instalação, Erro de rede, Tempo limite, ou Erro desconhecido. A categoria informa qual parte do pipeline você deve examinar antes de ler uma única linha do log.
Também há um botão Obter diagnóstico de IA. Ele lê as últimas 120 linhas do log junto com a estrutura detectada e a categoria de falha, e retorna uma explicação em linguagem clara.
O diagnóstico é rotulado como Gerado por IA, verifique antes de agir. Trate-o como um excelente indicador da linha correta do log, não como autoridade em sua base de código. Leia a linha a que se refere antes de alterar qualquer coisa.
Se o build nunca iniciou e está preso em Enfileirado, vá para a seção sobre builds enfileirados abaixo.
Falhas que o Kapsule Orbit Reconhece por Nome
Estas vêm com uma correção sugerida específica na página de implantação.
| O que o Kapsule Orbit detecta | O que significa | Correção |
|---|---|---|
| Módulo ausente | Uma importação aponta para um pacote que não está instalado | Adicione o pacote a package.json e faça commit, ou corrija o erro no caminho de importação |
Conflito ERESOLVE | npm não consegue satisfazer uma dependência entre pares | Resolva o conflito em package.json, ou adicione --legacy-peer-deps ao seu comando de instalação em Configurações |
| Erro TypeScript | A verificação de tipo falhou durante o build | Corrija os erros listados. Para problemas de tipo de terceiros, skipLibCheck: true em tsconfig.json |
| Memória insuficiente | O build excedeu a RAM da máquina de build | Adicione NODE_OPTIONS=--max-old-space-size=2048 como uma variável de ambiente, ou mude para um plano com uma máquina de build maior |
| Disco de build cheio | O build preencheu seu disco | Procure por um node_modules ou artefato inesperadamente grande, ou mude para um plano com um disco de build maior |
| Build com tempo limite | O build atingiu o limite de 30 minutos | Ative o cache de build, reduza o tamanho do bundle, ou encontre o que está pendurado |
| Pacote não encontrado (404) | Uma dependência não existe com esse nome ou versão | Verifique package.json para um erro de digitação, ou confirme que o pacote foi publicado |
| Erros ESLint | Erros de lint bloquearam o build | Corrija-os, ou interrompa o lint falhando no build em sua configuração de estrutura |
| Erro de sintaxe | Fonte não analisável | Parêntese ausente, string não fechada, ou sintaxe que sua versão de Node não suporta |
| Arquivo não encontrado | Um arquivo referenciado não está no repositório | Confirme que ele foi feito commit e verifique a capitalização do caminho |
| Arquivo de travamento desatualizado | O arquivo de travamento não corresponde a package.json | Execute a instalação de seu gerenciador de pacotes localmente e faça commit do arquivo de travamento atualizado |
O arquivo de travamento desatualizado é a falha de primeira implantação mais comum e a mais confusa, porque nunca acontece localmente. npm ci, yarn install --frozen-lockfile e pnpm install --frozen-lockfile recusam-se a prosseguir quando o arquivo de travamento discorda de package.json. Regenere o arquivo de travamento localmente e faça commit dele.
Falhas Comuns Por Fase
Falha na Instalação de Dependência
A fase de Instalação resultou em erro.
- Gerenciador de pacotes incorreto. O Kapsule Orbit escolhe npm, yarn ou pnpm a partir de seu arquivo de travamento. Se mais de um arquivo de travamento for feito commit, a escolha pode não ser a que você espera. Delete os que você não está usando, ou defina explicitamente Comando de instalação em Configurações.
- Registro privado. Se uma dependência vem de um registro privado, o token de autenticação deve estar disponível no momento do build como uma variável de ambiente, e seu
.npmrcdeve referenciá-lo. - Incompatibilidade de versão do Node.js. Alguns pacotes requerem uma versão mínima do Node. Defina Versão do Node.js em Configurações para o número de versão principal:
18,20ou22. - Memória insuficiente em um monorepo grande. Use
npm ciem vez denpm install, e considere um plano com uma máquina de build maior.
Falha do Comando de Build
A fase de Build resultou em erro.
- Erros TypeScript ou lint. O Kapsule Orbit executa seu comando de build exatamente como escrito. Se seu build falhar localmente, falhará aqui também.
- Variável de ambiente de tempo de build ausente. Uma variável lida durante o build deve existir antes de o build ser executado, não apenas em tempo de execução. Adicione-a na aba Variáveis de ambiente e reimplante. Uma variável de tempo de build adicionada após uma implantação não se aplica retroativamente a ela.
- Diretório raiz incorreto em um monorepo. Defina Diretório raiz em Configurações para o caminho do app, por exemplo
apps/web.
Build Com Tempo Limite
Builds são abortados em 30 minutos de tempo de relógio em todos os planos. Se o seu consistentemente se aproxima disso:
- Verifique o log para um processo aguardando entrada. Um build que solicita entrada é um build que trava.
- Evite
--legacy-peer-depsem uma árvore de dependência grande a menos que você precise dela. - Certifique-se de que o cache de build está sendo usado. Os planos Liftoff e Apex incluem isso; a página de implantação mostra Cache hit ou Cold build.
- Mude para um plano com mais vCPU de build. Veja Limites do Plano do Kapsule Orbit.
O Build Nunca Inicia
Uma implantação presa em Enfileirado está aguardando um slot de build. A página de detalhes mostra sua posição na fila e quantos de seus slots de build simultâneos estão em uso, e inicia automaticamente o build quando um se libera. Launch e Liftoff permitem um build simultâneo; Apex permite três.
Você pode ver tudo em andamento em sua conta em Kapsule Orbit, depois Fila.
Se uma implantação fica enfileirada sem nada mais em execução, é mais provável que esteja bloqueada do que enfileirada. Verifique se há:
- Aguardando aprovação, se Exigir aprovação para produção está ativado
- Um bloqueio de implantação no projeto
- Um cronograma de congelamento de implantação bloqueando a hora ou dia atual
- Verificações necessárias de CI aguardando seu pipeline
- Exigir sucesso de staging antes de produção aguardando uma implantação de staging do mesmo commit
O Build Foi Ignorado Inteiramente
Se um push não produziu nenhuma implantação, foi provavelmente filtrado propositalmente:
- Caminhos ignorados: cada arquivo no push correspondeu a um padrão como
*.mdoudocs/** - Padrões de ignorar ramo: o ramo correspondeu a algo como
dependabot/* - Diretório raiz: nada no push tocou o subdiretório do monorepo para este projeto
- Visualizações de ramo desativadas, e o push não foi para produção ou staging
Build Com Sucesso Mas o Site Está Incorreto
Um build verde e um site quebrado é quase sempre um problema de configuração em vez de um problema de código.
404 em cada página. O Diretório de saída está errado: o Kapsule Orbit publicou uma pasta que não é sua saída de build. Verifique o que seu build realmente escreve. Os valores comuns são dist, .next, out, build e .output.
404 apenas em rotas dinâmicas. O app precisa de um servidor em execução e está sendo servido como arquivos estáticos. Ative o Modo de servidor em Configurações em Tempo de execução. Isto é necessário para Next.js com SSR, Remix, Nuxt e qualquer outra coisa que não seja uma exportação estática.
Assets 404 após uma implantação, para usuários que já estavam no site. Eles carregaram a página antiga e estão solicitando URLs de bundle antigas que não existem mais. Ative a Proteção de distorção em Configurações, que mantém os artefatos do build anterior disponíveis por uma janela de retenção após uma nova implantação entrar em vigor.
Variável de ambiente é indefinida em tempo de execução. Confirme que o escopo da variável realmente cobre este ambiente, e que a implantação é posterior à alteração. A página de detalhes de implantação lista exatamente quais chaves foram injetadas em tempo de build e as compara com sua configuração atual.
As configurações de build específicas da estrutura estão em Configurando seu Comando de Build e Diretório de Saída.
Tentando Novamente
Na página de implantação falhada:
- Tentar build novamente re-executa o mesmo commit.
- Mais opções de repetição, depois Tentar novamente com cache limpo, deleta o cache de build primeiro.
Você também pode fazer com que o Kapsule Orbit tente novamente para você. Repetição automática de build em Configurações re-enfileira builds falhados causados por erros de infraestrutura, como falha de rede ou tempo limite, até três vezes. Ele deliberadamente não tenta novamente erros de código, portanto uma falha de compilação, lint ou teste nunca faz loop.
Tentar novamente com um cache limpo deleta o node_modules em cache para o ambiente e não pode ser desfeito. O próximo build depois disso será lento. Esse é o objetivo, mas não faça isso reflexivamente em um monorepo grande.
Evitar que um Build Ruim Chegue aos Usuários
Se uma implantação já entrou em vigor e quebrou algo, faça rollback em vez de tentar corrigir sob pressão. Rollback promove um artefato já compilado e leva segundos. Veja Revertendo uma Implantação.
Para parar mais implantações enquanto você investiga, clique em Bloquear implantações no projeto. As implantações disparadas por push são então ignoradas até que você desbloqueie, enquanto as implantações manuais ainda funcionam para que você possa enviar a correção.
Você também pode fazer com que o Kapsule Orbit faça isso automaticamente: Rollback automático em caso de falha restaura a última implantação íntegra quando uma implantação de produção falha, e um caminho de Verificação de integridade a restaura quando a nova implantação não responde com um 2xx dentro de 15 segundos.
Ainda Preso
Se o log simplesmente termina sem mensagem de erro, o processo de build foi provavelmente encerrado: memória insuficiente, ou a máquina de build foi recuperada. Tente novamente uma vez. Se falhar da mesma forma duas vezes, abra um ticket do KPanel ou envie um e-mail para support@kapsulehost.com e inclua a ID de implantação mostrada na página de detalhes.