Web SDK sends propositionFetch without query.personalization on a normal reload, but works on a hard reload or with DevTools open
This is an Implementation of Adobe Target Using WebSDK
Setup
- Adobe Tags (Launch) with the Web SDK extension 2.38.2 (Alloy 2.36.1)
- Adobe Target enabled on the datastream, with a property token override in Datastream Configuration Overrides
- Shopify storefront (multi-page, not a SPA)
- Rule A: Library Loaded (Page Top), Send Event, type Decisioning Proposition Fetch, "Render visual personalization decisions" ticked
- Rule B: Page Bottom, Send Event, type Decisioning Proposition Display
- Target activity: Experience Targeting with a VEC change (insertBefore), tested with QA links
Problem
- On a normal reload (Ctrl+R) with DevTools closed, the Fetch request goes out without query.personalization (no decisionScopes, no surfaces). Target returns no offers ([Personalization] No offers were returned).
- On a hard reload (Ctrl+Shift+R), or with DevTools open, the same request includes query.personalization (decisionScopes: ["__view__"] plus surfaces). Target returns the offer and the content renders.
- The meta block (config overrides, identity cookie, consent, QA cookie) is identical in both cases.
What I tried
- Compared both payloads: only the personalization query differs.
- Checked page width (narrow and wide windows): no difference.
- Moved the Fetch rule from Library Loaded to DOM Ready: it made things worse, so I reverted it.
- Library build date was the same in both cases.
Questions
1. What makes the Web SDK omit query.personalization from a propositionFetch event?
2. Could a fast or cached page load cause this? Is there a known issue in these versions?
3. Is there a recommended setting or rule pattern, for example setting decisionScopes or renderDecisions explicitly, to make the personalization query always go out?