Skip to content

Require installed update.sh only on the legacy contract#116

Merged
d4rken merged 1 commit into
devfrom
fix/boot-smoke-update-sh-legacy-only
May 28, 2026
Merged

Require installed update.sh only on the legacy contract#116
d4rken merged 1 commit into
devfrom
fix/boot-smoke-update-sh-legacy-only

Conversation

@d4rken
Copy link
Copy Markdown
Member

@d4rken d4rken commented May 28, 2026

The boot-smoke harness required an installed /usr/local/share/airplanes/update.sh on every image contract. update.sh self-installs to that path on any install that runs it, so the assertion only passed on the new contract because the smoke used to run update.sh itself. The overlay-managed image deliberately omits update.sh — it's neither staged into the overlay tree nor a managed-paths entry, overlay feeders update via the runtime-overlay orchestrator, and update.sh refuses to run on an overlay-managed root anyway. With the overlay guard correctly stopping that invocation, the new-contract boot smoke fails on a file the image never ships.

Scope the assertion to the legacy contract, alongside the other legacy-only install artifacts. A full pass over assert_image_contracts against the overlay image's managed paths and staging confirms this is the last assertion that was only satisfied by update.sh running during the smoke; every other path is overlay-symlinked, image-baked, or generated at first boot.

update.sh self-installs to IPATH on any install path that runs it. The overlay-managed new image does not ship it (not staged, not a managed_paths entry); overlay feeders update via the runtime-overlay orchestrator and update.sh refuses to run there via the overlay guard. The boot smoke was only passing this assertion because it used to run update.sh during the smoke. Scope it to the legacy contract.
@d4rken d4rken merged commit cee267a into dev May 28, 2026
13 checks passed
@d4rken d4rken deleted the fix/boot-smoke-update-sh-legacy-only branch May 28, 2026 23:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant