Skip to content

[codex] Preserve enabled local features during wrapper updates - #416

Merged
ilysenko merged 1 commit into
ilysenko:mainfrom
avifenesh:codex/preserve-local-features-wrapper-update
Jun 5, 2026
Merged

[codex] Preserve enabled local features during wrapper updates#416
ilysenko merged 1 commit into
ilysenko:mainfrom
avifenesh:codex/preserve-local-features-wrapper-update

Conversation

@avifenesh

Copy link
Copy Markdown
Collaborator

Summary

  • stage enabled linux-features/local/<id> directories into fetched wrapper sources before wrapper rebuilds
  • apply the same preservation path to packaged rebuilds and user-local helper managed checkouts
  • keep upstream top-level feature ids authoritative, so a future built-in feature is not duplicated as local

Root Cause

Wrapper updates rebuild from a freshly fetched wrapper source. If the current install had an enabled local Linux feature, the saved feature config still referenced that id, but the fetched source did not contain linux-features/local/<id>. scripts/lib/linux-features.js then rejected the enabled id and the wrapper update stayed pending.

Validation

  • cargo fmt --all --check
  • bash -n contrib/user-local-install/files/.local/lib/codex-desktop-linux/common.sh tests/scripts_smoke.sh
  • git diff --check
  • cargo test -p codex-update-manager wrapper_apply
  • bash tests/scripts_smoke.sh
  • cargo clippy -p codex-update-manager --all-targets -- -D warnings
  • cargo test -p codex-update-manager

@avifenesh
avifenesh marked this pull request as ready for review June 5, 2026 12:49

@ilysenko ilysenko left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed current head 9a9c0ba. No blockers found. Verified GitHub checks are green and local focused updater/user-local tests pass, including the full scripts smoke suite.

@ilysenko
ilysenko merged commit 546b0c5 into ilysenko:main Jun 5, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants