golden: refresh the de25nano hash after #141's image-common (fixes red master) - #151
Merged
Merged
Conversation
…141 and #150) master went red at lint-config after both PRs landed. Neither is wrong and git reported no conflict -- they collided semantically, in the resolved config rather than in any file's text. #141 added `image-common` to DE25NANO_FRAGMENTS, so the de25nano stack resolves from three fragments instead of two (55 -> 86 fragment symbols). #150 recorded the 2026.08 golden hashes against the two-fragment composition, which was correct when it was written. Merged, the recorded de25nano hash describes a stack that no longer exists: expected 81e7f4e6, actual 68cc9ed6. Only de25nano moved. de10nano also gained image-common in #141, but its hash is unchanged (fccaabea) because that half of the refactor only relocated symbols that were already in de10nano-image -- which is exactly the evidence that the DE10 image this repo actually builds and ships is byte-identical to the one #150 validated at 176/176. de10nano-kernel and rt do not take image-common at all and are untouched. REVIEWED, NOT JUST REGENERATED -- this bump has already burned that lesson once (#150's first golden regeneration baked in a uClibc regression). Resolved the de25nano config with and without image-common and diffed: 33 lines, ALL additions, ZERO removals, all of them BR2_PACKAGE_LINUX_FIRMWARE* -- the WiFi/BT firmware set #141 deliberately hoisted so both images select it once instead of mirroring it per board. Nothing else moved: BR2_TOOLCHAIN_USES_GLIBC, BR2_KERNEL_HEADERS_7_1 / 7.1.13, gcc 15.3.0 all intact and BR2_LEGACY clear, so #150's headers fix survived the merge. The drift is #141's intent, and the golden line is what needed to catch up. Note for DE25 specifically: it now pulls linux-firmware, which it did not before. That is #141's design decision, not a side effect of this fix. `check-config-fragments.sh` now passes on all 4 stacks; the other three lint steps in that job were already green. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PFQovqPVshbtdzJnZyr5bc
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes
master, red atlint-configsince run 34010678657.What happened
A semantic merge conflict, not a textual one. Neither PR is wrong and git reported no conflict — they collided in the resolved config rather than in any file's text.
image-commontoDE25NANO_FRAGMENTS, so the de25nano stack now resolves from three fragments instead of two (55 → 86 fragment symbols).Merged, the recorded de25nano hash describes a stack that no longer exists:
One line changes.
de10nanoalso gainedimage-commonin #141, but its hash is unchanged (fccaabea…) because that half of the refactor only relocated symbols already present inde10nano-image— which is the evidence that the DE10 image this repo actually builds and ships is byte-identical to the one #150 validated at 176/176.de10nano-kernelandrtdon't takeimage-commonand are untouched.Reviewed, not just regenerated
This bump has already burned that lesson once — #150's first golden regeneration silently baked in a uClibc regression, so a bare
--update-goldenwas not good enough here.I resolved the de25nano config with and without
image-commonand diffed them:BR2_PACKAGE_LINUX_FIRMWARE*— the WiFi/BT firmware set DE25: mirror the DE10 firmware set via a shared image-common fragment (ADR 0029 D11/D12) #141 deliberately hoisted so both images select it once instead of mirroring it per boardNothing else moved.
BR2_TOOLCHAIN_USES_GLIBC,BR2_KERNEL_HEADERS_7_1/7.1.13, gcc15.3.0all intact andBR2_LEGACYclear — so #150's DE25 headers fix survived the merge.The drift is #141's intent; the golden line is what needed to catch up.
Verification
scripts/check-config-fragments.sh— all 4 stacks reportgolden hash matches,OKlint-configjob (patch headers,kernel-defconfig lockstep) were already green; this was the only failing stepstacks.mkconfirmed unmodified — the with/without comparison was done on a temporary edit that was restored🤖 Generated with Claude Code
https://claude.ai/code/session_01PFQovqPVshbtdzJnZyr5bc