Closed Bug 2037822 Opened 1 month ago Closed 1 month ago

0 byte test/ref images landed - Perma TEST-UNEXPECTED-PASS | /jpegxl/hdr-alpha-reftest.html when Gecko 152 merges to beta on 2026-05-18

Categories

(Core :: Graphics: ImageLib, defect)

defect

Tracking

()

VERIFIED FIXED
153 Branch
Tracking Status
firefox-esr115 --- unaffected
firefox-esr140 --- unaffected
firefox150 --- unaffected
firefox151 --- unaffected
firefox152 + fixed
firefox153 + verified

People

(Reporter: smolnar, Assigned: tnikkel)

References

(Regression)

Details

(Keywords: regression)

Attachments

(4 files)

Central as Beta simulation

How to run these simulations

Failure log

TEST-UNEXPECTED-PASS | /jpegxl/hdr-alpha-reftest.html | Testing http://web-platform.test:8000/jpegxl/hdr-alpha-reftest.html == http://web-platform.test:8000/jpegxl/hdr-alpha-reftest-ref.html
Flags: needinfo?(tnikkel)

Ugh, the binary files got corrupted in the moz-phab lando process somewhere, I know there is an open bug about it.

See Also: → 1709608
Assignee: nobody → tnikkel
Flags: needinfo?(tnikkel)

I tried to land this patch and lando failed. This is what claude thinks is wrong:

The only place those files are non-empty is Lando's own server-side working clone. That clone
has drifted away from what Lando itself has pushed.

This actually fits the bug story neatly. The original "Lando turned them into 0 bytes" failure
was probably a serialization/transport bug in the push path: Lando applied a patch correctly to
its working tree (real bytes there), but emitted empty bytes when committing/pushing downstream.
So:

  • Lando's working tree never lost the original real bytes
  • hg autoland, git autoland, and the github mirror all received empty bytes
  • Your re-add patch is based on the (correct) downstream view → empty
  • It fails when applied to Lando's stale working tree → still has the originals

This is a Lando server-side bug; you can't fix it with a rebase. You need someone with Lando
admin access to resync /files/repos/firefox-autoland against upstream (or specifically git
checkout those four files from origin) so its working tree matches what was actually pushed.
Best path forward: ping the Conduit/Lando team in #conduit or #lando on Mozilla Slack, reference
landing job 44213, and explain that their autoland working clone has stale binary content for
those four files relative to both hg autoland and the github mirror.

This will go away in the next beta sim because of bug 2016688 (marking the test as passing in beta same as nightly), but the underlying problem of empty test/ref images still remains, so this bug should remain open to get that fixed.

See Also: → 2016688

ni to followup from matrix convo.

Flags: needinfo?(sheehan)

