| Sem WSL | Preparar sistema, pedir reinício e retomar a etapa pendente. | VM limpa; UAC e retomada observados. |
| Ubuntu existente | Mostrar alterações e instalar apenas após confirmação. | VM com projetos, ferramentas e configurações preexistentes. |
| Múltiplas distribuições | Escolher explicitamente a compatível; preservar a padrão. | Teste Windows com duas distribuições. |
| Distribuição não suportada | Explicar bloqueio; oferecer caminho compatível sem remover a atual. | Estado bloqueado no instalador real. |
| Virtualização indisponível | Parar antes de alterar o sistema; explicar próximo passo. | VM ou host com recurso desativado. |
| Rede falha / checksum inválido | Não executar o arquivo; permitir nova tentativa verificável. | Injeção de falha; checksum adulterado. |
| Instalação interrompida / repetida | Reavaliar estado sem duplicar tarefas ou alterar dados. | Interrupção em cada estágio; segunda execução. |
| CLI já instalado | Reutilizar, com conta nativa intacta. | Teste com CLI real e configuração preexistente. |
| Nenhum CLI / login recusado | PiCode abre; instalar ou conectar depois; próxima ação visível. | Primeiro uso sem CLI e cancelamento do login. |
| Projeto vazio | Convidar a selecionar projeto ou explorar antes. | Estado vazio e caminho sem projeto. |
| Atualização / falha parcial | Manter versões compatíveis; recuperar execução anterior quando seguro. | Atualização dos três componentes e falhas por etapa. |
| Desinstalação | Remover PiCode; preservar projetos, CLIs e distribuição adotada. | Comparação de arquivos antes/depois. |