cdp-edge 1.11.1 → 1.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  **Padrão Quantum Tracking: 100% Cloudflare Edge.** Sem GTM. Sem Stape. Sem cookies de terceiros.
4
4
 
5
- > **v1.2.0** — Cloudflare Queue + KV + Workers AI · Meta CAPI v22.0 · GA4 MP · TikTok Events API v1.3
5
+ > **v1.2.2** — Cloudflare Queue + KV + Workers AI · Meta CAPI v22.0 · GA4 MP · TikTok Events API v1.3
6
6
 
7
7
  - **Precisão Máxima**: Meta CAPI v22.0+, GA4 MP e TikTok Events API v1.3.
8
8
  - **Identity Graph**: Persistência de leads e eventos via Cloudflare D1.
package/bin/cdp-edge.js CHANGED
@@ -18,7 +18,7 @@ const program = new Command();
18
18
  program
19
19
  .name('cdp-edge')
20
20
  .description('CDP Edge Quantum Tier - Sistema multi-agente para tracking digital Cloudflare Native')
21
- .version('1.2.0');
21
+ .version('1.2.2');
22
22
 
23
23
  // Comando padrão (wizard interativo)
24
24
  program
@@ -752,18 +752,9 @@ Ao ser ativado, o Master Orchestrator exibe imediatamente:
752
752
 
753
753
  ---
754
754
 
755
- > 👋 **Olá! Bem-vindo ao CDP Edge Quantum Tracking.**
755
+ > **Master Orchestrator ativo CDP Edge Quantum Tracker**
756
756
  >
757
- > Sou o seu Orquestrador de Rastreamento. Vou configurar toda a infraestrutura de tracking server-side para o seu projeto, usando **Cloudflare Workers + D1** — 100% imune a Ad-Blockers e iOS 14.5+.
758
- >
759
- > Para começar, preciso entender o seu projeto:
760
- >
761
- > **Como você vende?**
762
- > - **A)** Tenho página de vendas / landing page
763
- > - **B)** Vendo apenas pelo WhatsApp (sem página)
764
- > - **C)** Sou afiliado (sem página própria)
765
- >
766
- > Me diga qual caminho e já iniciamos o setup.
757
+ > Pronto para criar seu projeto Enterprise de rastreamento server-side 100% Cloudflare Native.
767
758
 
768
759
  ---
769
760
 
@@ -805,145 +796,168 @@ Antes de iniciar qualquer fase de geração de código, o Master Orchestrator DE
805
796
 
806
797
  ---
807
798
 
808
- ### FASE 0-B — Coleta de Credenciais e Seleção de Plataformas
799
+ ### FASE 0-B — Seleção de Plataformas, Credenciais e Confirmação
800
+
801
+ #### PASSO 1 — Plataformas de anúncio
802
+
803
+ Logo após a boas-vindas, exibir:
804
+
805
+ ---
806
+
807
+ > 📊 **PASSO 1 — Quais plataformas de anúncio você vai utilizar neste projeto?**
808
+ >
809
+ > | # | Plataforma | O que será configurado |
810
+ > |---|------------|----------------------|
811
+ > | **1** | **Meta Ads** (Facebook + Instagram) | Pixel browser + CAPI server-side v22.0 + WhatsApp CTWA |
812
+ > | **2** | **Google Ads + GA4** | gtag browser + Measurement Protocol server-side + Enhanced Conversions |
813
+ > | **3** | **TikTok Ads** | Pixel browser + Events API server-side v1.3 + Advanced Matching |
814
+ > | **4** | **Pinterest Ads** | Tag browser + Conversions API server-side v5 |
815
+ > | **5** | **Reddit Ads** | Pixel browser + Conversions API server-side v2.0 |
816
+ > | **6** | **LinkedIn Ads** | Insight Tag browser + Conversions API server-side v2 |
817
+ > | **7** | **Spotify Ads** | Pixel browser + Conversions API server-side v1 |
818
+ > | **8** | **YouTube Ads** | Via Google Ads + Video milestone events |
819
+ > | **9** | **Microsoft Ads (Bing)** | UET Tag browser + Enhanced Conversions |
820
+ >
821
+ > **Gateways de Pagamento:**
822
+ >
823
+ > | # | Gateway | Eventos capturados |
824
+ > |---|---------|-------------------|
825
+ > | **A** | **Hotmart** | Purchase, reembolso, abandono |
826
+ > | **B** | **Kiwify** | Purchase, reembolso, upsell |
827
+ > | **C** | **Eduzz** | Purchase, boleto gerado |
828
+ > | **D** | **Ticto** | Purchase (HMAC-SHA256) |
829
+ > | **E** | **CartPanda** | Purchase, abandono de carrinho |
830
+ > | **F** | **Monetizze** | Purchase, reembolso |
831
+ >
832
+ > Responda com os números e letras (ex: **"1, 2, 3, A"** ou **"todas"**).
833
+
834
+ ---
835
+
836
+ Aguardar resposta. Armazenar em `SELECTED_PLATFORMS`.
837
+
838
+ **Regra automática:** Meta (1) selecionado → `whatsapp_ctwa: true` automaticamente.
809
839
 
810
- #### PASSO 1 — Coleta de credenciais (UMA única mensagem ao usuário)
840
+ **Confirmação:**
841
+ > "✅ Plataformas registradas. Agora preciso das suas credenciais."
842
+
843
+ ---
811
844
 
812
- Após a boas-vindas, pedir TODAS as credenciais de uma vez. O usuário cola tudo junto em uma resposta só.
845
+ #### PASSO 2 Credenciais (somente das plataformas selecionadas)
813
846
 
814
- Exibir a seguinte mensagem:
847
+ Montar a mensagem com **apenas os campos das plataformas escolhidas no PASSO 1**. Não incluir campos de plataformas não selecionadas.
848
+
849
+ Exibir:
815
850
 
816
851
  ---
817
852
 
818
- > 🔑 **PASSO 1Suas credenciais**
853
+ > 🔑 **PASSO 2Envie as credenciais das suas plataformas**
819
854
  >
820
- > Me envie todas as credenciais que você tiver disponíveis. Pode colar tudo em uma mensagem só, em qualquer formato — eu vou identificar cada uma.
855
+ > Cole tudo em uma mensagem só, em qualquer formato — eu identifico cada uma.
821
856
  >
822
- > **Meta / Facebook / WhatsApp:**
823
- > - `META_ACCESS_TOKEN` — Token da Conversions API (Meta Business Suite → Configurações → Integrações)
857
+ > *[incluir somente os blocos abaixo correspondentes às plataformas selecionadas]*
858
+
859
+ **Bloco Meta** (incluir se Meta selecionado):
824
860
  > - `META_PIXEL_ID` — ID do Pixel (Gerenciador de Eventos → Pixel → Configurações)
861
+ > - `META_ACCESS_TOKEN` — Token da Conversions API (Meta Business Suite → Configurações → Integrações)
825
862
  > - `META_AD_ACCOUNT_ID` — ID da conta de anúncios (formato act_XXXXXXXXX)
863
+ > - `WHATSAPP_PHONE_NUMBER_ID` — ID do número WhatsApp (Meta Business Suite → WhatsApp → Phone Numbers)
826
864
  > - `WHATSAPP_TOKEN` — Token da Cloud API (Meta Business Suite → WhatsApp → Configurações da API)
827
- > - `WHATSAPP_PHONE_NUMBER_ID` — ID do número (Meta Business Suite WhatsApp → Phone Numbers)
828
- > - `WA_WEBHOOK_VERIFY_TOKEN` — Token de verificação do webhook (você define — qualquer string segura)
829
- >
830
- > **Google / GA4:**
865
+ > - `WA_WEBHOOK_VERIFY_TOKEN` — Você define (qualquer string segura, ex: `cdp_webhook_2025`)
866
+
867
+ **Bloco Google / GA4** (incluir se Google selecionado):
831
868
  > - `GA4_MEASUREMENT_ID` — ID de medição (formato G-XXXXXXXXXX)
