just-every-code
e4384eaacd
merge(upstream): merge upstream/main into upstream-merge (by-bucket)\n\n- Keep ours: codex-cli (resolve package.json, drop upstream rg/installer scripts)\n- Keep ours: workflows (ci.yml, rust-release.yml remain deleted)\n- Adopt upstream elsewhere; no core/tooling regressions\n\nBuild: verify.sh build_fast=ok api_check=ok
2025-09-24 06:36:58 +00:00
b3dfe01813
chore(deps): bump log from 0.4.27 to 0.4.28 in /codex-rs ( #4027 )
...
[//]: # (dependabot-start)
⚠️ **Dependabot is rebasing this PR** ⚠️
Rebasing might not happen immediately, so don't worry if this takes some
time.
Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.
---
[//]: # (dependabot-end)
Bumps [log](https://github.com/rust-lang/log ) from 0.4.27 to 0.4.28.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/log/releases ">log's
releases</a>.</em></p>
<blockquote>
<h2>0.4.28</h2>
<h2>What's Changed</h2>
<ul>
<li>ci: drop really old trick and ensure MSRV for all feature combo by
<a href="https://github.com/tisonkun "><code>@tisonkun</code></a> in <a
href="https://redirect.github.com/rust-lang/log/pull/676 ">rust-lang/log#676</a></li>
<li>chore: fix some typos in comment by <a
href="https://github.com/xixishidibei "><code>@xixishidibei</code></a>
in <a
href="https://redirect.github.com/rust-lang/log/pull/677 ">rust-lang/log#677</a></li>
<li>Unhide <code>#[derive(Debug)]</code> in example by <a
href="https://github.com/ZylosLumen "><code>@ZylosLumen</code></a> in <a
href="https://redirect.github.com/rust-lang/log/pull/688 ">rust-lang/log#688</a></li>
<li>Chore: delete compare_exchange method for AtomicUsize on platforms
without atomics by <a
href="https://github.com/HaoliangXu "><code>@HaoliangXu</code></a> in <a
href="https://redirect.github.com/rust-lang/log/pull/690 ">rust-lang/log#690</a></li>
<li>Add <code>increment_severity()</code> and
<code>decrement_severity()</code> methods for <code>Level</code> and
<code>LevelFilter</code> by <a
href="https://github.com/nebkor "><code>@nebkor</code></a> in <a
href="https://redirect.github.com/rust-lang/log/pull/692 ">rust-lang/log#692</a></li>
<li>Prepare for 0.4.28 release by <a
href="https://github.com/KodrAus "><code>@KodrAus</code></a> in <a
href="https://redirect.github.com/rust-lang/log/pull/695 ">rust-lang/log#695</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/xixishidibei "><code>@xixishidibei</code></a>
made their first contribution in <a
href="https://redirect.github.com/rust-lang/log/pull/677 ">rust-lang/log#677</a></li>
<li><a
href="https://github.com/ZylosLumen "><code>@ZylosLumen</code></a> made
their first contribution in <a
href="https://redirect.github.com/rust-lang/log/pull/688 ">rust-lang/log#688</a></li>
<li><a
href="https://github.com/HaoliangXu "><code>@HaoliangXu</code></a> made
their first contribution in <a
href="https://redirect.github.com/rust-lang/log/pull/690 ">rust-lang/log#690</a></li>
<li><a href="https://github.com/nebkor "><code>@nebkor</code></a> made
their first contribution in <a
href="https://redirect.github.com/rust-lang/log/pull/692 ">rust-lang/log#692</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/rust-lang/log/compare/0.4.27...0.4.28 ">https://github.com/rust-lang/log/compare/0.4.27...0.4.28 </a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/log/blob/master/CHANGELOG.md ">log's
changelog</a>.</em></p>
<blockquote>
<h2>[0.4.28] - 2025-09-02</h2>
<h2>What's Changed</h2>
<ul>
<li>ci: drop really old trick and ensure MSRV for all feature combo by
<a href="https://github.com/tisonkun "><code>@tisonkun</code></a> in <a
href="https://redirect.github.com/rust-lang/log/pull/676 ">rust-lang/log#676</a></li>
<li>Chore: delete compare_exchange method for AtomicUsize on platforms
without atomics by <a
href="https://github.com/HaoliangXu "><code>@HaoliangXu</code></a> in <a
href="https://redirect.github.com/rust-lang/log/pull/690 ">rust-lang/log#690</a></li>
<li>Add <code>increment_severity()</code> and
<code>decrement_severity()</code> methods for <code>Level</code> and
<code>LevelFilter</code> by <a
href="https://github.com/nebkor "><code>@nebkor</code></a> in <a
href="https://redirect.github.com/rust-lang/log/pull/692 ">rust-lang/log#692</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/xixishidibei "><code>@xixishidibei</code></a>
made their first contribution in <a
href="https://redirect.github.com/rust-lang/log/pull/677 ">rust-lang/log#677</a></li>
<li><a
href="https://github.com/ZylosLumen "><code>@ZylosLumen</code></a> made
their first contribution in <a
href="https://redirect.github.com/rust-lang/log/pull/688 ">rust-lang/log#688</a></li>
<li><a
href="https://github.com/HaoliangXu "><code>@HaoliangXu</code></a> made
their first contribution in <a
href="https://redirect.github.com/rust-lang/log/pull/690 ">rust-lang/log#690</a></li>
<li><a href="https://github.com/nebkor "><code>@nebkor</code></a> made
their first contribution in <a
href="https://redirect.github.com/rust-lang/log/pull/692 ">rust-lang/log#692</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/rust-lang/log/compare/0.4.27...0.4.28 ">https://github.com/rust-lang/log/compare/0.4.27...0.4.28 </a></p>
<h3>Notable Changes</h3>
<ul>
<li>MSRV is bumped to 1.61.0 in <a
href="https://redirect.github.com/rust-lang/log/pull/676 ">rust-lang/log#676</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/rust-lang/log/commit/6e1735597bb21c5d979a077395df85e1d633e077 "><code>6e17355</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/log/issues/695 ">#695</a>
from rust-lang/cargo/0.4.28</li>
<li><a
href="https://github.com/rust-lang/log/commit/57719dbef54de1c9b91b986845e4285d09c9e644 "><code>57719db</code></a>
focus on user-facing source changes in the changelog</li>
<li><a
href="https://github.com/rust-lang/log/commit/e0630c6485c6ca6da22888c319d2c3d2e53cb1ae "><code>e0630c6</code></a>
prepare for 0.4.28 release</li>
<li><a
href="https://github.com/rust-lang/log/commit/60829b11f50e34497f4dcaff44561ee908c796f9 "><code>60829b1</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/log/issues/692 ">#692</a>
from nebkor/up-and-down</li>
<li><a
href="https://github.com/rust-lang/log/commit/95d44f8af52df35d78adb766bef79d8f489022a0 "><code>95d44f8</code></a>
change names of log-level-changing methods to be more descriptive</li>
<li><a
href="https://github.com/rust-lang/log/commit/2b63dfada6394c537682de4834ae45eaf3bad216 "><code>2b63dfa</code></a>
Add <code>up()</code> and <code>down()</code> methods for
<code>Level</code> and <code>LevelFilter</code></li>
<li><a
href="https://github.com/rust-lang/log/commit/3aa1359e926a39f841791207d6e57e00da3e68e2 "><code>3aa1359</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/log/issues/690 ">#690</a>
from HaoliangXu/master</li>
<li><a
href="https://github.com/rust-lang/log/commit/1091f2cbd21817872235eff67b8e0e68e5ec4e41 "><code>1091f2c</code></a>
Chore:delete compare_exchange method for AtomicUsize on platforms</li>
<li><a
href="https://github.com/rust-lang/log/commit/24c5f44efd0828ed1c6dcec5adf5aebf97f0f400 "><code>24c5f44</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/log/issues/688 ">#688</a>
from ZylosLumen/patch-1</li>
<li><a
href="https://github.com/rust-lang/log/commit/44984954670f3144af1d1f323e36690bb72788f4 "><code>4498495</code></a>
Unhide <code>#[derive(Debug)]</code> in example</li>
<li>Additional commits viewable in <a
href="https://github.com/rust-lang/log/compare/0.4.27...0.4.28 ">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <[email protected] >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-23 23:07:54 -07:00
3e83f6bf33
chore(deps): bump serde from 1.0.224 to 1.0.226 in /codex-rs ( #4031 )
...
[//]: # (dependabot-start)
⚠️ **Dependabot is rebasing this PR** ⚠️
Rebasing might not happen immediately, so don't worry if this takes some
time.
Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.
---
[//]: # (dependabot-end)
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.224 to
1.0.226.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/serde-rs/serde/releases ">serde's
releases</a>.</em></p>
<blockquote>
<h2>v1.0.226</h2>
<ul>
<li>Deduplicate variant matching logic inside generated Deserialize impl
for adjacently tagged enums (<a
href="https://redirect.github.com/serde-rs/serde/issues/2935 ">#2935</a>,
thanks <a
href="https://github.com/Mingun "><code>@Mingun</code></a>)</li>
</ul>
<h2>v1.0.225</h2>
<ul>
<li>Avoid triggering a deprecation warning in derived Serialize and
Deserialize impls for a data structure that contains its own
deprecations (<a
href="https://redirect.github.com/serde-rs/serde/issues/2879 ">#2879</a>,
thanks <a
href="https://github.com/rcrisanti "><code>@rcrisanti</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/serde-rs/serde/commit/179954784683f35942ac2e1f076e0361b47f8178 "><code>1799547</code></a>
Release 1.0.226</li>
<li><a
href="https://github.com/serde-rs/serde/commit/2dbeefb11bd7fb97aceb49a09e8ba5a25e268b2e "><code>2dbeefb</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/serde/issues/2935 ">#2935</a>
from Mingun/dedupe-adj-enums</li>
<li><a
href="https://github.com/serde-rs/serde/commit/8a3c29ff19126ca021c29039bfcd1e829b1dfab3 "><code>8a3c29f</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/serde/issues/2986 ">#2986</a>
from dtolnay/didnotwork</li>
<li><a
href="https://github.com/serde-rs/serde/commit/defc24d361552d872f92d9e7b98afee64c414d6d "><code>defc24d</code></a>
Remove "did not work" comment from test suite</li>
<li><a
href="https://github.com/serde-rs/serde/commit/23166107601322080d19e8600f9ac84f5ace8b9b "><code>2316610</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/serde/issues/2929 ">#2929</a>
from Mingun/flatten-enum-tests</li>
<li><a
href="https://github.com/serde-rs/serde/commit/c09e2bd690b2e12cd355e93ca4c9beb8b3ff98e9 "><code>c09e2bd</code></a>
Add tests for flatten unit variant in adjacently tagged (tag + content)
enums</li>
<li><a
href="https://github.com/serde-rs/serde/commit/fe7dcc4cd8b74682c97f8d8fec18ca91c23c6177 "><code>fe7dcc4</code></a>
Test all possible orders of map entries for enum-flatten-in-struct
representa...</li>
<li><a
href="https://github.com/serde-rs/serde/commit/a20e66e1313f64f1ebadd29da1e90eecfd06fdbd "><code>a20e66e</code></a>
Check serialization in
flatten::enum_::internally_tagged::unit_enum_with_unkn...</li>
<li><a
href="https://github.com/serde-rs/serde/commit/1c1a5d95cd32fa0d5bc1456098b5ebc113a97190 "><code>1c1a5d9</code></a>
Reorder struct_ and newtype tests of adjacently_tagged enums to match
order i...</li>
<li><a
href="https://github.com/serde-rs/serde/commit/ee3c2372fbe0019ec19b6327213c6acfade435fe "><code>ee3c237</code></a>
Opt in to generate-macro-expansion when building on docs.rs</li>
<li>Additional commits viewable in <a
href="https://github.com/serde-rs/serde/compare/v1.0.224...v1.0.226 ">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <[email protected] >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-23 23:06:30 -07:00
Michael Bolin and GitHub
bada69ae51
fix: npm publish --tag alpha when building an alpha release ( #4112 )
...
This updates our release process so that when we build an alpha of the
Codex CLI (as determined by pushing a tag of the format
`rust-v<cli-version>-alpha.<alpha-version>`), we will now publish the
corresponding npm module publicly, but under the `alpha` tag. As you can
see, this PR adds `--tag alpha` to the `npm publish` command, as
appropriate.
2025-09-23 23:03:43 -07:00
Michael Bolin and GitHub
92b1dcf0cc
fix: vendor ripgrep in the npm module ( #3660 )
...
We try to ensure ripgrep (`rg`) is provided with Codex.
- For `brew`, we declare it as a dependency of our formula:
https://github.com/Homebrew/homebrew-core/blob/08d82d8b006a19efbe234477bc8b18d35b5fef50/Formula/c/codex.rb#L24
- For `npm`, we declare `@vscode/ripgrep` as a dependency, which
installs the platform-specific binary as part of a `postinstall` script:
https://github.com/openai/codex/blob/05228dc189389b9b3939ae60a749221413375d3e/codex-cli/package.json#L22
- Users who download the CLI directly from GitHub Releases are on their
own.
In practice, I have seen `@vscode/ripgrep` fail on occasion. Here is a
trace from a GitHub workflow:
```
npm error code 1
npm error path /Users/runner/hostedtoolcache/node/20.19.5/arm64/lib/node_modules/@openai/codex/node_modules/@vscode/ripgrep
npm error command failed
npm error command sh -c node ./lib/postinstall.js
npm error Finding release for v13.0.0-13
npm error GET https://api.github.com/repos/microsoft/ripgrep-prebuilt/releases/tags/v13.0.0-13
npm error Deleting invalid download cache
npm error Download attempt 1 failed, retrying in 2 seconds...
npm error Finding release for v13.0.0-13
npm error GET https://api.github.com/repos/microsoft/ripgrep-prebuilt/releases/tags/v13.0.0-13
npm error Deleting invalid download cache
npm error Download attempt 2 failed, retrying in 4 seconds...
npm error Finding release for v13.0.0-13
npm error GET https://api.github.com/repos/microsoft/ripgrep-prebuilt/releases/tags/v13.0.0-13
npm error Deleting invalid download cache
npm error Download attempt 3 failed, retrying in 8 seconds...
npm error Finding release for v13.0.0-13
npm error GET https://api.github.com/repos/microsoft/ripgrep-prebuilt/releases/tags/v13.0.0-13
npm error Deleting invalid download cache
npm error Download attempt 4 failed, retrying in 16 seconds...
npm error Finding release for v13.0.0-13
npm error GET https://api.github.com/repos/microsoft/ripgrep-prebuilt/releases/tags/v13.0.0-13
npm error Deleting invalid download cache
npm error Error: Request failed: 403
```
To eliminate this error, this PR changes things so that we vendor the
`rg` binary into https://www.npmjs.com/package/@openai/codex so it is
guaranteed to be included when a user runs `npm i -g @openai/codex`.
The downside of this approach is the increase in package size: we
include the `rg` executable for six architectures (in addition to the
six copies of `codex` we already include). In a follow-up, I plan to add
support for "slices" of our npm module, so that soon users will be able
to do:
```
npm install -g @openai/codex@aarch64-apple-darwin
```
Admittedly, this is a sizable change and I tried to clean some things up
in the process:
- `install_native_deps.sh` has been replaced by `install_native_deps.py`
- `stage_release.sh` and `stage_rust_release.py` has been replaced by
`build_npm_package.py`
We now vendor in a DotSlash file for ripgrep (as a modest attempt to
facilitate local testing) and then build up the extension by:
- creating a temp directory and copying `package.json` over to it with
the target value for `"version"`
- finding the GitHub workflow that corresponds to the
`--release-version` and copying the various `codex` artifacts to
respective `vendor/TARGET_TRIPLE/codex` folder
- downloading the `rg` artifacts specified in the DotSlash file and
copying them over to the respective `vendor/TARGET_TRIPLE/path` folder
- if `--pack-output` is specified, runs `npm pack` on the temp directory
To test, I downloaded the artifact produced by this CI job:
https://github.com/openai/codex/actions/runs/17961595388/job/51085840022?pr=3660
and verified that `node ./bin/codex.js 'which -a rg'` worked as
intended.
2025-09-23 23:00:33 -07:00
just-every-code
c63ad77b7b
chore(upstream-merge): sync with upstream/main by bucket; adopt exec updates and reconcile to fork protocol\n\n- Prefer-theirs: exec crate (cli flag + event processor)\n- Reconcile protocol mismatches (StreamErrorEvent removed, WebSearchComplete, stdout/stderr, UpdatePlanArgs{name,plan})\n- Preserve fork invariants (browser/agent tools, UA/version, TUI ordering)\n\nBuild: ./build-fast.sh OK; verify.sh OK (no warnings)
2025-09-24 01:21:01 +00:00
Dylan and GitHub
ebcce539e9
[exec] add include-plan-tool flag and print it nicely ( #3461 )
...
### Summary
Sometimes in exec runs, we want to allow the model to use the
`update_plan` tool, but that's not easily configurable. This change adds
a feature flag for this, and formats the output so it's human-readable
## Test Plan
<img width="1280" height="354" alt="Screenshot 2025-09-11 at 12 39
44 AM"
src="https://github.com/user-attachments/assets/72e11070-fb98-47f5-a784-5123ca7333d9 "
/>
2025-09-23 16:50:59 -07:00
just-every-code
1a60eac569
merge(upstream): by-bucket sync with openai/codex@main
...
- Keep forked core/TUI (browser/agent tools, strict ordering, UA/version)
- Adopt safe upstream changes in shared crates; wire rate-limit events
- Preserve core RateLimitSnapshotEvent; adapt client imports accordingly
Status: verify.sh PASS; build-fast.sh PASS (no warnings)
2025-09-23 23:34:06 +00:00
Ahmed Ibrahim and GitHub
90b9d74022
Send limits when getting rate limited ( #4102 )
...
Users need visibility on rate limits when they are rate limited.
2025-09-23 22:56:34 +00:00
just-every-code
6d698902c3
merge(upstream): incorporate openai/codex@main into upstream-merge
...
- Adopt upstream changes in exec, mcp-server, and common by bucket.
- Preserve fork-specific core (codex.rs, browser/agent tools, UA/version).
- Add Prompt.output_schema; keep our Text controls; adjust tests.
- Fallback to Op::UserInput for UserTurn in exec and MCP.
- Keep ours for core codex files to preserve TUI/stream ordering.
verify.sh: pass; build-fast.sh: pass (no warnings).
2025-09-23 21:30:54 +00:00
github-actions[bot]
0549af7b5c
chore(merge): enforce policy removals (images + cargo caches)
2025-09-23 21:13:02 +00:00
just-every-code
2d461bb1aa
docs(merge): add MERGE_REPORT summarizing by-bucket decisions and verify status
2025-09-23 21:08:52 +00:00
pakrym-oai and GitHub
05228dc189
Add exec output-schema parameter ( #4079 )
...
Adds structured output to `exec` via the `--structured-output`
parameter.
2025-09-23 13:59:16 -07:00
just-every-code
0121f0f1fb
merge(upstream): upstream main into upstream-merge using by-bucket policy\n\n- Prefer ours for MCP server files to preserve UA/tool invariants\n- Adopt upstream for Cargo.lock and protocol updates\n- Purged any reintroduced CLI image assets
2025-09-23 20:43:34 +00:00
just-every-code
e771a21c40
docs(merge): add by-bucket upstream MERGE_PLAN with fork policies
2025-09-23 20:42:45 +00:00
pakrym-oai and GitHub
1bcb320391
Use anyhow::Result in tests for error propagation ( #4105 )
2025-09-23 13:31:36 -07:00
just-every-code
cd6e39f9a0
merge(upstream): sync with openai/codex@main (by-bucket)
...
- Keep ours in core codex.rs and TUI history_cell to preserve tool gating, UA/version, and strict streaming ordering
- Keep ours in compact.rs due to API differences; align triggers to upstream SUMMARIZATION_PROMPT
- Adopt upstream in tests and general areas outside protected buckets
Build: ./build-fast.sh ok; verify.sh guards ok
2025-09-23 18:01:39 +00:00
Ahmed Ibrahim and GitHub
c80bc989ca
Refactor codex card layout ( #4069 )
...
Refactor it to be used in status
2025-09-23 17:37:14 +00:00
jif-oai and GitHub
10172b52ce
chore: compact do not modify instructions ( #4088 )
...
Keep the developer instruction and insert the summarisation message as a
user message instead
2025-09-23 17:59:17 +01:00
just-every-code
f9a4aecd01
merge(upstream): sync with openai/codex@main via by-bucket policy
...
- Adopt upstream changes in codex-rs/common and workspace manifests
- Resolve lockfile to upstream; validated with build-fast.sh
- Preserve fork invariants: browser_/agent_/web_fetch tools, UA/version, TUI ordering
Build: ./build-fast.sh ok; verify.sh guards ok
2025-09-23 16:54:19 +00:00
just-every-code
2a36e83f0d
merge(upstream): sync with openai/codex@main via by-bucket
...
- Keep fork TUI and core tool wiring (browser_*/agent_*/web_fetch) and UA/version invariants
- Adopt upstream git-tooling crate and test updates
- Verify: scripts/upstream-merge/verify.sh ok; ./build-fast.sh ok
2025-09-23 16:33:55 +00:00
jif-oai and GitHub
8af854a5ae
feat: readiness tool ( #4090 )
...
Readiness flag with token-based subscription and async wait function
that waits for all the subscribers to be ready
2025-09-23 17:27:20 +01:00
Ahmed Ibrahim and GitHub
22dcb65e72
Rate limits warning ( #4075 )
...
Only show the highest warning rate.
Change the warning threshold
2025-09-23 09:15:16 -07:00
ae and GitHub
adda5dccdc
fix: usage data tweaks ( #4082 )
...
- Only show the usage data section when signed in with ChatGPT. (Tested
with Chat auth and API auth.)
- Friendlier string change.
- Also removed `.dim()` on the string, since it was the only string in
`/status` that was dim.
2025-09-23 09:14:02 -07:00
jif-oai and GitHub
e7d3f364c9
feat: git tooling for undo ( #3914 )
...
## Summary
Introduces a “ghost commit” workflow that snapshots the tree without
touching refs.
1. git commit-tree writes an unreferenced commit object from the current
index, optionally pointing to the current HEAD as its parent.
2. We then stash that commit id and use git restore --source <ghost> to
roll the worktree (and index) back to the recorded snapshot later on.
## Details
- Ghost commits live only as loose objects—we never update branches or
tags—so the repo history stays untouched while still giving us a full
tree snapshot.
- Force-included paths let us stage otherwise ignored files before
capturing the tree.
- Restoration rehydrates both tracked and force-included files while
leaving untracked/ignored files alone.
2025-09-23 16:59:52 +01:00
pakrym-oai and GitHub
9ea555c993
Use TestCodex builder in stream retry tests ( #4096 )
...
## Summary
- refactor the stream retry integration tests to construct conversations
through `TestCodex`
- remove bespoke config and tempdir setup now handled by the shared
builder
## Testing
- cargo test -p codex-core --test all
stream_error_allows_next_turn::continue_after_stream_error
- cargo test -p codex-core --test all
stream_no_completed::retries_on_early_close
------
https://chatgpt.com/codex/tasks/task_i_68d2b94d83888320bc75a0bc3bd77b49
2025-09-23 08:57:08 -07:00
just-every-code
2635fe6874
merge(upstream): by-bucket merge upstream/main into upstream-merge
...
- Adopt upstream changes in openai_model_info.rs
- Preserve fork TUI/core/tooling invariants per policyverify.sh: PASS; build-fast.sh: PASS
2025-09-23 15:35:45 +00:00
jif-oai and GitHub
df2509c4b0
chore: enable auto-compaction for gpt-5-codex ( #4093 )
...
enable auto-compaction for `gpt-5-codex` at 220k tokens
2025-09-23 16:12:36 +01:00
github-actions[bot]
e463e36250
chore(merge): enforce policy removals (images + cargo caches)
2025-09-23 15:00:05 +00:00
just-every-code
cf92ca60ac
docs(merge): add MERGE_REPORT summarizing upstream sync decisions
2025-09-23 14:55:45 +00:00
just-every-code
75fc604e9c
Merge upstream/main: adopt upstream user notifications and core tests; preserve fork core/codex.rs and TUI
...
- Keep ours for codex-rs/core/src/codex.rs per policy
- Include both stream_order and user_notification tests
- Add allow(dead_code) on UserNotifier to maintain zero warnings
Build: ./build-fast.sh ok (no warnings)
Guards: verify.sh ok (tools parity, UA/version)
2025-09-23 14:55:27 +00:00
pakrym-oai and GitHub
b919c9f7de
Add notifier tests ( #4064 )
...
Proposal:
1. Use anyhow for tests and avoid unwrap
2. Extract a helper for starting a test instance of codex
2025-09-23 14:25:46 +00:00
just-every-code
bf40cbe220
merge(upstream): by-bucket merge upstream/main into upstream-merge\n\n- Keep ours for TUI fixtures; purge binary-size-log.jsonl\n- Adopt upstream MCP typed config tests (GetUserSavedConfigResponse)\n- Sync defaults to gpt-5-codex where applicable\n\nverify.sh: PASS; build-fast.sh: PASS
2025-09-23 03:40:47 +00:00
Thibault Sottiaux and GitHub
79dc2986a5
feat: update default ( #4076 )
...
Changes:
- Default model and docs now use gpt-5-codex.
- Disables the GPT-5 Codex NUX by default.
- Keeps presets available for API key users.
2025-09-22 20:10:52 -07:00
just-every-code
91964c4ac1
merge(upstream): sync openai/codex@main into upstream-merge (by-bucket)
...
- Prefer ours: TUI, core openai_tools/codex.rs/agent_tool/default_client, workflows, docs
- Prefer theirs: common/, exec/, file-search/
- Purge reintroduced .github/codex-cli-*.{png,jpg,jpeg,webp}
- Reconcile compact module with fork API (Session events, Prompt shape, history)
- Fix CLI deps (futures, reqwest, regex, flate2, tar, zip, uuid, which, tempfile)
verify.sh: build_fast=ok, api_check=ok
2025-09-22 23:50:45 +00:00
dedrisian-oai and GitHub
d684de3ca4
Truncate potentially long user messages in compact message. ( #4068 )
...
If a prior user message is massive, any future `/compact` task would
fail because we're verbatim copying the user message into the new chat.
2025-09-22 23:12:26 +00:00
just-every-code
4dc5a95db3
merge(upstream): upstream/main into upstream-merge (by-bucket)
...
- Keep fork TUI + CLI invariants (bin=code, resume, doctor/preview/llm)
- Adopt upstream in shared areas; accept upstream Cargo.lock
- Verify: build_fast=ok, api_check=ok
2025-09-22 22:50:57 +00:00
github-actions[bot]
be47e18861
chore(merge): enforce policy removals (images + cargo caches)
2025-09-22 22:37:49 +00:00
just-every-code
0d1b49af96
chore(upstream-merge): add MERGE_PLAN + MERGE_REPORT; verify ok (build_fast=ok, api_check=ok, guards=ok)
2025-09-22 22:33:38 +00:00
Jeremy Rose and GitHub
6e6d6db20d
fix codex resume message at end of session ( #3957 )
...
This was only being printed when running the codex-tui executable
directly, not via the codex-cli wrapper.
2025-09-22 22:24:31 +00:00
just-every-code
199aba3fbc
Merge upstream/main: preserve TUI/core invariants; adopt upstream for shared crates
2025-09-22 22:17:50 +00:00
Jeremy Rose and GitHub
4566db63e1
Fix pager overlay clear between pages ( #3952 )
...
should fix characters sometimes hanging around while scrolling the
transcript.
2025-09-22 15:12:29 -07:00
github-actions[bot]
01403a624c
chore(merge): enforce policy removals (images + cargo caches)
2025-09-22 21:28:44 +00:00
just-every-code
455a50aaa3
chore(merge): add by-bucket plan and report for upstream sync
2025-09-22 21:24:33 +00:00
just-every-code
d8b86a4198
Merge upstream/main: adopt rate limit struct changes; keep TUI behavior
...
- Prefer ours for TUI conflicted files (chatwidget.rs, history_cell.rs)
- Adopt upstream protocol rate limit renames (primary/secondary)
- Update core + exec + TUI to new fields and labels
- Purge check: no reintroduced images
- verify.sh + build-fast.sh: pass (zero warnings)
2025-09-22 21:24:09 +00:00
Ahmed Ibrahim and GitHub
fd6d473260
Change headers and struct of rate limits ( #4060 )
2025-09-22 21:06:20 +00:00
just-every-code
d86cc40347
merge(upstream): by-bucket merge of upstream/main into upstream-merge
...
- Preserve TUI and core tool wiring (browser_/agent_/web_fetch, strict ordering)
- Adopt upstream in common/exec/file-search and minor fixes
- Resolve conflicts per policy; revert core files to ours to restore API compat
- verify.sh and build-fast.sh pass (no warnings)
2025-09-22 19:45:22 +00:00
dedrisian-oai and GitHub
0af87057ff
Fix branch mode prompt for /review ( #4061 )
...
Updates `/review` branch mode to review against a branch's upstream.
2025-09-22 12:34:08 -07:00
jif-oai and GitHub
bab33a8423
chore: clippy on redundant closure ( #4058 )
...
Add redundant closure clippy rules and let Codex fix it by minimising
FQP
2025-09-22 19:30:16 +00:00
just-every-code
9136dd7451
merge(upstream): sync with openai/codex main using by-bucket policy
...
- Keep ours for TUI and core glue (browser/agent tools, UA/version)
- Adopt theirs for common/exec/file-search
- Preserve tool registration/gating and screenshot queue semantics
- Verify: scripts/upstream-merge/verify.sh ok; build-fast.sh ok
2025-09-22 19:24:56 +00:00