Skip to content

feat(build): allow release-optimized builds with the dev app identity - #141

Merged
iFurySt merged 3 commits into
mainfrom
codex/pr138-review
Oct 31, 2026
Merged

iFurySt merged 3 commits into
mainfrom
codex/pr138-review

Conversation

@iFurySt

@iFurySt iFurySt commented Oct 31, 2026

Copy link
Copy Markdown
Owner

Continues #138 by @chidev, preserving the original commit. The organization fork rejects maintainer pushes, so the reviewed updates are published from this repository.

OPEN_COMPUTER_USE_APP_VARIANT=dev ./scripts/build-open-computer-use-app.sh release builds optimized code with the Dev bundle identity/name. Explicit Dev builds preserve neighboring release/legacy bundles. Automatic Locked Use embedding is disabled for this combination, and explicitly requesting incompatible release Locked Use components fails before building.

The override is limited to direct app builds. Release/npm packaging and plugin installation reject an inherited override before cleanup or copying, preventing an older release bundle beside a newly built Dev bundle from being accidentally selected. Existing behavior with the variable unset is preserved.

Validation:

  • Real native builds: Developer ID signed release/Dev (deep/strict signature verification), default debug, and default release; correct bundle identities/resources and neighboring-file preservation.
  • Two isolated guard tests cover invalid variants, incompatible Locked Use, packaging with/without rebuild and plugin installation. Added to the distribution workflow.
  • Existing release packaging tests: 2 passed. Shell syntax, action pinning, docs and diff checks pass.
  • Reproducible real build smoke: python3 scripts/tests/macos-app-variant-smoke.py --signed.

No Swift runtime changes, installed-app changes, permission changes or release publication.

chidev and others added 3 commits October 31, 2026 00:59
OPEN_COMPUTER_USE_APP_VARIANT=dev keeps the dev bundle identifier, name
and variant with release optimization, and does not remove neighboring
release or legacy bundles. Automatic Locked Use packaging stays with the
release identity; an explicit request with a dev release build is
refused. Unset, the script is unchanged.
@iFurySt

iFurySt commented Oct 31, 2026

Copy link
Copy Markdown
Owner Author

LGTM. Thanks!

@iFurySt
iFurySt merged commit 6505cbc into main Oct 31, 2026
1 check 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