6.5 KiB
REGRAS CONSOLIDADAS PARA GOOGLE ADS (V12.6 — HEADLINE 30 + HARD MATCH + DKI SAFE MODE + RECONCILIATION ENGINE)
OBJETIVO: Engine determinístico com canonização automática de keywords, espelhamento obrigatório de keywords em headlines (HARD MATCH 7/7) + 01 título com DKI em modo seguro (SEM substituir espelhos), e regeneração obrigatória de descrições (SEM substring), agora com camada adicional RECONCILIATION ENGINE (ANTI FALSE NEGATIVE) para validação estrutural final.
Compatível com GAS v6 — ENGINE AUDITOR HARD MATCH.
🆕 V12.6 — ATUALIZAÇÃO (HEADLINE 30)
- Headlines (Títulos): limite alterado de 25 para 30 caracteres.
- Demais ativos (keywords, callouts, sitelinks e descrições de sitelink): permanecem com limite 25 (ou os limites já definidos nas seções próprias).
0. FLUXO GLOBAL (DETERMINISTIC EXECUTION)
INÍCIO
PARA cada GRUPO_DE_ANUNCIO (total = 3):
PASSO 1 → Gerar Keywords
PASSO 1.1 → SANITIZAR E CANONIZAR KEYWORDS
PASSO 2 → Normalizar Keywords
PASSO 3 → Classificar Keywords por PRIORIDADE
PASSO 4 → Selecionar Literais (ALGORITMO FIXO)
PASSO 4.1 → Gerar HEADLINES ESPELHO (1 por keyword)
PASSO 4.2 → Gerar 01 HEADLINE DKI (SAFE MODE)
PASSO 5 → Montar LISTA FINAL DE TÍTULOS (15) com MIRROR ENFORCEMENT + DKI SAFE
PASSO 6 → Gerar Descrições (REGENERAÇÃO OBRIGATÓRIA / SEM CORTE)
PASSO 7 → Validar Limites (Headlines ≤30; demais conforme seção)
PASSO 8 → Inserir Localização (fora dos espelhos)
FIM
Depois: PASSO 9 → Negativas PASSO 10 → Extensões PASSO 11 → HARD LOCK VALIDATION PASSO 12 → RECONCILIATION ENGINE (ANTI FALSE NEGATIVE) PASSO 13 → AUDITORIA GAS v6 (Opcional)
RETORNAR apenas JSON estruturado.
1. PALAVRAS-CHAVE (ENGINE STEP)
GERAR exatamente 7 keywords por grupo.
REGRAS:
- usar [Exata] e "Frase"
- máximo 25 caracteres
- keywords devem ser juridicamente tituláveis.
SANITIZAÇÃO E CANONIZAÇÃO (OBRIGATÓRIA)
ANTES de aceitar qualquer keyword:
FUNÇÃO canonizar(keyword):
remover duplicações de delimitadores:
[[texto]] → texto
converter para forma jurídica clara e titulável.
Exemplos obrigatórios: casamento fim → Fim do Casamento fim do casamento → Fim do Casamento fim pensão → Fim da Pensão fim da pensão → Fim da Pensão custo inventário → Custo Inventário
SE keyword for vaga, truncada ou não titulável: DESCARTAR e gerar nova.
ENGINE NORMALIZE
FUNÇÃO normalizar(texto):
remover "[" "]" e '"'
remover espaços duplicados
aplicar Capitalização Inicial
manter acentuação
manter ordem
NÃO alterar semântica
RETORNAR texto_normalizado
2. CLASSIFICAÇÃO DETERMINÍSTICA DE KEYWORDS
PRIORIDADE 1 — COMERCIAL DIRETA
- valor
- custo
- preço
- regularização
- revisão
- cálculo
- quanto custa
- honorários
PRIORIDADE 2 — CONTRATAÇÃO
- advogado
- ação
- processo
- consulta
PRIORIDADE 3 — INFORMATIVA Demais termos.
3. SELEÇÃO LITERAL DETERMINÍSTICA
FUNÇÃO selecionar_keywords_literais(lista_keywords):
ordenar por:
prioridade ASC
tamanho ASC
ordem original
selecionar até 5.
4. KEYWORD MIRROR HEADLINES — HARD MATCH (ENFORCEMENT)
OBJETIVO: Garantir que TODAS as 7 keywords do grupo tenham ao menos 1 headline correspondente EXATO após normalização.
REGRAS:
-
Para cada keyword do grupo (7): headline_espelho = normalizar(canonizar(keyword))
-
O headline_espelho deve ser EXATO (após normalização).
-
PROIBIÇÃO ABSOLUTA — "SP" NO ESPELHO
-
MIRROR ENFORCEMENT: A lista final de 15 títulos deve conter TODOS os 7 headlines_espelho.
4.2 HEADLINE DKI — SAFE MODE
FORMATO: {Keyword:PADRAO_DO_GRUPO}
REGRAS SAFE:
- DKI nunca substitui espelhos
- DKI fora do bucket literal
- ≤30 caracteres
5. TÍTULOS — MONTAGEM DETERMINÍSTICA
Limite de caracteres (V12.6): cada headline deve ter ≤30 caracteres.
Distribuição: 05 / 05 / 05
Bucket 1: 5 espelhos Bucket 2: 3 CTA/Local + 1 espelho + 1 DKI Bucket 3: 4 provas + 1 espelho
6. DESCRIÇÕES — DETERMINISTIC TEXT ENGINE
80 ≤ caracteres ≤ 92
Proibido substring. Falhou validação → Regenerar do zero.
7. EXTENSÕES — HARD LOCK
Sitelinks: 4 obrigatórios Callouts: 7 obrigatórios
8. POLÍTICAS EDITORIAIS
Proibido:
- Grátis
- Gratuito
- caixa alta total
9. HARD LOCK VALIDATION (FINAL)
Validar integridade completa antes da saída.
V12.5 — RECONCILIATION ENGINE (ANTI FALSE NEGATIVE)
OBJETIVO: Adicionar camada determinística de Reconciliação garantindo integridade total entre ENGINE e estado final.
PRINCÍPIO
ENGINE → cria HARD LOCK → RECONCILIATION → AUDITORIA
SNAPSHOTS OBRIGATÓRIOS (ENGINE_STATE)
keywords_raw[7] keywords_canon[7] keywords_norm[7] headlines_espelho_criados[7] headline_dki_criado[1] headlines_final[15]
bucket_map_final
descricao_final callouts_final[7] sitelinks_final[4]
FINGERPRINTS (OBRIGATÓRIO)
Criar hashes SHA-256:
fp_keywords_norm fp_headlines_final_norm fp_descricao_final fp_bucket_map
REGRAS DE RECONCILIAÇÃO
R1 — EXISTÊNCIA 7/7 Cada keyword_norm deve existir como headline espelho final.
R2 — INTEGRIDADE DO ESPELHO headline espelho deve permanecer idêntica.
R3 — CONTAGEM DE ESPELHOS Exatamente 7 espelhos únicos.
R4 — DKI SAFE MODE
- exatamente 1 headline DKI
- formato {Keyword:PADRAO}
- não substitui espelhos
- fora do bucket literal
R5 — BUCKET LAYOUT Bucket 1: 5 espelhos Bucket 2: 3 CTA + 1 espelho + 1 DKI Bucket 3: 4 provas + 1 espelho
R6 — DESCRIÇÃO ANTI-GHOST Fingerprint da descrição final deve existir nas descrições geradas.
R7 — INTEGRIDADE FINAL DA DESCRIÇÃO 80 ≤ caracteres ≤ 92 Termina com . ou !
R8 — CALLOUTS 7 obrigatórios, ≤25 caracteres.
R9 — SITELINKS Cada sitelink com description1 e description2.
R10 — HEADLINES (V12.6)
- todas as 15 headlines devem ter ≤30 caracteres
- proibido truncar automaticamente (se estourar, regenerar)
SEVERIDADE
CRÍTICO: bloquear saída ALTA: reexecutar etapa MÉDIA: warning
REEXECUÇÃO AUTOMÁTICA
DESYNC_MIRROR_* → Passo 4.1/5 DESYNC_DKI_VIOLATION → Passo 4.2/5 DESYNC_BUCKET_LAYOUT → Passo 5 DESYNC_DESCRIPTION_* → Passo 6 DESYNC_CALLOUT_TRUNC → Passo 7 DESYNC_SITELINK_INCOMPLETE → Passo 7
STATUS FINAL
PASS_RECONCILIATION FAIL_RECONCILIATION
RESULTADO
A Reconciliação elimina falsos negativos estruturais garantindo execução determinística do HARD MATCH + DKI SAFE MODE.