Matrizes de cálculo dos percentuais
Cada entrada diz o que a figura mede, a fórmula, as entradas, o denominador, a janela, as limitações e como reproduzi-la. “Gerado” significa que os números vêm do código; “manual” significa que uma pessoa mantém a figura e registra a data em que a conferiu.
Adequação estimada (%)
Gerado do códigoQuanto um caminho de visto combina com as respostas do seu perfil, numa escala de 0 a 100. Não é uma chance de aprovação.
Fórmula
pontos = base(40) + Σ fatores que se aplicam → arredondar e limitar a 0–100 → subtrair a penalidade de família (quando a rota tem efeito de família) → se um requisito obrigatório não for atendido, limitar a 35 → arredondar e limitar outra vez a 0–100. A ordem das operações é a do código, incluindo o limite intermediário aplicado antes do desconto de família.
Entradas e fonte
- Respostas do onboarding: oferta de trabalho, formação, categoria profissional, anos de experiência, idiomas, reserva financeira, estado civil/filhos, visto negado antes.
- Tabela de pesos do produto (gerada abaixo), por rota.
- Listas oficiais usadas como sinal: grupos ISCO em falta (§18g/§20b AufenthG) na Alemanha, setores da cota do decreto flussi na Itália, adequação estrutural do H-1B nos EUA.
Denominador
Escala fixa de 0 a 100 definida pelo produto — não é uma divisão entre dois valores medidos.
Janela de coleta
Calculado no momento em que a página é carregada, a partir do perfil salvo na sua conta. Não tem janela de tempo.
Limitações
- É um sinal de adequação ao seu perfil, não uma probabilidade de aprovação nem uma previsão de decisão consular.
- Os pesos são escolhas do produto, ancoradas em fatores que fontes oficiais dizem importar; a fonte define *o que* conta e os limites, não quantos pontos vale.
- O onboarding não pergunta tudo: reconhecimento parcial de diploma, estadia prévia e outros pontos oficiais não entram.
- O resultado é arredondado e limitado, portanto perfis fortes podem empatar em 100.
Onde aparece: /visa-options (“Adequação estimada”, por caminho.) · /compare (Mesma pontuação, lado a lado.) · /all-destinations (Pontuação do melhor caminho de cada destino.) · /plan (Pontuação do caminho selecionado.) · /dashboard (“Caminho atual”, no cartão da jornada.) · PDF export (Mostrado como pontuação/100.)
Como reproduzir: npm run wiki:generate && npx vitest run src/wiki/applicationWiki.test.ts
Pontos oficiais (Chancenkarte)
Gerado do códigoQuantos dos pontos oficiais da rota de pontos alemã o seu perfil já soma, sobre o mínimo de 6 exigido.
Fórmula
pontos = Σ (grupo oficial em falta: 1) + (experiência: 3 se ≥5 anos, 2 se ≥2) + (alemão: 3 em B2, 2 em B1, 1 em A2) + (inglês: 1 em C1+) + (idade: 2 se <35, 1 se <40); mostrado como pontos/6.
Entradas e fonte
- Categoria profissional (lista ISCO em falta), anos de experiência, nível de alemão e inglês, idade — todos do onboarding.
- Para entrar na rota de pontos é preciso cumprir o pré-requisito de idioma: alemão A1 ou inglês B2.
Denominador
Mínimo legal de 6 pontos da rota de pontos; a barra usa a razão pontos/6, sem passar do topo da escala.
Janela de coleta
Sem janela de tempo: reflete o perfil salvo quando a página é aberta.
Limitações
- É um limite inferior: reconhecimento parcial (4), estadia prévia de 6+ meses (1) e cônjuge também elegível (1) valem pontos que o onboarding não coleta — são valores citados da própria regra alemã, não calculados pela aplicação, e não aparecem nesta matriz.
- Os pontos só entram na adequação quando um dos dois idiomas do pré-requisito é cumprido; caso contrário, só a rota direta permanece.
Onde aparece: /visa-options (Etiqueta “Pontos oficiais: n/6”.) · /dashboard (Número grande no cartão da jornada, com a barra pontos/6.)
Como reproduzir: npm run wiki:generate && npx vitest run src/wiki/applicationWiki.test.ts
Progresso da checklist (%)
Gerado do códigoPercentual de documentos aplicáveis à sua rota que você já marcou como “pronto”.
Fórmula
progresso = arredondar(prontos / documentos aplicáveis × 100); o texto ao lado mostra “prontos de total”.
Entradas e fonte
- Lista de documentos da rota selecionada (catálogo do produto, com fonte oficial por documento quando há).
- Status que você mesmo marca em cada documento (pendente, em andamento, pronto, não se aplica, precisa revisão).
Denominador
Todos os documentos que o catálogo associa à rota selecionada, incluindo os condicionais — “não se aplica” conta no denominador.
Janela de coleta
Estado atual da sua conta, sem janela de tempo.
Limitações
- Mede o que você marcou, não a validade real dos documentos.
- Sem rota selecionada a lista fica vazia e o percentual é 0, por definição.
- Documentos condicionais que não se aplicam ao seu caso continuam no denominador e podem impedir 100%.
Onde aparece: /checklist (“n de m documentos prontos” e a barra.) · /dashboard (Cartão de progresso documental e a barra do cabeçalho.)
Como reproduzir: npm run wiki:generate && npx vitest run src/wiki/applicationWiki.test.ts
Progresso da linha do tempo (%)
Gerado do códigoPercentual das etapas da linha do tempo do seu processo que você marcou como concluídas.
Fórmula
progresso = arredondar(etapas concluídas / etapas aplicáveis × 100).
Entradas e fonte
- Etapas projetadas para o seu país de destino (mais uma etapa de família quando você leva família e a rota não é de reunião familiar).
- Status que você marca em cada etapa (pendente, em andamento, concluída, bloqueada).
Denominador
Número de etapas que o catálogo projeta para o seu destino — a mesma lista que a página mostra.
Janela de coleta
Estado atual da sua conta, sem janela de tempo.
Limitações
- As etapas descrevem um processo típico; o seu caso pode ter etapas a mais ou a menos.
- Etapas bloqueadas contam como não concluídas.
Onde aparece: /timeline (Percentual e barra no topo.) · AppShell (todas as páginas) (Barra de progresso do processo no cabeçalho.)
Como reproduzir: npm run wiki:generate && npx vitest run src/wiki/applicationWiki.test.ts
Termômetro de demanda (alto/médio/baixo) e campo de estudo (lista STEM do DHS)
Gerado do códigoSe a sua categoria profissional figura numa lista oficial de escassez do destino — e, numa segunda dimensão separada, se o curso típico da sua categoria está na lista STEM do DHS. Nenhuma das duas é uma nota, e nenhuma é uma probabilidade.
Fórmula
Escassez — Alemanha: grupo ISCO estatutário em falta → alto; correspondência parcial (cargos gerenciais específicos) → médio; categoria verificada sem correspondência → baixo. Itália: setor nomeado na cota do decreto flussi → alto; parcial → médio; sem correspondência → baixo. EUA e Paraguai: nenhum mecanismo de escassez se aplica às rotas codificadas, então cada linha desses dois destinos é “não avaliado” acompanhada da fonte que sustenta essa ausência. Campo de estudo (rota de estudante dos EUA): a série típica inteira consta da lista STEM do DHS → alto; constam apenas códigos específicos da série → médio; nenhum código correspondente → baixo. Essa segunda dimensão não é escassez e não tem nota.
Entradas e fonte
- Sua categoria profissional declarada no onboarding.
- Lista estatutária de escassez alemã (§18g/§20b AufenthG e o anexo que fixa os grupos ISCO) e a lista de setores da cota do decreto flussi italiano.
- Para as rotas dos EUA, os documentos oficiais que estabelecem que nenhuma lista de escassez se aplica a elas: as páginas do USCIS sobre ocupações especializadas do H-1B e sobre a temporada de cotas, o Policy Manual Vol. 6 Parte E Cap. 7 (Schedule A, que só vale para PERM/EB-2/EB-3) e a página de imigração familiar do Departamento de Estado.
- Para o Paraguai, a Ley 6.984/2022, as páginas da DNM (residência permanente e investidores pela SUACE) e o Acordo de Residência do MERCOSUL — nenhum deles usa ocupação, lista setorial ou cota por profissão.
- Para a dimensão de campo de estudo, a lista de programas de estudo STEM designados do DHS/ICE e a página de códigos CIP elegíveis do próprio DHS, ambas lidas em 2026-10-14.
Denominador
Não é percentual: são duas classificações de três níveis — uma sobre a lista oficial de escassez do destino, outra sobre a lista STEM do DHS — cada uma podendo ser “não avaliado”.
Janela de coleta
Cada lista citada tem data própria. A data de leitura de cada fonte aparece na coluna “fonte” das duas tabelas (todas lidas em 2026-10-14); a lista estatutária alemã e a cota anual italiana mudam em ciclos diferentes.
Limitações
- Cobre apenas os mecanismos acima. Onde não existe mecanismo — todas as rotas codificadas dos EUA e do Paraguai — a linha diz “não avaliado” com a fonte que confirma a ausência: isso é uma constatação verificada, e não um “baixo”.
- As rotas dos EUA não têm nenhum critério de ocupação ou de escassez no próprio visto: o teste do H-1B é sobre a posição (exigir diploma em especialidade específica), não sobre uma lista de profissões, e a seleção da cota roda pelo salário da posição.
- A dimensão de campo de estudo não é escassez nem critério de visto: ela descreve um benefício posterior — a extensão de OPT de 24 meses para estudantes STEM depois da formatura, um período de trabalho pós-curso mais longo. A lista nomeia campos de estudo (códigos CIP), nunca demanda.
- O relatório anual de escassez alemão pode divergir da lista estatutária; a etiqueta segue a lista legal, e a divergência é explicada no texto quando ocorre.
- Nada aqui é probabilidade de aprovação nem garantia de oferta de emprego, e nada substitui o USCIS, o DOL, o Departamento de Estado, as autoridades alemãs e italianas ou a DNM paraguaia.
Onde aparece: /all-destinations (Etiqueta rotulada, separada da pontuação.)
Como reproduzir: npm run wiki:generate && npx vitest run src/wiki/applicationWiki.test.ts
Progresso de envio (%)
Manualmente mantidoconferido em 2026-10-11Quanto de um arquivo já foi enviado para o seu próprio armazenamento, arquivo por arquivo.
Fórmula
progresso = arredondar(bytes enviados / bytes totais × 100), do evento de progresso do envio.
Entradas e fonte
- O navegador reporta os bytes enviados durante o envio do próprio arquivo.
Denominador
Tamanho do arquivo que está sendo enviado.
Janela de coleta
Duração do envio; é um indicador de progresso, não um dado guardado.
Limitações
- Não há retomada parcial: uma conexão interrompida recomeça o envio.
- Falha de envio mostra a barra cheia em vermelho; não indica arquivo corrompido no seu armazenamento.
Onde aparece: /plan (Barra por arquivo durante o envio.)
Como reproduzir: Verificação manual na página do seu plano (não há caminho automatizado: depende do navegador e da sua conta de armazenamento).
Estimativas de prazo (meses)
Manualmente mantidoconferido em 2026-10-11Uma estimativa de tempo de processamento por rota, quando uma fonte oficial publica um prazo.
Fórmula
Não há fórmula: o catálogo guarda por rota uma frase oficial datada e, separadamente, um número de meses. A etiqueta mostra a frase datada quando ela existe; sem frase, mostra “~N meses”; sem nenhum dos dois, não mostra nada.
Entradas e fonte
- Dois campos distintos por rota no catálogo: uma frase oficial datada e um número de meses. Na Alemanha, as 6 rotas trazem a frase — “cerca de seis semanas após a entrega da documentação completa”, fonte consultada em 09/09/2026 — e 0 delas mostram um número de meses: o que falta é o número, não a fonte. Nas rotas italianas há número de meses em 4 de 4.
Denominador
Não é percentual: é uma contagem de meses, ou um texto sem número.
Janela de coleta
Vale a partir da data da fonte citada na rota; sem janela própria.
Limitações
- Prazos consulares variam por posto e por época; a estimativa não é um compromisso.
- Onde não há fonte, o produto não mostra número — por decisão, e não por esquecimento.
Onde aparece: /visa-options (Etiqueta “~N meses” ou o texto oficial datado.) · /compare, /all-destinations (Mesma etiqueta, por rota.)
Como reproduzir: Revisão manual do catálogo contra as fontes citadas por rota (os números não são deriváveis do código).