You were right to push back. Every one of these was approved and pushed yesterday, and in every
case the store still serves the July original. Verified by pixels: live matches the July file exactly
(dHash 0) and differs sharply from what you approved.
Root cause. The push script chose its file by wildcard. out/final/
turns out to hold two files for each of these SKUs — the July render and yesterday's correction, saved
under a different filename — and the wildcard picked the July one. The script reported success, and I trusted
that instead of checking the pixels. Same fault as 7-99550, nine more times.
What is not affected. Twelve of yesterday’s pushes did land correctly — the eight
sipper cups, plus 7-99166, 7-99505, 7-99575 and 7-99761 — because their corrections were saved over the July
file rather than beside it, so there was only one file to find. Everything pushed today used explicit paths and
is verified.
The fix is ready. I have located the full-resolution file behind each approved
image (matched to your gallery within a dHash of 8) and every push will use an explicit path, not a wildcard.
One pass, verified by pixels afterwards, fully reversible.