# REGRAS CONSOLIDADAS --- Google Ads ## V12.5 --- RECONCILIATION ENGINE (ANTI FALSE NEGATIVE) OBJETIVO: Adicionar uma camada determinística de Reconciliação ao pipeline V12.4 (HARD MATCH + DKI SAFE MODE), garantindo integridade total entre o estado criado pelo ENGINE e o estado final entregue. Compatível com: - HARD MATCH - DKI SAFE MODE - GAS v6 --- ENGINE AUDITOR HARD MATCH ------------------------------------------------------------------------ # 0. PRINCÍPIO A Reconciliação NÃO substitui auditoria. Ela valida consistência entre fases. ENGINE → cria HARD LOCK → valida regras RECONCILIATION → valida integridade estrutural AUDITORIA → valida qualidade final ------------------------------------------------------------------------ # 1. FLUXO GLOBAL ATUALIZADO PASSO 1 → Keywords PASSO 2 → Canonização PASSO 3 → Normalização PASSO 4 → Headlines Espelho PASSO 4.2 → DKI SAFE MODE PASSO 5 → Montagem 15 Títulos PASSO 6 → Descrições PASSO 7 → Extensões PASSO 8 → HARD LOCK VALIDATION PASSO 12 → RECONCILIATION ENGINE (NOVO) PASSO 13 → AUDITORIA GAS v6 (Opcional) ------------------------------------------------------------------------ # 2. 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: - bucket1_literal\[5\] - bucket2_cta_local\[5\] - bucket3_prova\[5\] descricoes_geradas\[\] descricao_final callouts_final\[7\] sitelinks_final\[4\] ------------------------------------------------------------------------ # 3. FINGERPRINTS (OBRIGATÓRIO) Criar hashes SHA-256: fp_keywords_norm fp_headlines_final_norm fp_descricao_final fp_bucket_map Objetivo: Detectar alterações invisíveis após montagem. ------------------------------------------------------------------------ # 4. REGRAS DE RECONCILIAÇÃO ## R1 --- EXISTÊNCIA 7/7 (CRÍTICO) Cada keyword_norm deve existir como headline espelho final. Se faltar: DESYNC_MIRROR_MISSING ------------------------------------------------------------------------ ## R2 --- INTEGRIDADE DO ESPELHO (CRÍTICO) headline espelho deve ser idêntica após normalização. Proibido: - adicionar palavras - trocar ordem - criar variações Erro: DESYNC_MIRROR_MUTATED ------------------------------------------------------------------------ ## R3 --- CONTAGEM DE ESPELHOS (CRÍTICO) Deve haver exatamente 7 espelhos únicos. Erro: DESYNC_MIRROR_COUNT ------------------------------------------------------------------------ ## R4 --- DKI SAFE MODE (CRÍTICO) Regras obrigatórias: - existe exatamente 1 headline DKI - formato {Keyword:PADRAO} - DKI não substitui espelhos - DKI não está no Bucket Literal Erro: DESYNC_DKI_VIOLATION ------------------------------------------------------------------------ ## R5 --- BUCKET LAYOUT (ALTA) Distribuição obrigatória: Bucket 1: 5 espelhos Bucket 2: 3 CTA/Local 1 espelho (6º) 1 DKI Bucket 3: 4 provas 1 espelho (7º) Erro: DESYNC_BUCKET_LAYOUT ------------------------------------------------------------------------ ## R6 --- DESCRIÇÃO ANTI-GHOST (CRÍTICO) Fingerprint da descrição final deve existir dentro das descrições geradas. Proibido: - editar manualmente - cortar string Erro: DESYNC_DESCRIPTION_GHOST_EDIT ------------------------------------------------------------------------ ## R7 --- INTEGRIDADE FINAL DA DESCRIÇÃO (CRÍTICO) Revalidar: 80 ≤ caracteres ≤ 92 termina com "." ou "!" não termina com espaço não termina com palavra incompleta Erro: DESYNC_DESCRIPTION_INVALID_FINAL ------------------------------------------------------------------------ ## R8 --- CALLOUTS (ALTA) - 7 obrigatórios - ≤25 caracteres - sem palavra incompleta - sem substring Erro: DESYNC_CALLOUT_TRUNC ------------------------------------------------------------------------ ## R9 --- SITELINKS (MÉDIA) Cada sitelink deve possuir: description1 description2 Erro: DESYNC_SITELINK_INCOMPLETE ------------------------------------------------------------------------ # 5. SEVERIDADE CRÍTICO: bloquear saída do grupo reexecutar bloco inválido ALTA: reexecutar etapa específica MÉDIA: warning ------------------------------------------------------------------------ # 6. 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 ------------------------------------------------------------------------ # 7. STATUS FINAL PASS_RECONCILIATION FAIL_RECONCILIATION ------------------------------------------------------------------------ # RESULTADO A Reconciliação elimina falsos negativos estruturais, garantindo que o pipeline HARD MATCH + DKI SAFE MODE permaneça determinístico do início ao fim.