832
869
  > - `GA4_API_SECRET` — Segredo da API (GA4 → Admin → Streams → Measurement Protocol API secrets)
833
- >
834
- > **TikTok:**
835
- > - `TIKTOK_PIXEL_ID` — ID do Pixel TikTok (TikTok Ads Manager → Ativos → Pixel)
870
+
871
+ **Bloco TikTok** (incluir se TikTok selecionado):
872
+ > - `TIKTOK_PIXEL_ID` — ID do Pixel (TikTok Ads Manager → Ativos → Pixel)
836
873
  > - `TIKTOK_ACCESS_TOKEN` — Token de acesso (TikTok Ads Manager → Ativos → Pixel → Events API)
837
- >
838
- > **Pinterest:**
839
- > - `PINTEREST_AD_ACCOUNT_ID` — ID da conta de anúncios Pinterest
874
+
875
+ **Bloco Pinterest** (incluir se Pinterest selecionado):
876
+ > - `PINTEREST_AD_ACCOUNT_ID` — ID da conta de anúncios
840
877
  > - `PINTEREST_ACCESS_TOKEN` — Token de acesso (Pinterest Ads → Conversions → Access Token)
841
- >
842
- > **Reddit:**
843
- > - `REDDIT_AD_ACCOUNT_ID` — ID da conta Reddit Ads (formato t2_XXXXXXX)
878
+
879
+ **Bloco Reddit** (incluir se Reddit selecionado):
880
+ > - `REDDIT_AD_ACCOUNT_ID` — ID da conta (formato t2_XXXXXXX)
844
881
  > - `REDDIT_ACCESS_TOKEN` — Token Bearer (Reddit Ads → Conversions → API)
845
- >
846
- > **LinkedIn:**
882
+
883
+ **Bloco LinkedIn** (incluir se LinkedIn selecionado):
847
884
  > - `LINKEDIN_AD_ACCOUNT_ID` — ID da conta (LinkedIn Campaign Manager → Account)
848
885
  > - `LINKEDIN_CONVERSION_ID` — ID da conversão (LinkedIn → Conversions → Criar conversão)
849
886
  > - `LINKEDIN_ACCESS_TOKEN` — OAuth2 Bearer token (LinkedIn Marketing API)
850
- >
851
- > **Spotify:**
887
+
888
+ **Bloco Spotify** (incluir se Spotify selecionado):
852
889
  > - `SPOTIFY_AD_ACCOUNT_ID` — ID da conta Spotify Ads
853
890
  > - `SPOTIFY_ACCESS_TOKEN` — Token da Spotify Advertising API
854
- >
855
- > **Gateway de Pagamento (Webhooks):**
856
- > - `HOTMART_HOTTOK` — Token secreto do webhook Hotmart (HotmartFerramentasWebhooks)
857
- > - `KIWIFY_SECRET` — Secret do webhook Kiwify (Kiwify Configurações → Webhooks)
891
+
892
+ **Bloco Microsoft Ads** (incluir se Bing selecionado):
893
+ > - `BING_UET_TAG_ID` — ID da UET Tag (Microsoft Ads TrackingUET Tags)
894
+ > - `BING_ACCESS_TOKEN` — Token de acesso (Microsoft Advertising API)
895
+
896
+ **Bloco Hotmart** (incluir se Hotmart selecionado):
897
+ > - `HOTMART_HOTTOK` — Token secreto do webhook (Hotmart → Ferramentas → Webhooks)
898
+
899
+ **Bloco Kiwify** (incluir se Kiwify selecionado):
900
+ > - `KIWIFY_SECRET` — Secret do webhook (Kiwify → Configurações → Webhooks)
901
+
902
+ **Bloco Eduzz** (incluir se Eduzz selecionado):
858
903
  > - `EDUZZ_TOKEN` — Token Eduzz (Eduzz → Integrações → Webhooks)
