cdp-edge 1.0.2 → 1.0.3
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/package.json
CHANGED
|
@@ -761,6 +761,17 @@ export default {
|
|
|
761
761
|
ctx.waitUntil(resolveDeviceGraph(env.DB, payload.userId, payload.email, payload.phone));
|
|
762
762
|
}
|
|
763
763
|
|
|
764
|
+
// Registrar em events — deduplicação + label ML (INSERT OR IGNORE descarta duplicatas)
|
|
765
|
+
if (env.DB && payload.eventId) {
|
|
766
|
+
ctx.waitUntil(
|
|
767
|
+
env.DB.prepare(
|
|
768
|
+
`INSERT OR IGNORE INTO events (event_id, event_name, user_id, created_at)
|
|
769
|
+
VALUES (?, ?, ?, datetime('now'))`
|
|
770
|
+
).bind(payload.eventId, eventName, payload.userId || null).run()
|
|
771
|
+
.catch(() => { /* silencioso — não bloqueia o pipeline */ })
|
|
772
|
+
);
|
|
773
|
+
}
|
|
774
|
+
|
|
764
775
|
// R2 Audit Log — background
|
|
765
776
|
ctx.waitUntil(writeAuditLog(env, eventName, payload, geoData));
|
|
766
777
|
|
|
@@ -79,6 +79,22 @@ CREATE INDEX IF NOT EXISTS idx_profiles_fbp ON user_profiles(fbp);
|
|
|
79
79
|
CREATE INDEX IF NOT EXISTS idx_profiles_msclkid ON user_profiles(msclkid);
|
|
80
80
|
CREATE INDEX IF NOT EXISTS idx_profiles_li_fat ON user_profiles(li_fat_id);
|
|
81
81
|
|
|
82
|
+
-- ── Tabela de Eventos (Deduplicação + Label ML) ──────────────────────────────
|
|
83
|
+
-- Registra cada evento processado com sucesso.
|
|
84
|
+
-- Duplo uso: (1) deduplicação server-side via event_id UNIQUE;
|
|
85
|
+
-- (2) label de LTV para treinamento ML (lead comprou depois?)
|
|
86
|
+
CREATE TABLE IF NOT EXISTS events (
|
|
87
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
88
|
+
event_id TEXT UNIQUE, -- deduplicação: INSERT OR IGNORE descarta duplicatas
|
|
89
|
+
event_name TEXT NOT NULL,
|
|
90
|
+
user_id TEXT,
|
|
91
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
92
|
+
);
|
|
93
|
+
|
|
94
|
+
CREATE INDEX IF NOT EXISTS idx_events_user_id ON events(user_id);
|
|
95
|
+
CREATE INDEX IF NOT EXISTS idx_events_event_name ON events(event_name);
|
|
96
|
+
CREATE INDEX IF NOT EXISTS idx_events_created ON events(created_at);
|
|
97
|
+
|
|
82
98
|
-- ── Tabela de LOG de Webhooks Offline ─────────────────────────────────────────
|
|
83
99
|
CREATE TABLE IF NOT EXISTS webhook_events (
|
|
84
100
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|