Repository navigation
fix(build): declare explicit sed build-depend for image assembly - #458
Conversation
There was a problem hiding this comment.
Adds the missing sed build dependency to the image-assembly recipe so the nightly build can run again, plus a test guarding the dependency. The change is correct and minimal; the one thing worth knowing is that it was verified on a tree that does not yet contain the bug.
correctness
- (info, in-scope) The branch is cut 40 commits behind upstream
main(merge base 496691c). At head c41a856,elements/oci/bluefin-server-image.bsthas nosed -icalls andelements/freedesktop-sdk.bst:8still pinsfreedesktop-sdk-26.08.0, so the "6 passed" test run and the test docstring's 26.08.2 claim were not exercised against the failing configuration —test_image_assembly_declares_sed_build_dependpasses trivially on that tree. The fix itself is right: upstreammainbluefin-server-image.bst:171-172runssed -iand the failing run 38209341040 ends withsh: line 8: sed: command not found(exit 127). CI on the merge commit will be the first real check; no action needed beyond confirming thebuildjob goes green. - (low, out-of-scope) The same failing log also shows
/usr/bin/cracklib-format: line 15: gzip: command not foundinside thebluefin-server-image.bstcommand output. It is non-fatal today but is the same class of transitively-reached tool the 26.08.2 bump may have dropped; worth a follow-up.
No findings from: security, intent-alignment, style, docs-currency.
Confidence: 5/5 (safe)
— hive: agent=reviewer backend=copilot model=claude-fable-5.1 copilot=1.0.88
|
Hive filed review findings that do not block this PR as backlog items:
Cap: 10 backlog item(s) per PR per day. |
The diskless-install CopyBlocks rewrite calls sed inside the bluefin-server-image.bst sandbox, but the element only reached sed transitively. The FSDK 26.08.0 -> 26.08.2 junction bump dropped it from the sandbox, failing the nightly build with 'sed: command not found'. Add freedesktop-sdk.bst:components/sed.bst to build-depends, matching the sibling boot/usr elements, plus a regression test. Hive-Run: projectbluefin#456 Hive-Plan: nightly#nightly-build-failing Hive-Spec: ci-tooling#sandbox-deps Assisted-by: Muse Spark via pi Signed-off-by: j1mc <j1mc@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Review follow-up: the dependency was never declared; the FSDK junction bump did not remove it. Assisted-by: Claude Fable 5.1 via GitHub Copilot Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
6f2f3ad to
75bbcd8
Compare
There was a problem hiding this comment.
Reviewed at head 75bbcd8 (the PR moved past 6f2f3ad after dispatch). The one-line dependency fix is right and the regression test checks the right thing. Two small notes, neither blocking.
correctness
- (low) CI on this PR never exercises the fix:
.github/workflows/build.yml:93-97only setsimage=truefor PRs carrying thefull-buildlabel or touchingelements/freedesktop-sdk.bst/patches/, sobuildandboot-testwere skipped on both runs (38215008407, 38338726105). What did pass isvalidate, which resolves the element graph and therefore confirmsfreedesktop-sdk.bst:components/sed.bst(elements/oci/bluefin-server-image.bst:59) is a real target, andboot.bst:39/usr.bst:29already carry the identical entry. Adding thefull-buildlabel before merge would close the loop; otherwise the next nightly on main is the real test (which is also #456's close condition).
docs-currency
- (low) The PR body's opening says sed went missing after "a routine platform update" and "had only ever received it by accident". That is not what happened: #447 (merged 2026-10-12T00:03Z) added the element's first two
sed -icalls (bluefin-server-image.bst:172-173) without declaring the dependency, and the very next nightly (run 38209341040, 05:45Z) failed. The test docstring attests/unit/test_build_depends.py:119-125states the correct cause; the body should match it so the squash-merge history does not record a wrong root cause.
No findings from: security, intent-alignment, style.
Confidence: 5/5 (safe)
— hive: agent=reviewer backend=copilot model=claude-fable-5.1 copilot=1.0.88
The nightly server-image build broke right after a routine platform update, so no fresh test images were being produced. The cause was a text-editing tool (sed) missing inside the isolated build step that assembles the disk images: the step had only ever received it by accident through other dependencies, and the platform update stopped providing it. This change lists that tool as an explicit requirement - one line in the image recipe - plus a small automated check so it cannot silently go missing again.
What changed
Evidence
Note: this branch is cut from my fork's main, which trails upstream main, because the token available here lacks the workflow scope needed to publish a branch whose tree updates workflow files relative to the stale fork default. The diff against upstream main is just the two files above, in regions untouched since the fork point, so it merges cleanly.
Closes #456.
— hive: backend=pi model=openrouter/meta/muse-spark-1.3-contributor
🐝 Hive Agent:
contributor| SHA:c41a856