Skip to content

Commit 46756ab

Browse files
Vahid Kayclaude
andcommitted
E2E: fix firefox/webkit shards (need chromium) + guest Lead contract
- firefox and safari-ios shards failed at launch ("chrome-headless-shell doesn't exist") because global-setup.js seeds the customer cookie via chromium.launch(); install chromium alongside firefox/webkit on those shards. - guest Lead failed with "pixel user_data.em missing": the Pixel Lead only carries em via session advanced-matching, so guests have no pixel em. Drop the Lead user_data override so it inherits the mode-aware base (customer em+fbp / guest fbp only); the form email reaching CAPI is still asserted via the event_id-keyed check in the spec. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 6d5ce1b commit 46756ab

2 files changed

Lines changed: 8 additions & 7 deletions

File tree

.github/workflows/e2e-tests.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -231,9 +231,11 @@ jobs:
231231
DEBIAN_FRONTEND: noninteractive
232232
run: |
233233
npm ci
234+
# global-setup.js launches chromium to seed the customer cookie, so every
235+
# shard needs chromium in addition to its own engine.
234236
case "${{ matrix.project }}" in
235-
firefox-*) timeout 15m npx playwright install --with-deps firefox ;;
236-
safari-ios-*) timeout 15m npx playwright install --with-deps webkit ;;
237+
firefox-*) timeout 15m npx playwright install --with-deps chromium firefox ;;
238+
safari-ios-*) timeout 15m npx playwright install --with-deps chromium webkit ;;
237239
*privacy-sandbox*) timeout 15m npx playwright install --with-deps chromium chrome ;;
238240
edge-*) timeout 15m npx playwright install --with-deps chromium msedge ;;
239241
*) timeout 15m npx playwright install --with-deps chromium ;;

tests/e2e/helpers/js/events/field-contracts.js

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -96,11 +96,10 @@ const EVENT_OVERLAYS = {
9696

9797
Lead: {
9898
channels: ['pixel', 'capi'],
99-
// Form-provided PII: present for both logged-in and guest submitters.
100-
user_data: {
101-
pixel: ['em', 'fbp'],
102-
capi: ['em', 'fbp'],
103-
},
99+
// Inherit the mode-aware base user_data: the Pixel Lead only carries `em` via
100+
// session advanced-matching (so customer → em+fbp, guest → fbp only). The
101+
// form-submitted email is asserted to reach CAPI separately in the spec
102+
// (keyed off the shared event_id), so it stays verified in both modes.
104103
custom_data: { pixel: [], capi: [] },
105104
},
106105
};

0 commit comments

Comments
 (0)