(In reply to Timothy Nikkel (:tnikkel) from comment #5)

ni to followup from matrix convo.

I believe you hit Bug 1865760. I have posted a PR and confirmed a fix for the underlying issue on the Phab-dev server, see Bug 1865760 comment 12 for more detail. We should have the PR deployed in the next day or so. Sorry for the inconvenience.

Flags: needinfo?(sheehan)

I can't apply locally the patch either, getting an error when I do so.

I just pulled mozilla central fresh and applied the patch, no issue.

What error are you seeing?

(In reply to Timothy Nikkel (:tnikkel) from comment #8)

I just pulled mozilla central fresh and applied the patch, no issue.

What error are you seeing?

Created branch phab-D299294_1
error: the patch applies to 'testing/web-platform/tests/jpegxl/resources/sdr_alpha.png' (e69de29bb2d1d6434b8b29ae775ad8c2e48c5391), which does not match the current contents.
error: testing/web-platform/tests/jpegxl/resources/sdr_alpha.png: patch does not apply
error: the patch applies to 'testing/web-platform/tests/jpegxl/resources/sdr_alpha.jxl' (e69de29bb2d1d6434b8b29ae775ad8c2e48c5391), which does not match the current contents.
error: testing/web-platform/tests/jpegxl/resources/sdr_alpha.jxl: patch does not apply
error: the patch applies to 'testing/web-platform/tests/jpegxl/resources/hdr_alpha.png' (e69de29bb2d1d6434b8b29ae775ad8c2e48c5391), which does not match the current contents.
error: testing/web-platform/tests/jpegxl/resources/hdr_alpha.png: patch does not apply
error: the patch applies to 'testing/web-platform/tests/jpegxl/resources/hdr_alpha.jxl' (e69de29bb2d1d6434b8b29ae775ad8c2e48c5391), which does not match the current contents.
error: testing/web-platform/tests/jpegxl/resources/hdr_alpha.jxl: patch does not apply

also my sheriff coleague tried it and he gets the same error.

error: the patch applies to 'testing/web-platform/tests/jpegxl/resources/sdr_alpha.png' (e69de29bb2d1d6434b8b29ae775ad8c2e48c5391), which does not match the current contents.

e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 is the hash for an empty file. Is testing/web-platform/tests/jpegxl/resources/sdr_alpha.png an empty file in your tree?

(In reply to Timothy Nikkel (:tnikkel) from comment #10)

error: the patch applies to 'testing/web-platform/tests/jpegxl/resources/sdr_alpha.png' (e69de29bb2d1d6434b8b29ae775ad8c2e48c5391), which does not match the current contents.

e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 is the hash for an empty file. Is testing/web-platform/tests/jpegxl/resources/sdr_alpha.png an empty file in your tree?

yes

Weird.
What happens if you delete the files and then try to apply the patch?

(In reply to Timothy Nikkel (:tnikkel) from comment #12)

Weird.
What happens if you delete the files and then try to apply the patch?

error: testing/web-platform/tests/jpegxl/resources/sdr_alpha.png: does not exist in index
error: the patch applies to 'testing/web-platform/tests/jpegxl/resources/sdr_alpha.jxl' (e69de29bb2d1d6434b8b29ae775ad8c2e48c5391), which does not match the current contents.
error: testing/web-platform/tests/jpegxl/resources/sdr_alpha.jxl: patch does not apply
error: the patch applies to 'testing/web-platform/tests/jpegxl/resources/hdr_alpha.png' (e69de29bb2d1d6434b8b29ae775ad8c2e48c5391), which does not match the current contents.
error: testing/web-platform/tests/jpegxl/resources/hdr_alpha.png: patch does not apply
error: the patch applies to 'testing/web-platform/tests/jpegxl/resources/hdr_alpha.jxl' (e69de29bb2d1d6434b8b29ae775ad8c2e48c5391), which does not match the current contents.
error: testing/web-platform/tests/jpegxl/resources/hdr_alpha.jxl: patch does not apply

I get a different error for that file

I'm not sure, maybe something in phab is mangling my patch after it leaves my system?

Without --apply-to @:

Unknown revision: 0e22635834d4
CInnabar extension not enabled.
Use --apply-to to set the base commit.

--apply-to does expectedly not work around it.

Timothy, could you share the whole stack, e.g. with moz-phab submit main:@ or share the fork anywhere?

There's no patch stack, it's just that one patch. It should apply to any recent commit.

Attached file claude's take

And this is what claude thinks is a fix for the bug.

The bug lies in the archived arcanist repo, so options for fixing it are awkward, this is what claude proposed.

Attachment #9585916 - Flags: feedback?(sheehan)

Comment on attachment 9585916 [details] [diff] [review]
0001-Bug-XXXXXXX-Make-differential.getrawdiff-emit-valid-.patch

I've already fixed the Phabricator-side issue in bug 1865760.

Attachment #9585916 - Flags: feedback?(sheehan) → feedback-

My understanding was that bug 1865760 fixed the issue I ran into bug 2034984 where the binary files in my patches got turned into 0 byte files. In this bug I am facing a different issue: I am trying to land a patch that turns those 0 byte files already in the tree into non-zero byte files and the diff is not applying because the hash of the 0 byte files (the before) is being set to all zeroes, which is not the correct hash. Perhaps I have misunderstood.

Flags: needinfo?(sheehan)
See Also: → 1865760

Will pushing this with the Lando API instead of the web client succeed? Because the merge is on Monday, it should land today.

(In reply to Sebastian Hengst [:aryx] (needinfo me if it's about an intermittent or backout) from comment #24)

Will pushing this with the Lando API instead of the web client succeed?

I don't know the answer to that question, feel free to try.

Because the merge is on Monday, it should land today.

See comment 4, this should be fixed in the beta sims, is it not?

(In reply to Timothy Nikkel (:tnikkel) from comment #4)

This will go away in the next beta sim because of bug 2016688 (marking the test as passing in beta same as nightly), but the underlying problem of empty test/ref images still remains, so this bug should remain open to get that fixed.

Hi, it is green now. Should we leave this bug open?

Flags: needinfo?(tnikkel)

Yes, this bug needs to stay open until those test/ref images are no longer 0 bytes. As they are testing nothing and we are losing jxl test coverage which I need in order to be confident of any changes I make the jxl's color handling (and I have some changes planned before enabling jxl).

Flags: needinfo?(tnikkel)
Pushed by rvandermeulen@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/b9fa5375c410 https://hg.mozilla.org/integration/autoland/rev/27f637e1eded Re-add test/ref images that lando turned into 0-byte files due to a bug. r=gfx-reviewers,layout-reviewers,emilio,bradwerth
Summary: Perma TEST-UNEXPECTED-PASS | /jpegxl/hdr-alpha-reftest.html | Testing http://web-platform.test:8000/jpegxl/hdr-alpha-reftest.html == http://web-platform.test:8000/jpegxl/hdr-alpha-reftest-ref.html when Gecko 152 merges to beta on 2026-05-18 → 0 byte test/ref images landed - Perma TEST-UNEXPECTED-PASS | /jpegxl/hdr-alpha-reftest.html when Gecko 152 merges to beta on 2026-05-18
Regressions: 2040813
Failed to create upstream wpt PR due to merge conflicts. This requires fixup from a wpt sync admin.
Flags: needinfo?(sheehan) → needinfo?(james)

Not sure why unrelated needinfo got cleared by the bot.

Flags: needinfo?(sheehan)

(In reply to Web Platform Test Sync Bot [:wpt-sync] (Matrix: #interop:mozilla.org) from comment #30)

Failed to create upstream wpt PR due to merge conflicts. This requires fixup
from a wpt sync admin.

I looked at the wpt repo, it looks like the changes from bug 2034984 never made it to the wpt repo.

Status: NEW → RESOLVED
Closed: 1 month ago
Resolution: --- → FIXED
Target Milestone: --- → 153 Branch

Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/60014 for changes under testing/web-platform/tests

Flags: needinfo?(james)

Upstream PR merged by moz-wptsync-bot

(In reply to Timothy Nikkel (:tnikkel) from comment #23)

My understanding was that bug 1865760 fixed the issue I ran into bug 2034984 where the binary files in my patches got turned into 0 byte files. In this bug I am facing a different issue: I am trying to land a patch that turns those 0 byte files already in the tree into non-zero byte files and the diff is not applying because the hash of the 0 byte files (the before) is being set to all zeroes, which is not the correct hash. Perhaps I have misunderstood.

Ah apologies, I misunderstood. Looking at comment 33 it seems we're okay now?

In case we aren't, the sheriffs should push a patch to git rm the file, and then we can land a patch (sheriffs or via Phab/Lando) that properly re-adds the file.

Sorry for the inconvenience, hopefully this is the last time anyone has to deal with this. :)

Flags: needinfo?(sheehan) → needinfo?(tnikkel)

Verified fixed in today’s beta simulation push.

Status: RESOLVED → VERIFIED
Flags: needinfo?(tnikkel)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: