Commit graph

3 commits

Author SHA1 Message Date
Francisco Solla
438ac727fe fix(C139): e2e campaignContacts não vaza contatos criados pela UI
O nome letters-only não carrega o runID, então o discoverOwnedRows do
ownership não encontra o contato criado via formulário (create row/sheet)
e a limpeza da fixture o deixava para trás — cada run vazava 2 contatos
no banco de teste. Deletar explicitamente por nome exato no fim do teste.
2026-08-13 15:51:15 -03:00
Francisco Solla
df02e3371a style(C139): prettier no spec campaignContacts 2026-08-13 15:17:49 -03:00
Francisco Solla
0b4d7913fe test(C139): suite e2e campaignContacts e remapeamento do manifest
Cobre a página /campanha/contatos: recorte por omnibox + WhatsApp na
linha, create row desktop (erro de validação mantém o valor digitado,
conflito de nome com mensagem segura, create válido com POST), gate de
staff (líder cai em meus-contatos) e os sheets mobile (create via FAB
com telefone, edit com conflito + ficha atômica). Nomes criados via UI
são letras-only: o runID hex vira [a-p] (bijection, 128 bits).

O manifest ganha a família própria campaignContacts (antes caía no
campaignHomeActions).
2026-08-13 15:16:34 -03:00