I have reproduced the issue on the latest CLI version.
Yes, I am on the latest version
I have searched existing posts and this report is not a duplicate.
Yes, this isn’t a duplicate
In which of these areas are you experiencing a problem?
Theme
Expected behavior
Updating an existing theme via shopify theme push or the Admin Asset API should have the Liquid-rendered stylesheet assets (assets/*.css.liquid) serve any settings that were changed in config/settings.data.json.
Actual behavior
The .css.liquid assets keep serving the previous theme settings. The Theme Editor shows the new values immediately, but the live or preview store still shows the old values.
Reproduction steps
- Start with any theme containing a
.css.liquidasset that renders setting A, e.g.body { background: {{ settings.shop_bg_color }}; }. - Change the setting locally in
settings_data.jsonto B. Push to the same theme. - Observe: Theme Editor shows B;
assets/styles.csson the live site or preview still contains A, and the?v=param has not changed. - Push again with no changes. Stylesheet
?v=changes and now contains B.
Also:
A settings-only Asset API write (e.g. PUT /admin/api/2025-01/themes/{id}/assets.json of only config/settings_data.json) reproduces the same stale stylesheet. Across repeated value changes, the stylesheet consistently served the previous write. Unlike the CLI push, it is not corrected on the second push.
Verbose output
Operating system
Mac OS Golden Gate
CLI version
4.8.0
Shell
zsh
Nodejs version
22.23.1
What language and version are you using in your application?
Ruby 3.3.11