Ir ao conteúdo
SEED engenhariaDesign System

E-mail

7. Régua de validação executada

seed-email.md v0.13 · §07seção 10 de 1707-regua-de-validacao-executada.md · MD5 7b906c57

A camada de validação da Fase 3 (445 testes jsdom + 43 verificações de render em Chrome headless) não se aplica a esta fase, e o motivo é estrutural: jsdom valida comportamento de DOM interativo, que o e-mail não tem; e o Chrome headless é o cliente de e-mail mais permissivo que existe — passar nele não prova nada sobre o Outlook.

Camada Artefato O que mede
Estática suite-email.mjs Reprova var(--, <svg>, flex/grid/position, tabela de layout sem role="presentation", <img> sem alt ou com alt ausente, <img> sem dimensão em px, <html> sem lang, ausência de preheader / color-scheme / supported-color-schemes, link sem href absoluto, fundo transparente em bloco de marca
Peso mesma suíte HTML < 80 KB (EM6) + inventário de imagens
Contraste contraste-email.py Todos os pares resolvidos, com as três categorias de piso
Render extensão da suíte de render existente 600px e 320px · com e sem imagens · dark emulado · prova grayscale
Gate humano protocolo de envio real A única camada que vê o motor Word

7.1 Matriz do gate humano#

Cliente Papel no diagnóstico
Outlook 2024 clássico (Windows) Motor do Word. É onde tudo quebra — e é o cliente dos destinatários B2B da SEED (concessionária, indústria, órgão público, licitação)
Gmail app Android Inversão forçada de dark mode
Gmail web Proxy de imagem, tratamento de <style>, fallback de fonte
Outlook.com web Regime intermediário: injeta estilos próprios com !important
Apple Mail iOS Controle — o mais permissivo. Se quebra aqui, o defeito é nosso

Inversão de equilíbrio a assumir de frente: esta é a primeira fase do projeto em que o gate humano é mais determinante que a camada automatizada. Nenhuma ferramenta disponível emula o motor Word.

Cuidado de identificação: existem dois programas chamados Outlook no Windows, e apenas o clássico serve. O "novo Outlook" usa motor de navegador e renderiza bem demais para servir de pior caso.


7.2 Ciclo de gate executado (2026-08-07 → 2026-08-08) — registro completo#

O template-base atravessou três rodadas de gate visual humano. Cinco defeitos reais foram encontrados — nenhum deles visível pelas 19 verificações automatizadas. Todos corrigidos e convertidos em teste-guarda permanente, com crédito ao gate do Rafael, conforme a regra do projeto.

# Cliente Defeito encontrado Causa Correção Guarda
1 Gmail app Android (dark forçado) Emenda de dois tons ao redor do logo O cliente inverte a cor CSS do <td> mas não inverte imagem; a placa do PNG divergiu do fundo Faixa de marca virou imagem única de borda a borda (cabecalho-seed-600@2x.png) GV1
2 Gmail app Android Corpo inteiro centralizado O align="center" do canvas externo vaza por herança (o web ignora; o app obedece) align + text-align explícitos em todo <td> de conteúdo GV2
3 Gmail app Android Blocos escuros irregulares atrás do texto Elemento sem background-color declarado recebe tratamento diferente do vizinho na inversão background-color explícito em todo h1/p GV3
4 Gmail app Android Título transbordando a caixa Auto-scaling de fonte do cliente. Registrado como hipótese na v0.2; promovido a fato quando o reenvio confirmou a correção -webkit-text-size-adjust:100% no body coberto pela revalidação
5 Outlook 2024 clássico (motor Word) Divisor ao lado do botão VML, não abaixo O motor Word ignora margin em <table> Espaçamento vertical virou linha espaçadora com height GV4

Regra unificada nascida dos defeitos 1–3: os três tinham a mesma causa — o Gmail inverte o que é CSS implícito e não toca em imagem nem no que é explícito. A régua permanente é NADA IMPLÍCITO: toda cor, alinhamento e fundo declarados; faixa de marca é imagem única; espaçamento entre blocos é linha espaçadora, nunca margin de tabela.

Regra de protocolo nascida do processo: print de e-mail encaminhado não vale como evidência de gate — o encaminhamento do Gmail descarta o <head> (metas de tema, media queries) e os comentários condicionais (VML), produzindo defeitos que não são do template. O gate exige recebimento direto na caixa do cliente testado. Aconteceu duas vezes no ciclo antes de virar regra.

Matriz efetivamente coberta: Gmail web ✅ · Gmail app Android com inversão forçada ✅ · Outlook 2024 clássico ✅ (VML do botão confirmado renderizando). Pendentes sem bloquear: Outlook.com web e Apple Mail iOS — riscos residuais baixos, cobertos na primeira oportunidade.

Diferença v0.2 → v0.3: apenas o divisor (defeito 5). Promovida sem reenvio aos clientes já aprovados, por ser correção de padrão documentado do motor Word com risco classificado como mínimo — decisão consciente, não omissão.

7.3 Promoção#

2026-08-08 — Rafael aprovou ("aprovo") a promoção a estável de: o template-base seed-email-base.html v0.3 (MD5 4fed56e13ae5c90e43ab706be9e32eb6), as réguas GV1–GV4 como teste-guarda permanente, e o protocolo de gate sem encaminhamento. A suíte suite-email.mjs acompanha com 19 verificações (MD5 a936c3f73ea7cf647386db5c0eed7b63).


Esc