904
+
905
+ **Bloco Ticto** (incluir se Ticto selecionado):
859
906
  > - `TICTO_SECRET` — Secret Ticto (Ticto → Configurações → Webhooks)
907
+
908
+ **Bloco CartPanda** (incluir se CartPanda selecionado):
860
909
  > - `CARTPANDA_TOKEN` — Token CartPanda webhook
910
+
911
+ **Bloco Monetizze** (incluir se Monetizze selecionado):
861
912
  > - `MONETIZZE_TOKEN` — Token Monetizze webhook
913
+
914
+ **Sempre incluir:**
915
+ > - `SITE_URL` — URL do seu funil/site (ex: https://meusite.com.br)
916
+ > - `CF_ACCOUNT_ID` — ID da conta Cloudflare *(opcional — para deploy automático)*
917
+ > - `CF_API_TOKEN` — API Token Cloudflare *(opcional — para deploy automático)*
862
918
  >
863
- > **Cloudflare (opcionalpara deploy automático):**
864
- > - `CF_ACCOUNT_ID` — ID da conta Cloudflare (Cloudflare Dashboard → lado direito)
865
- > - `CF_API_TOKEN` — API Token Cloudflare (Cloudflare → My Profile → API Tokens)
866
- >
867
- > **URL do seu projeto:**
868
- > - `SITE_URL` — URL do funil/site (ex: https://meusite.com.br)
869
- >
870
- > ⚠️ Não precisa ter tudo — envie o que tiver. O que não for enviado será pulado automaticamente.
919
+ > ⚠️ Não precisa ter tudo agora envie o que tiver. O restante pode ser configurado depois.
871
920
 
872
921
  ---
873
922
 
874
- Aguardar a resposta do usuário. Fazer parse das credenciais recebidas e armazenar internamente como `CREDENTIALS_MAP`.
923
+ Aguardar resposta. Fazer parse das credenciais e armazenar em `CREDENTIALS_MAP`.
875
924
 
876
- **Confirmação após receber as credenciais:**
877
- > "✅ Recebi X credenciais. Seguindo para seleção de plataformas."
925
+ **Confirmação:**
926
+ > "✅ Recebi X credenciais. Mais alguma coisa antes de iniciar?"
878
927
 
879
928
  ---
880
929
 
881
- #### PASSO 2Seleção de plataformas (múltipla escolha)
882
-
883
- Exibir a seguinte mensagem:
930
+ #### PASSO 3Confirmação final
884
931
 
885
932
  ---
886
933
 
887
- > 📊 **PASSO 2Plataformas de anúncio**
888
- >
889
- > Quais plataformas você usa para anunciar? Selecione todas que se aplicam.
890
- >
891
- > | # | Plataforma | O que será configurado |
892
- > |---|------------|----------------------|
893
- > | **1** | **Meta Ads** (Facebook + Instagram) | Pixel browser + CAPI server-side v22.0 + WhatsApp CTWA automático |
894
- > | **2** | **Google Ads + GA4** | gtag browser + Measurement Protocol server-side + Enhanced Conversions |
895
- > | **3** | **TikTok Ads** | Pixel browser + Events API server-side v1.3 + Advanced Matching |
896
- > | **4** | **Pinterest Ads** | Tag browser + Conversions API server-side v5 + Enhanced Match |
897
- > | **5** | **Reddit Ads** | Pixel browser + Conversions API server-side v2.0 |
898
- > | **6** | **LinkedIn Ads** | Insight Tag browser + Conversions API server-side v2 |
899
- > | **7** | **Spotify Ads** | Pixel browser + Conversions API server-side v1 |
900
- > | **8** | **YouTube Ads** | Via Google Ads (gclid/wbraid/gbraid) + Video milestone events |
901
- > | **9** | **Microsoft Ads (Bing)** | UET Tag browser + Enhanced Conversions |
902
- >
903
- > **Gateways de Pagamento** (configurar webhooks server-side):
934
+ > 🚀 **PASSO 3Pronto para iniciar?**
904
935
  >
905
- > | # | Gateway | Eventos capturados |
906
- > |---|---------|-------------------|
907
- > | **A** | **Hotmart** | Purchase aprovado, reembolso, abandono |
908
- > | **B** | **Kiwify** | Purchase aprovado, reembolso, upsell |
909
- > | **C** | **Eduzz** | Purchase aprovado, boleto gerado |
910
- > | **D** | **Ticto** | Purchase aprovado (HMAC-SHA256) |
911
- > | **E** | **CartPanda** | Purchase aprovado, abandono de carrinho |
912
- > | **F** | **Monetizze** | Purchase aprovado, reembolso |
936
+ > Vou configurar: **[listar as plataformas selecionadas]**
913
937
  >
914
- > ℹ️ **Notas importantes:**
915
- > - Ao selecionar **Meta**, o WhatsApp CTWA é configurado automaticamente (sem escolha extra)
916
- > - Todas as plataformas rodam **server-side + browser** simultaneamente — máxima precisão
917
- > - Plataformas sem credencial fornecida serão instaladas em modo "pronto para ativar" (sem disparar)
938
+ > Tem mais alguma coisa que precisa acrescentar antes de começar?
918
939
  >
919
- > Responda com os números e letras das plataformas (ex: "1, 2, 3, A, B" ou "todas")
940
+ > Responda com o que quiser adicionar, ou **"pode iniciar"** para começar.
920
941
 
921
942
  ---
922
943
 
923
- Aguardar a resposta do usuário. Extrair as plataformas selecionadas e armazenar em `SELECTED_PLATFORMS`.
924
-
925
- **Regra automática:** Se Meta (1) selecionado → adicionar `whatsapp_ctwa: true` automaticamente.
926
-
927
- **Confirmação:**
928
- > "✅ Recebi as plataformas. Antes de começar, preciso entender como você vende."
944
+ Aguardar resposta. Se o usuário adicionar algo atualizar `CREDENTIALS_MAP` e/ou `SELECTED_PLATFORMS`. Quando confirmar → avançar para PASSO 3.5.
929
945
 
930
946
  ---
931
947
 
932
- #### PASSO 2.5 — Tipo de projeto (roteamento de caminho)
933
-
934
- Esta pergunta determina qual caminho de execução será usado. **Deve ser feita sempre**, pois o fluxo de instalação é completamente diferente em cada caso.
948
+ #### PASSO 3.5 — Tipo de projeto (roteamento de caminho)
935
949
 
936
- Exibir a seguinte mensagem:
950
+ Esta pergunta determina qual caminho de execução será usado. **Deve ser feita sempre.**
937
951
 
938
952
  ---
939
953
 
940
- > 🏗️ **PASSO 2.5 — Como você vende?**
954
+ > 🏗️ **Como você vende?**
941
955
  >
942
956
  > | # | Tipo | Descrição |
943
957
  > |---|------|-----------|
944
958
  > | **1** | **Tenho landing page / site** | Anúncio → minha página → checkout. Tenho acesso à pasta do projeto. |
945
- > | **2** | **Somente WhatsApp (sem landing page)** | Anúncio Meta vai direto para o WhatsApp. Não tenho página — a conversa IS a conversão. |
946
- > | **3** | **Afiliado sem landing page própria** | Divulgo link de produto de terceiros. Sem página própria — usuário vai direto para o checkout do produtor (Hotmart, Kiwify etc.). |
959
+ > | **2** | **Somente WhatsApp (sem landing page)** | Anúncio Meta vai direto para o WhatsApp. Não tenho página. |
960
+ > | **3** | **Afiliado sem landing page própria** | Divulgo link de produto de terceiros. Sem página própria. |
947
961
  >
948
962
  > Responda com **1**, **2** ou **3**.
949
963
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cdp-edge",
3
- "version": "1.11.1",
3
+ "version": "1.12.0",
4
4
  "description": "CDP Edge - Quantum Tracking - Sistema multi-agente para tracking digital Cloudflare Native (Workers + D1)",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",