Skip to content

refactor!: remove installer flag inputs#24639

Draft
efrazer-oai wants to merge 15 commits into
mainfrom
refactor/installer-env-only
Draft

refactor!: remove installer flag inputs#24639
efrazer-oai wants to merge 15 commits into
mainfrom
refactor/installer-env-only

Conversation

@efrazer-oai
Copy link
Copy Markdown
Contributor

@efrazer-oai efrazer-oai commented May 26, 2026

Summary

The parent PR makes noninteractive operation environment-only while retaining the existing explicit release selection inputs. This follow-up makes release selection environment-only as well, so automated installs and the Codex updater use the same input contract.

This is a breaking interface change. The shell installer now rejects --release, and the PowerShell installer now rejects -Release. Callers select a version with CODEX_RELEASE; callers already suppress prompts with CODEX_NON_INTERACTIVE=1 from the parent PR.

Stack

  1. #21567 - Adds release and noninteractive environment controls to the installers.
  2. #24637 - Runs standalone updater installs with CODEX_NON_INTERACTIVE=1.
  3. #24639 - Removes explicit release argument inputs in favor of CODEX_RELEASE. (current)

Evidence

macOS environment-only installation plus rejection of the removed --release input:

macos-env-only-removal-smoke.mov

Windows ARM64 PowerShell environment installation, removed-release-parameter rejection, and updater-style invocation through Parallels CLI:

windows-parallels-cli-smoke.mov

Fixed-head Windows ARM64 PowerShell proof for removed-parameter rejection and caller-argument isolation:

Windows PowerShell caller-argument isolation smoke

Testing

Tests: installer syntax and removed-release-argument assertions, macOS live-terminal environment-only installer smoke testing, Windows ARM64 PowerShell environment-only, removed-release-parameter, caller-context, and updater-style smoke testing through Parallels, targeted codex-tui updater tests, formatting, and benchmark smoke validation.

@efrazer-oai
Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown
Contributor

Codex Review: Didn't find any major issues. 👍

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@efrazer-oai efrazer-oai force-pushed the refactor/installer-env-only branch from cf56509 to 427594b Compare May 26, 2026 20:37
@efrazer-oai efrazer-oai force-pushed the fix/noninteractive-standalone-update branch from d53ce15 to 7740204 Compare May 26, 2026 20:37
@efrazer-oai
Copy link
Copy Markdown
Contributor Author

@codex review

Copy link
Copy Markdown
Contributor

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 427594bf7a

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread scripts/install/install.ps1 Outdated
@efrazer-oai
Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown
Contributor

Codex Review: Didn't find any major issues. 🚀

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@efrazer-oai
Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown
Contributor

Codex Review: Didn't find any major issues. Delightful!

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@efrazer-oai efrazer-oai force-pushed the fix/noninteractive-standalone-update branch 2 times, most recently from ef9a1a4 to 7740204 Compare May 26, 2026 21:00
@efrazer-oai efrazer-oai force-pushed the refactor/installer-env-only branch from b7a9ab9 to 432304c Compare May 26, 2026 21:00
@efrazer-oai
Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown
Contributor

Codex Review: Didn't find any major issues. 🎉

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@efrazer-oai efrazer-oai force-pushed the refactor/installer-env-only branch from 432304c to b7a9ab9 Compare May 26, 2026 21:04
@efrazer-oai efrazer-oai force-pushed the fix/noninteractive-standalone-update branch from 7740204 to ef9a1a4 Compare May 26, 2026 22:27
@efrazer-oai efrazer-oai force-pushed the refactor/installer-env-only branch from b7a9ab9 to 432304c Compare May 26, 2026 22:27
@efrazer-oai
Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown
Contributor

Codex Review: Didn't find any major issues. Already looking forward to the next diff.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@efrazer-oai efrazer-oai force-pushed the refactor/installer-env-only branch from 432304c to 2ae9a43 Compare May 26, 2026 23:07
@efrazer-oai
Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown
Contributor

Codex Review: Didn't find any major issues. Nice work!

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@efrazer-oai efrazer-oai marked this pull request as ready for review May 26, 2026 23:51
@efrazer-oai efrazer-oai force-pushed the fix/noninteractive-standalone-update branch from 000dc93 to c11f822 Compare May 27, 2026 00:11
@efrazer-oai efrazer-oai force-pushed the refactor/installer-env-only branch from 48554a4 to 938f714 Compare May 27, 2026 00:12
@efrazer-oai
Copy link
Copy Markdown
Contributor Author

@codex review

@efrazer-oai efrazer-oai marked this pull request as draft May 27, 2026 00:12
@chatgpt-codex-connector
Copy link
Copy Markdown
Contributor

Codex Review: Didn't find any major issues. Breezy!

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@efrazer-oai efrazer-oai force-pushed the fix/noninteractive-standalone-update branch from c11f822 to bbed523 Compare May 27, 2026 00:15
@efrazer-oai efrazer-oai force-pushed the refactor/installer-env-only branch from 938f714 to 21627dd Compare May 27, 2026 00:16
@efrazer-oai
Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown
Contributor

