=== Teste E2E: cadastro de processo — PASSO 3 (proposta, sem gravar) === ▶ 1. Proposta completa: resumo com TODOS os dados ✅ pré-condição: o nome de teste não existe na área ✅ ok, sem avisos, com envio de e-mail — [] ✅ resumo com os 7 itens, na ordem da tela — ["contexto","scope","inventario_dados","nome","nome_responsavel","email_responsavel","envio_email"] ✅ contexto e cliente idênticos à fonte — DEMO - LGPD 13709 (1A1 Projetos) ✅ caminho da área idêntico ao da fonte (raiz > ... > área) — DEMO - LGPD 13709 > Seg. Informações ✅ formulário = nome da fonte + rótulo do tipo (InventarioDados::LISTA_TIPO) — ROPA (ROPA) ✅ nome, responsável e e-mail exatamente como informados ✅ explica que o responsável receberá e-mail com o link — Sim: o responsável receberá um e-mail com o link para responder o inventário (maria@example.com) ✅ os dados da proposta são os mesmos da validação ✅ a resposta não expõe token nem segredo ▶ 2. Sem e-mail, sem responsável, sem nome ✅ responsável sem e-mail → não envia e-mail (contrato 3.4) — Não: sem e-mail do responsável, nenhum e-mail será enviado ✅ sem nem responsável nem nome: os 3 aparecem como null e o resumo continua completo ✅ sem nome não há checagem de repetido (aviso vazio) ▶ 3. Dados inválidos: a proposta não sai, os erros são os da validação ✅ ok=false, sem resumo e sem avisos ✅ erros idênticos aos de valida() — ["email_responsavel:regra_do_model"] ✅ contexto de OUTRO cliente → só contexto_invalido, sem resumo nem avisos (nada vaza) — ["contexto_id:contexto_invalido"] ▶ 4. Nome repetido na mesma área: avisa, não bloqueia ✅ pré-condição: já existem processos ativos "SINGULAR" na área 2835 — 3 ✅ a proposta sai (o model permite nome repetido) ✅ aviso nome_repetido presente — ["nome_repetido"] ✅ total = o do SQL independente — 3 vs 3 ✅ lista os processos existentes (ids idênticos à fonte, até o limite) — [8567,8590,8612] ✅ cada existente traz nome e rótulo do tipo ✅ a mensagem cita o nome e a quantidade — Já existe(m) 3 processo(s) ativo(s) com o nome "SINGULAR" nesta área. O sistema permite nomes repetidos; confirme se quer cadastrar mesmo assim. ✅ mesmo nome com outras maiúsculas e espaços também é detectado (como o banco compara) ▶ 5. Quando NÃO é repetido ✅ pré-condição: o nome não existe ativo na outra área ✅ mesmo nome em OUTRA área → sem aviso ✅ pré-condição: só existe INATIVO com esse nome na área 2130 ✅ processo INATIVO com o mesmo nome não conta como repetido — [] ▶ 6. Somente leitura ✅ a classe não contém nenhuma instrução de escrita ✅ nenhuma tabela mudou (inventario_scope, scope, log, agent_acao_pendente, inventario_dados) — {"inventario_scope":83818,"scope":10641,"log":2480628,"agent_acao_pendente":0,"inventario_dados":62} → {"inventario_scope":83818,"scope":10641,"log":2480628,"agent_acao_pendente":0,"inventario_dados":62} === Resultado: 30 ok, 0 falha(s) ===