Fix updater fallback bundle inputs#991
Conversation
ilysenko
left a comment
There was a problem hiding this comment.
Thanks for fixing the two stale fallback inputs. One blocker remains in the same manifest-less fallback: it copies the global-dictation feature but not the global-dictation-linux source required by its stage hook. Because updater rebuilds still apply the saved enabled-feature configuration, enabling Global Dictation makes this fallback fail while looking for global-dictation-linux/Cargo.toml. Please make the fallback include this source when the feature is enabled, without making a disabled optional feature mandatory, and add a regression test covering the enabled configuration.
|
Thanks for catching this and for the detailed feedback. Addressed the requested fallback behavior in The manifest-less fallback now reads the effective saved Linux feature configuration and copies I also added regression coverage for the enabled configuration while preserving the existing disabled-case assertion. Clippy, the full updater test suite, and the required CI checks pass. |
|
Sorry for the churn here. We re-checked the review and the earlier request to handle Global Dictation in this PR was our mistake. This PR's original scope was the manifest-less updater fallback bundle inputs, and the missing I pushed a small revert commit that removes the Global Dictation-specific changes and keeps the original fallback fix intact. |
Summary
notification-actions-linuxin fallback update-builder copieslauncher/cli-launch-path.pyin the same fallback pathcodex-update-managerto0.10.1Root cause
The packaged update-builder manifest already captures these files, but the fallback
REQUIRED_BUNDLE_FILESlist used by source checkouts without that manifest was stale.notification-actions-linuxbecame a Cargo workspace member in #895, whilelauncher/cli-launch-path.pybecame an installer input in #962. A fallback rebuild therefore copied the root workspace manifest without the notification crate and later omitted the CLI launch helper expected byinstall.sh.This caused rebuilds to fail first while Cargo loaded the workspace and then, after working around that missing crate, while the installer copied the CLI launch helper.
User impact
Updater rebuilds from a manifest-less builder checkout now receive the complete Cargo workspace and launcher inputs instead of failing partway through local package generation.
Validation
cargo fmt --all -- --checkcargo check -p codex-update-managercargo test -p codex-update-manager(261 passed)bash tests/scripts_smoke.shwaiting_for_app_exit