Commit Graph
2723 Commits
Author SHA1 Message Date
Eric Traut 20ffdd0a21 Merge branch 'main' into etraut/messages 2026-04-12 16:11:12 -07:00
Eric Traut 470510174b Remove context status-line meter (#17420)
Addresses #17313

Problem: The visual context meter in the status line was confusing and
continued to draw negative feedback, and context reporting should remain
an explicit opt-in rather than part of the default footer.

Solution: Remove the visual meter, restore opt-in context remaining/used
percentage items that explicitly say "Context", keep existing
context-usage configs working as a hidden alias, and update the setup
text and snapshots.
2026-04-12 15:42:09 -07:00
Ahmed Ibrahim d840b247d7 Mirror user text into realtime (#17520)
- Let typed user messages submit while realtime is active and mirror
accepted text into the realtime text stream.
- Add integration coverage and snapshot for outbound realtime text.
2026-04-12 15:03:14 -07:00
viyatb-oaiandCodex cb870a169a fix(sandboxing): reject WSL1 bubblewrap sandboxing (#17559)
## Summary

- detect WSL1 before Codex probes or invokes the Linux bubblewrap
sandbox
- fail early with a clear unsupported-operation message when a command
would require bubblewrap on WSL1
- document that WSL2 follows the normal Linux bubblewrap path while WSL1
is unsupported

## Why

Codex 0.115.0 made bubblewrap the default Linux sandbox. WSL1 cannot
create the user namespaces that bubblewrap needs, so shell commands
currently fail later with a raw bwrap namespace error. This makes the
unsupported environment explicit and keeps non-bubblewrap paths
unchanged.

The WSL detection reads /proc/version, lets an explicit WSL<version>
marker decide WSL1 vs WSL2+, and only treats a bare Microsoft marker as
WSL1 when no explicit WSL version is present.

addresses https://github.com/openai/codex/issues/16076

---------

Co-authored-by: Codex <noreply@openai.com>
2026-04-12 14:08:14 -07:00
Eric Traut 2206269fe4 codex: clarify detached pending scheduler task 2026-04-12 14:00:22 -07:00
Eric Traut 21cab96f20 codex: simplify pending input metadata 2026-04-12 14:00:22 -07:00
Eric Traut 78ae59d7e2 codex: simplify injected message handling 2026-04-12 14:00:22 -07:00
Eric Traut 3dc073acdb codex: rename injected message module 2026-04-12 14:00:22 -07:00
Eric Traut cd1f0fd41b codex: address injected message review feedback 2026-04-12 14:00:22 -07:00
Eric Traut df296d0f9d codex: remove unrelated guardian test change 2026-04-12 14:00:22 -07:00
Eric Traut 7a08d53b2d codex: address PR review feedback (#17380) 2026-04-12 14:00:06 -07:00
Eric Traut c3582c8d9d Simplify injected message envelopes 2026-04-12 14:00:06 -07:00
Eric Traut d0fa8a1292 Document cross-instance timer delivery claims 2026-04-12 14:00:06 -07:00
Eric Traut 056135fa05 codex: fix CI failure on PR #17380 2026-04-12 14:00:06 -07:00
Eric Traut c2b92ccf40 Harden timer integration test waits 2026-04-12 14:00:05 -07:00
Eric Traut bb13e4a0d1 codex: enforce timer db cap in core (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut 517cfb769e codex: use literal windows timer ignore reason (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut 8211c56154 codex: stabilize queued mail pending input test (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut 667d2a2d95 codex: keep timer runtime on delete failure (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut b6ab1b1e5f codex: avoid windows timer integration timeout (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut fc6dd9bb00 codex: stabilize timer integration tests (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut 520e3b091e codex: stabilize resume timer history regression (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut 6fe44104f3 codex: restore timers after resume history replay (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut 108679a91f codex: respect ephemeral timer storage mode (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut 548b035edc codex: stabilize queued message timer tests (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut 4f33051313 codex: address recurring timer message starvation (#17380) 2026-04-12 14:00:05 -07:00
Eric Traut dfb83d6a4c codex: address recurring timer restart review (#17380) 2026-04-12 14:00:04 -07:00
Eric Traut 529b855d60 codex: fix overdue one-shot timer claim on restart (#17380) 2026-04-12 14:00:04 -07:00
Eric Traut 9976a36c39 codex: stabilize queued message timer test (#17380) 2026-04-12 14:00:04 -07:00
Eric Traut 70edc61fde codex: fix timer runtime clippy lint (#17380) 2026-04-12 14:00:04 -07:00
Eric Traut b4f738def9 codex: stabilize queued message timer ordering (#17380) 2026-04-12 14:00:04 -07:00
Eric Traut b19709c649 codex: preserve exhausted schedule restore state (#17380) 2026-04-12 14:00:04 -07:00
Eric Traut 0d00ec0f8d codex: delete exhausted recurring timers (#17380) 2026-04-12 14:00:04 -07:00
Eric Traut 08554a2378 codex: address queue and timer race feedback (#17380) 2026-04-12 14:00:04 -07:00
Eric Traut 6e0ba130a7 codex: prevent idle timer message starvation (#17380) 2026-04-12 14:00:03 -07:00
Eric Traut 77a7287eeb codex: fix core timer test lint (#17380) 2026-04-12 14:00:03 -07:00
Eric Traut e03b0f8214 codex: address PR review feedback (#17380) 2026-04-12 14:00:03 -07:00
Eric Traut cbe466866c Split timer and queued message flags 2026-04-12 14:00:03 -07:00
Eric Traut 05e49afbcf Remove unrelated branch churn 2026-04-12 13:59:43 -07:00
Eric Traut b60311ab2a Remove queue message tool 2026-04-12 13:59:42 -07:00
Eric Traut 919e68003f Refine queued message delivery 2026-04-12 13:59:42 -07:00
Eric Traut 54f5a4b0fa Add thread message delivery 2026-04-12 13:59:42 -07:00
Francis Chalissery 720932ca3d [codex] Support flattened deferred MCP tool calls (#17556)
## Summary
- register flattened handler aliases for deferred MCP tools
- cover the node_repl-shaped deferred MCP call path in tool registry
tests

## Root Cause
Deferred MCP tools were registered only under their namespaced handler
key, e.g. `mcp__node_repl__:js`. If the model/bridge emitted the
flattened qualified name `mcp__node_repl__js`, core parsed it as an MCP
payload but dispatch looked up the flattened handler key and returned
`unsupported call` before reaching the MCP handler.

## Validation
- `just fmt`
- `cargo test -p codex-tools
search_tool_registers_deferred_mcp_flattened_handlers`
- `cargo test -p codex-core
search_tool_registers_namespaced_mcp_tool_aliases`
- `git diff --check`
2026-04-12 13:19:36 -07:00
Ahmed Ibrahim 4db60d5d8b Budget realtime current thread context (#17519)
Select Current Thread startup context by budget from newest turns, cap
each rendered turn at 300 approximate tokens, and add formatter plus
integration snapshot coverage.
2026-04-12 11:59:09 -07:00
Won Park 3895ddd6b1 Clarify guardian timeout guidance (#17521)
## Summary
- update the guardian timeout guidance to say permission approval review
timed out
- simplify the retry guidance to say retry once or ask the user for
guidance or explicit approval

## Testing
- cargo test -p codex-core
guardian_timeout_message_distinguishes_timeout_from_policy_denial
- cargo test -p codex-core
guardian_review_decision_maps_to_mcp_tool_decision
2026-04-12 02:03:53 -07:00
Won Park ba839c23f3 changing decision semantics after guardian timeout (#17486)
**Summary**

This PR treats Guardian timeouts as distinct from explicit denials in
the core approval paths.
Timeouts now return timeout-specific guidance instead of Guardian
policy-rejection messaging.
It updates the command, shell, network, and MCP approval flows and adds
focused test coverage.
2026-04-12 00:00:50 -07:00
sayan-oai 1325bcd3f6 chore: refactor name and namespace to single type (#17402)
avoid passing them both around, unify on a type. this now also keys
`ToolRegistry`.

tests pass
2026-04-11 23:06:22 +00:00
Ahmed Ibrahim 163ae7d3e6 fix (#17493)
# External (non-OpenAI) Pull Request Requirements

Before opening this Pull Request, please read the dedicated
"Contributing" markdown file or your PR may be closed:
https://github.com/openai/codex/blob/main/docs/contributing.md

If your PR conforms to our contribution guidelines, replace this text
with a detailed and high quality description of your changes.

Include a link to a bug report or enhancement request.
2026-04-11 13:52:17 -07:00
Adrian 39cc85310f Add use_agent_identity feature flag (#17385) 2026-04-11 09:52:06 -07:00
Eric Traut e9e7ef3d36 Fix thread/list cwd filtering for Windows verbatim paths (#17414)
Addresses #17302

Problem: `thread/list` compared cwd filters with raw path equality, so
`resume --last` could miss Windows sessions when the saved cwd used a
verbatim path form and the current cwd did not.

Solution: Normalize cwd comparisons through the existing path comparison
utilities before falling back to direct equality, and add Windows
regression coverage for verbatim paths. I made this a general utility
function and replaced all of the duplicated instance of it across the
code base.
2026-04-10 23:08:02 -07:00