Repository navigation
JITSU-243: Add Meta Reverse ETL target pickers and setup checks - #1559
Merged
Merged
Conversation
absorbb
added a commit
that referenced
this pull request
Oct 8, 2026
JITSU-243 Meta Reverse ETL currently shows API acceptance counts without showing what Meta reports about the target. Add a separate current-results panel to run logs, with a read-only manual refresh: approximate audience size and processing/ad eligibility, an eligible estimated match range, and per-web-event Event Match Quality and Additional Conversions Reported from the Dataset Quality API. Results describe the whole audience/dataset, including other senders; they are not matching or attribution results of the selected historical run. Missing, delayed, privacy-limited and invalid metrics stay distinct from zero. Reporting failures explain token/dataset permissions or Events Manager opt-in and cannot change delivery or saved state. A match estimate requires the latest successful completed exclusive managed-mirror snapshot and an unambiguous source-row denominator. The runner adds optional sealed snapshot counts to aggregate task statistics. Existing audiences, failed/pending runs, older runs without counts, empty/excluded/duplicate/fan-out snapshots and unreliable size estimates receive an explicit unavailable reason. No snapshot payloads are downloaded, and these aggregates do not affect delivery/recovery authorization. Independent of #1559. No automatic replay, audience provisioning, state resets or schema changes. Validation: 21 provider reporting tests, 309 console unit tests plus the retargeting-cache regression, 15 real Postgres/ClickHouse reporting integration tests, 486 runner tests (1 skipped), all three package typechecks, runner build, changed-console lint and formatting. Live Meta result availability still depends on reporting permissions, data processing and privacy thresholds. Deploy updated retl-runner first, then console. Subsequent runner executions supply snapshot counts; older attempts remain readable without a match estimate. Console deployment remains manual unless explicitly requested otherwise.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
JITSU-243
Meta Reverse ETL currently accepts manually entered target IDs until a run discovers a wrong object or missing access. Add ad-account and compatible customer-list audience pickers, a read-only connection check, and automatic target preflight before saving new, retargeted, or re-enabled unlocked Meta sync settings. Pixel-specific checks catch App ID versus Pixel/Dataset ID mistakes; errors explain token expiry, asset access, incompatible audience type, account and value-based settings.
Manual IDs remain available if discovery fails or reaches its page limit. Checks use the workspace's stored token, make only GET requests, and return sanitized diagnostics. Success explicitly distinguishes verified type/read access from upload permission, terms and delivery acceptance. Pauses and schedule/mapping-only edits stay available without contacting Meta, including before a sync has runtime state; no audience creation, state reset, or recovery behavior changes.
This is the first priority item in JITSU-243. Destination metrics, audience identifier arrays, existing-audience mirroring, and lower-priority operations remain follow-ups.
Validation: destination-function tests; 312 console unit tests plus 3 pause/schedule/re-enable regressions; real Postgres/ClickHouse integration tests for workspace scoping, credential redaction, Meta checks and existing sync behavior; destination/console TypeScript checks; changed-console ESLint and formatting. Live Meta acceptance remains to be verified with a dedicated target.
Deployment: console only, manual unless explicitly requested otherwise. No schema migration or syncctl/runner deployment required for these setup controls.