-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(cdp): client side destinations #26169
base: master
Are you sure you want to change the base?
Conversation
0f129b8
to
bd9fd9e
Compare
Size Change: +362 B (+0.03%) Total Size: 1.11 MB ℹ️ View Unchanged
|
📸 UI snapshots have been updated1 snapshot changes in total. 0 added, 1 modified, 0 deleted:
Triggered by this commit. |
📸 UI snapshots have been updated1 snapshot changes in total. 0 added, 1 modified, 0 deleted:
Triggered by this commit. |
📸 UI snapshots have been updated16 snapshot changes in total. 0 added, 16 modified, 0 deleted:
Triggered by this commit. |
📸 UI snapshots have been updated10 snapshot changes in total. 0 added, 10 modified, 0 deleted:
Triggered by this commit. |
📸 UI snapshots have been updated10 snapshot changes in total. 0 added, 10 modified, 0 deleted:
Triggered by this commit. |
📸 UI snapshots have been updated2 snapshot changes in total. 0 added, 2 modified, 0 deleted:
Triggered by this commit. |
Problem
We want to do filter matching in the client side using Hog, and also replicate the Google Tag Manager product.
Requires PostHog/posthog-js#1546
Changes
Adds "client-side destinations" as a new destination type:
Refactors "site apps" to use this same system, and migrate over both site apps (pineapple + notification). You can now modify the app code:
There were many changes that made themselves into this PR:
pipelineDestinations
intohogFunctionsList
in order to abstract it between the different destination and site app types, and parameterize the logic/decide
for teams with site apps enabled to load new hog-function-site-apps/destinations. We're moving to something more static soon anyway.How did you test this code?
Added various tests
Open questions
Security.
/site_app/:id/:token/:content_hash
. The new site functions are loaded from/site_function/:uuid/:content_hash
. For example the URL for a new site function is:http://localhost:8000/site_function/01935491-740c-0000-5262-5d79a1d54094/a595e3847458e6ea6795cc1a07fe5db7/
updated_at
.CDN
/decide
, in addition to one query to fetch the old site apps. Once we deprecate, migrate and remove the old site apps, it'll be back to just one query. Is that acceptable for now? We could cache the site apps intoTeam
as well./site_functions
URLTODO in other PRs