5.4 KiB
REGRAS CONSOLIDADAS --- Google Ads
V12.6.1 --- UNIFIED ENGINE CORE COMPACT
(HARD MATCH + DKI SAFE MODE + RECONCILIATION ENGINE)
OBJETIVO: Versão compacta e determinística do ENGINE CORE. Unifica criação, montagem, validação estrutural e reconciliação anti-falso-negativo em um único fluxo otimizado.
Compatível com: - HARD MATCH 7/7 - DKI SAFE MODE - Anti-Truncamento - Reconciliação Estrutural
Auditoria (GAS v6) permanece EXTERNA.
0. PRINCÍPIOS DO ENGINE
- Execução determinística
- Espelhamento obrigatório
- DKI controlado
- Zero substring
- Reconciliação integrada
1. FLUXO GLOBAL
PASSO 1 → Gerar Keywords (7 por grupo) PASSO 2 → Canonizar Keywords PASSO 3 → Normalizar Keywords PASSO 4 → Classificar Prioridade PASSO 5 → Gerar Headlines Espelho (7/7) PASSO 6 → Gerar 01 DKI SAFE MODE PASSO 7 → Montar 15 Títulos (05/05/05) PASSO 8 → Gerar Descrições (NO TRUNC ENGINE) PASSO 9 → Gerar Extensões PASSO 10 → HARD LOCK VALIDATION PASSO 11 → RECONCILIATION ENGINE
RETORNAR apenas JSON estruturado.
2. CANONIZAÇÃO
FUNÇÃO canonizar(keyword):
- remover duplicação de delimitadores
- transformar em forma jurídica titulável
- manter acentuação
- manter ordem semântica
Keyword inválida → DESCARTAR.
3. NORMALIZAÇÃO
FUNÇÃO normalizar(texto):
- remover "[" "]" e '"'
- remover espaços duplicados
- permitir Capitalização Inicial
- manter acentuação
- manter ordem
Uso exclusivo para comparação.
4. PRIORIDADE
PRIORIDADE 1: valor, custo, preço, revisão, cálculo
PRIORIDADE 2: advogado, ação, processo, consulta
PRIORIDADE 3: demais termos
Ordenação:
prioridade ASC tamanho ASC ordem original
5. HARD MATCH --- ESPELHOS
- 7 keywords → 7 headlines espelho obrigatórios
- headline = normalizar(canonizar(keyword))
PROIBIDO:
- adicionar palavras
- alterar ordem
- sinônimos
- pluralização
Se keyword não contém SP → espelho não pode conter SP.
6. DKI SAFE MODE
Formato obrigatório:
{Keyword:PADRAO_DO_GRUPO}
REGRAS:
- exatamente 1 DKI
- ≤30 caracteres
- não substitui espelhos
- não entra no Bucket Literal
- sem termos proibidos
7. TÍTULOS --- MONTAGEM 15 FIXOS
Bucket 1 --- Literal (5) → 5 primeiros espelhos
Bucket 2 --- CTA/Local (5) → 3 CTAs → 1 espelho (6º) → 1 DKI
Bucket 3 --- Prova (5) → 4 provas → 1 espelho (7º)
8. DESCRIÇÕES --- NO TRUNC ENGINE
RANGE:
80 ≤ caracteres ≤ 92 Ideal: 85--90
PROCESSO:
- gerar descrição completa
- validar
- se inválida → REGERAR DO ZERO
PROIBIDO:
- substring
- slice
- corte parcial
Descrição válida se:
- termina com "." ou "!"
- não termina com espaço
- não termina com palavra incompleta
9. EXTENSÕES
SITELINKS:
- 4 obrigatórios
- título ≤25
- description1 obrigatório
- description2 obrigatório
CALLOUTS:
- 7 obrigatórios
- ≤25 caracteres
- sem palavra incompleta
- reescrever se exceder (nunca cortar)
10. HARD LOCK VALIDATION
VALIDAR:
- 3 grupos
- 7 keywords por grupo
- 7 espelhos presentes
- 15 títulos totais
- DKI único
- buckets 05/05/05
- descrições válidas
- callouts completos
Falha → REEXECUTAR BLOCO.
11. RECONCILIATION ENGINE (ANTI FALSE NEGATIVE)
R1 --- EXISTÊNCIA 7/7 (CRÍTICO) keyword_norm deve existir nos títulos finais. Erro: DESYNC_MIRROR_MISSING
R2 --- INTEGRIDADE DO ESPELHO (CRÍTICO) headline espelho idêntica após normalização. Erro: DESYNC_MIRROR_MUTATED
R3 --- CONTAGEM (CRÍTICO) exatamente 7 espelhos únicos. Erro: DESYNC_MIRROR_COUNT
R4 --- DKI SAFE MODE (CRÍTICO) 1 DKI, fora do Bucket Literal. Erro: DESYNC_DKI_VIOLATION
R5 --- BUCKET LAYOUT (ALTA) 05/05/05 obrigatório. Erro: DESYNC_BUCKET_LAYOUT
R6 --- DESCRIÇÃO ANTI-GHOST (CRÍTICO) descrição final deve ter sido gerada pelo engine. Erro: DESYNC_DESCRIPTION_GHOST_EDIT
R7 --- INTEGRIDADE FINAL (CRÍTICO) validar novamente range e finalização. Erro: DESYNC_DESCRIPTION_INVALID_FINAL
R8 --- CALLOUTS (ALTA) 7 callouts completos. Erro: DESYNC_CALLOUT_TRUNC
R9 --- SITELINKS (MÉDIA) description1 e description2 obrigatórios. Erro: DESYNC_SITELINK_INCOMPLETE
12. SEVERIDADE
CRÍTICO → bloquear saída ALTA → reexecutar etapa MÉDIA → warning
RESULTADO
ENGINE CORE compacto, sem duplicação de regras, com HARD MATCH + DKI SAFE + RECONCILIATION totalmente integrados.