Codex Review: Didn't find any major issues. Delightful!

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@efrazer-oai efrazer-oai force-pushed the fix/noninteractive-standalone-update branch from bbed523 to be34663 Compare May 27, 2026 00:18
@efrazer-oai efrazer-oai force-pushed the refactor/installer-env-only branch from 21627dd to 3de8981 Compare May 27, 2026 00:19
@efrazer-oai
Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown
Contributor

Codex Review: Didn't find any major issues. You're on a roll.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

efrazer-oai added a commit that referenced this pull request May 27, 2026
# Summary

The Codex standalone installers can pause after installation to ask
about an older managed install or launching Codex. That makes unattended
bootstrap and update flows hard to complete reliably.

This PR adds noninteractive installer control on macOS/Linux and Windows
through `CODEX_NON_INTERACTIVE=1`. Noninteractive operation is
environment-only, which gives automated callers one stable way to
suppress prompts. When a noninteractive install leaves an older npm,
bun, or brew-managed Codex installed, the standalone bin is configured
ahead of that command on `PATH` so the newly installed Codex is the one
future launches select. It also supports `CODEX_RELEASE` for callers
that select a release through environment variables while retaining the
existing explicit release inputs. Release selection accepts `latest`,
stable `x.y.z` versions, and Codex prereleases written as
`rust-v0.134.0-alpha.3`, `v0.134.0-alpha.3`, or `0.134.0-alpha.3`; it
validates that shape before constructing release requests.

# Stack

1. [#21567](#21567) - Adds release
and noninteractive environment controls to the installers. (current)
2. [#24637](#24637) - Runs
standalone updater installs with `CODEX_NON_INTERACTIVE=1`.
3. [#24639](#24639) - Removes
explicit release argument inputs in favor of `CODEX_RELEASE`.

# Evidence

| Before | After |
| --- | --- |
| ![Interactive install
prompts](https://github.com/user-attachments/assets/feecb45a-7087-4681-8775-ba57b07e97fa)
| ![Noninteractive install completes without
prompts](https://github.com/user-attachments/assets/53dcc791-383a-46e2-9a95-3b37b80ae053)
|

Environment-controlled macOS install with an existing npm-managed Codex
on `PATH`:


https://github.com/user-attachments/assets/442e0b5b-4a32-4bf5-996b-68784777380d

# Design decisions

Windows installs using the older standalone bin layout still require an
interactive migration confirmation. Noninteractive mode does not
auto-migrate that existing directory because replacing it is a
destructive transition for an early, limited-use layout; unattended
installs on that layout fail with an instruction to rerun interactively.

# Testing

Tests: installer syntax validation, release-selector acceptance and
rejection coverage including PowerShell `Latest` compatibility, macOS
live-terminal installer smoke testing with environment-controlled stable
and prerelease installation and competing PATH precedence, shell
rejection of the omitted noninteractive flag, and Windows ARM64
PowerShell smoke testing with environment-only noninteractive behavior,
retained release input, and competing PATH precedence through Parallels.
@efrazer-oai efrazer-oai force-pushed the fix/noninteractive-standalone-update branch from be34663 to 02370ee Compare May 27, 2026 16:31
shijie-oai pushed a commit that referenced this pull request May 27, 2026
# Summary

The standalone update action currently downloads and runs the Codex
installer as an interactive command. When an existing managed Codex
install is present, accepting an update can therefore enter an installer
prompt instead of completing the update.

This change runs the standalone installer with `CODEX_NON_INTERACTIVE=1`
on macOS/Linux and Windows. The installer environment-variable support
is introduced by the parent PR; this PR wires that behavior into the
Codex CLI update action. The rendered Windows command remains
shell-safe, and long update commands wrap within the update-notice card.
The standard test target snapshots the standalone notice for both
platforms.

# Stack

1. [#21567](#21567) - Adds
environment-controlled release selection and noninteractive installer
behavior.
2. [#24637](#24637) - Runs
standalone updates with `CODEX_NON_INTERACTIVE=1`. (current)
3. [#24639](#24639) - Removes
explicit release argument inputs in favor of `CODEX_RELEASE`.

# Evidence

Standalone updater-shaped macOS install with an existing npm-managed
Codex on `PATH`:


https://github.com/user-attachments/assets/a27fe9e9-db3a-4c39-a514-24bd3d1f01e8

# Testing

Tests: targeted `codex-tui` update-action and update-notice snapshot
tests, Rust formatting, benchmark smoke validation, macOS live-terminal
standalone-update smoke testing, Windows ARM64 PowerShell
standalone-update smoke testing through Parallels, and CI.
Base automatically changed from fix/noninteractive-standalone-update to main May 27, 2026 16:45
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