Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
7400 commits
Select commit Hold shift + click to select a range
2e6cc4e
Attribute analytics requests to each thread's product SKU (#49117)
papayo-oai Sep 29, 2026
6c49240
Correct provider authentication storage documentation (#49118)
celia-oai Sep 29, 2026
8bd5a13
Add recovery guidance to content-filter retries (#49119)
won-openai Sep 29, 2026
13f580e
Deduplicate cloud and executor skill listings before budgeting (#49127)
TAFOYA-OAI Sep 29, 2026
a9118ed
Move content-filter guidance into the shared Responses retry handler …
won-openai Sep 29, 2026
458f704
Treat explicit provider model catalogs as authoritative (#49135)
andrewgu-oai Sep 29, 2026
d7f7fa4
Remove the plus separator after Option symbols in TUI key hints (#49136)
bc-openai Sep 29, 2026
f53f5a6
Expose original error details to turn lifecycle contributors (#49138)
bryanashley Sep 29, 2026
ff3c82c
Preserve server reasoning summary and verbosity settings in the TUI (…
etraut-openai Sep 29, 2026
8d48f71
Hide reasoning summary settings in `/status` for server connections (…
etraut-openai Sep 29, 2026
3a16c0b
Simplify cloud task base URL normalization (#49147)
akira-oai Sep 29, 2026
c6c7c8d
Omit blockquote markers when copying quoted selections in the TUI (#4…
bc-openai Sep 29, 2026
0d7b811
Support projectless TUI sessions with workspace defaults (#49160)
etraut-openai Sep 29, 2026
3226512
Honor app-server provider defaults in the TUI (#49161)
etraut-openai Sep 29, 2026
fbc1698
Suppress Windows console windows for background subprocesses (#49164)
etraut-openai Sep 29, 2026
c248f6d
Fix model provider lookup for TUI history (#49171)
etraut-openai Sep 29, 2026
0462dcc
Use executable fixture copying in the bundled bwrap test (#49246)
felixxia-oai Sep 29, 2026
4f16bdc
Allow Guardian cached approvals with incomplete root context (#49257)
felixxia-oai Sep 29, 2026
af0d68a
Restrict enterprise MCP auth and fail closed on config refresh (#49260)
nicksteele-oai Sep 29, 2026
f35a0fd
Preserve Windows sandbox runner launch errors (#49261)
zm-oai Sep 29, 2026
a7660cd
Trace turn phases and correlate accepted input with turns (#49262)
jif-oai Sep 29, 2026
5f7d5ad
Remove the remote agent message board client README (#49266)
jif-oai Sep 29, 2026
68e1a42
Support remote agent message boards in multi-agent sessions (#49267)
jif-oai Sep 29, 2026
0b1b78a
Preserve thread overrides and cloud policy validity during config rel…
nicksteele-oai Sep 29, 2026
677b07e
Isolate realtime conversation tests from Responses prewarm connection…
felixxia-oai Sep 29, 2026
4994306
Enable enterprise MCP sign-in and account-scoped grant cleanup (#49276)
nicksteele-oai Sep 29, 2026
d515b2f
Avoid a turn teardown race in the Guardian agent message test (#49277)
felixxia-oai Sep 29, 2026
18194bf
Restrict capability roots to captured turn environments (#49280)
miz-openai Sep 29, 2026
65c3f40
Model exec-server session attachment state as an enum (#49286)
jif-oai Sep 29, 2026
4773a13
Add `/mcp login <name>` to the TUI (#49290)
nicksteele-oai Sep 29, 2026
d79a95b
Record Guardian context mode in review and classification telemetry (…
felixxia-oai Sep 29, 2026
cf12c86
Simplify configuration fingerprint canonicalization (#49295)
jif-oai Sep 29, 2026
d5e6526
Scan the session index backwards for batch thread name lookups (#49297)
jif-oai Sep 29, 2026
a6f0939
Compact the inline hidden tag buffer once per chunk (#49300)
jif-oai Sep 29, 2026
c2837d8
Batch metadata reads when resolving thread names (#49305)
jif-oai Sep 29, 2026
50d9c5d
Run piped legacy Windows sandbox processes without a console (#49308)
etraut-openai Sep 29, 2026
6347513
Notify parent agents when Guardian stops a subagent (#49312)
jif-oai Sep 29, 2026
193632d
Bump taiki-e/install-action to v2.87.21 in CI setup (#49316)
jgershen-oai Sep 29, 2026
b1e7296
Add GPT-6.1 Sol as the default catalog model (#49318)
andrewgu-oai Sep 29, 2026
26dd19e
Retry Windows sandbox runner logon once on error 1056 (#49325)
zm-oai Sep 29, 2026
5937592
Keep remote control reconnect backoff capped during sustained failure…
yansenzhou-oai Sep 29, 2026
ed9e5a2
Clean up canceled exec-server RPC requests immediately (#49332)
jif-oai Sep 29, 2026
a6e9eaa
Add GPT-6.1 Sol to Bedrock catalogs and make it the default (#49339)
celia-oai Sep 29, 2026
8ffd91e
Enable multi-agent V2 and Ultra reasoning on Amazon Bedrock (#49345)
celia-oai Sep 29, 2026
804d630
Allow approved filesystem escalation while preserving denied reads (#…
viyatb-oai Sep 29, 2026
1983c48
Continue Markdown blockquotes when pasting multiline text (#49357)
bc-openai Sep 29, 2026
995138d
Carry shell invocation metadata and report executor PATH directories …
anp-oai Sep 29, 2026
94d642d
Clarify credential storage wording across authentication UI and docs …
celia-oai Sep 29, 2026
2a34aef
Update Bedrock GPT-6 Sol catalog tests to expect multi-agent V2 (#49369)
celia-oai Sep 29, 2026
bd4204e
Compile hook matchers during discovery (#49379)
jif-oai Sep 29, 2026
a44afa5
Track credential storage outcomes and redact sensitive errors (#49384)
celia-oai Sep 29, 2026
d657132
Fix Windows path inference for opaque URIs with slash prefixes (#49388)
dkovalenko-oai Sep 29, 2026
9212b3e
Serialize tests that share Windows sandbox accounts (#49389)
jgershen-oai Sep 29, 2026
05ea5f7
Add attributed MCP OAuth credential storage telemetry (#49392)
celia-oai Sep 29, 2026
ceea671
Remove randomized greetings from TUI session headers (#49395)
etraut-openai Sep 29, 2026
87d3e06
Preserve live tool-call metadata across request windows (#49401)
ningyi-oai Sep 29, 2026
17a9df6
Add an experimental flag for bundled tools in login shells (#49403)
anp-oai Sep 29, 2026
7c35e15
Support explicit cyber access programs with OpenAI API keys (#49406)
julee-oai Sep 29, 2026
67352b5
Recover exec-server sessions after environment info timeouts (#49407)
vivi Sep 30, 2026
bd51858
Compare tool call metadata in the recorder refresh test (#49408)
euroelessar Sep 30, 2026
eefe0ce
Bind the app-server time provider to a local variable (#49411)
euroelessar Sep 30, 2026
16a7c0f
Filter graceful shutdown guard and trigger traces from SQLite logs (#…
dkovalenko-oai Sep 30, 2026
d940fb2
Truncate input text in protocol debug output (#49415)
dkovalenko-oai Sep 30, 2026
ab84d71
Omit payloads from multiline ANSI warnings (#49416)
dkovalenko-oai Sep 30, 2026
d1d0e89
Infer Windows UNC paths with forward and mixed slashes (#49424)
dkovalenko-oai Sep 30, 2026
8ea2c0e
Prune diagnostic logs periodically by age and database size (#49425)
dkovalenko-oai Sep 30, 2026
2cc65cd
Enable analytics by default for daemon-launched app servers (#49426)
bc-openai Sep 30, 2026
d8f69ea
Preserve bootstrap discovery across authentication changes (#49432)
cooper-oai Sep 30, 2026
fc81a71
Add local audio device selection to TUI voice settings (#49437)
bc-openai Sep 30, 2026
6ba4bf9
Honor server retry advice across Responses retries and fallback (#49441)
anp-oai Sep 30, 2026
8c3612f
Use `memrchr` to find newlines in reverse JSONL scans (#49444)
btraut-openai Sep 30, 2026
76a6e55
Restore executor tool paths after login shell startup (#49467)
anp-oai Sep 30, 2026
b588812
Use server-authoritative permissions in the TUI (#49472)
etraut-openai Sep 30, 2026
c9b3924
Use the rmcp SDK for enterprise-managed token exchanges (#49473)
nicksteele-oai Sep 30, 2026
9ef9cb1
Complete turn abort callbacks before emitting terminal events (#49475)
euroelessar Sep 30, 2026
15fd656
Discover and validate MCP authorization servers before ID-JAG exchang…
nicksteele-oai Sep 30, 2026
90abcfa
Add experimental thread prediction protocol types (#49480)
keyz Sep 30, 2026
bcd6d9a
Add regression coverage for account switches between analytics batche…
anp-oai Sep 30, 2026
d420560
Add a fork shortcut to the TUI command center (#49517)
etraut-openai Sep 30, 2026
2e5fea6
Add an opt-in model catalog to multi-agent context (#49560)
jif-oai Sep 30, 2026
0b43721
Copy selected file paths as plain text in the TUI (#49564)
fcoury-oai Sep 30, 2026
a5cce88
Skip host skill discovery for Guardian reviews (#49584)
jif-oai Sep 30, 2026
1fc8d54
Make the strict network approval test independent of request order (#…
jif-oai Sep 30, 2026
de02016
Persist explicit user goal edits in model history (#49598)
felixxia-oai Sep 30, 2026
d7b0d4a
Return authoritative replay history when resuming a thread (#49599)
felixxia-oai Sep 30, 2026
92bc601
Reuse unchanged history snapshots when resuming threads (#49600)
felixxia-oai Sep 30, 2026
7219fd7
Use server authentication for explicit remote session commands (#49624)
cooper-oai Sep 30, 2026
67727e7
Allow managed requirements to disable the Windows MXC sandbox (#49642)
iceweasel-oai Sep 30, 2026
ed0cc1a
Serialize Responses routing fields before large inputs (#49675)
jbeckwith-oai Sep 30, 2026
fcbed04
Escape command drafts when recovering question answers (#49678)
imac-oai Sep 30, 2026
6996cde
Add a managed feature gate for in-app voice (#49683)
vishnu-oai Sep 30, 2026
49be2c7
Deliver remote message board notifications to active turns (#49686)
jif-oai Sep 30, 2026
0a76a25
Export skill invocation events through OpenTelemetry (#49689)
jif-oai Sep 30, 2026
7e8878f
Preserve PowerShell relative paths in the elevated Windows sandbox (#…
johnl-oai Sep 30, 2026
d1c4e3c
Keep compressed rollout snippet searches on one blocking worker (#49692)
npancha-openai Sep 30, 2026
ecc205e
Move thread history projection into one blocking task (#49693)
charliemarsh-oai Sep 30, 2026
5aa9280
Batch rollout listing scans on cancellable blocking workers (#49694)
charliemarsh-oai Sep 30, 2026
f2b2e5b
Make exec-server file reads cancellable between chunks (#49696)
charliemarsh-oai Sep 30, 2026
3620b2c
Detect SQLite corruption during startup and preserve recovery backups…
dkovalenko-oai Sep 30, 2026
3b16b5a
Rename exec-server file handle management identifiers (#49702)
anp-oai Sep 30, 2026
5602705
Prevent npm alpha dist-tags from moving backward (#49704)
imac-oai Sep 30, 2026
17e5a4d
Upgrade the argument comment lint toolchain and Dylint (#49706)
tamird Sep 30, 2026
4f699cd
Move session index I/O off async runtime threads (#49708)
charliemarsh-oai Sep 30, 2026
596ae94
Classify SQLite corruption using typed error codes (#49710)
dkovalenko-oai Sep 30, 2026
5e96aab
Avoid full-string scans in token-budget truncation (#49712)
jif-oai Sep 30, 2026
1813127
Remove repository-local Codex guidance, skills, and environment confi…
anp-oai Sep 30, 2026
f151a0f
Decouple API-key cyber access programs from model discovery (#49714)
julee-oai Sep 30, 2026
60947e2
Add account security setup reminders to the TUI (#49715)
dennyku Sep 30, 2026
875bf92
Define exec-server protocol types for streamed file writes (#49778)
anp-oai Sep 30, 2026
8953de1
Include the environment's MXC backend in MCP sandbox metadata (#49781)
zm-oai Sep 30, 2026
1a91349
Clean up process groups for failed shell snapshot captures (#49782)
jif-oai Sep 30, 2026
106772e
Preserve background thread requests when forking in the TUI (#49783)
etraut-openai Sep 30, 2026
3bbf8ec
Add a requirements feature gate for the browser annotation API (#49784)
tepman-oai Sep 30, 2026
1f77c0c
Persist empty paginated threads when naming them (#49785)
rd-oai Sep 30, 2026
f542ba6
Clarify V2 spawn model override guidance for context catalogs (#49786)
jif-oai Sep 30, 2026
83cf883
Remove `AGENTS.md` from Bazel core test data (#49787)
andrewgu-oai Sep 30, 2026
5f300d3
Add retained conversation support to Guardian async sampling (#49792)
felixxia-oai Sep 30, 2026
726f149
Add conversation mode to Guardian v2 async classification (#49793)
felixxia-oai Sep 30, 2026
47a8bd7
Avoid duplicate sync reviews in Guardian classifier continuations (#4…
felixxia-oai Sep 30, 2026
5ca55db
Deduplicate Guardian retained-context omission notices (#49796)
felixxia-oai Sep 30, 2026
c538fba
Share cached exec-server environment info with Arc (#49798)
anp-oai Sep 30, 2026
606b139
Preserve server web-search settings in the TUI (#49799)
etraut-openai Sep 30, 2026
ec0cfa5
Allow cleanup of replay-only side conversations with missing threads …
bc-openai Sep 30, 2026
33aea33
Update the Rust toolchain action for argument-comment linting (#49801)
andrewgu-oai Sep 30, 2026
d2f2c40
Use platform-specific modifier labels in TUI shortcut hints (#49804)
bc-openai Sep 30, 2026
e7798c9
Add capability-gated writable file streams to the exec-server client …
anp-oai Sep 30, 2026
a5d56d8
Accept unknown Codex error variants in the app-server protocol (#49806)
anp-oai Sep 30, 2026
7d4c7a0
Enable API-key model discovery by default (#49807)
andrewgu-oai Sep 30, 2026
2fde968
Preserve local launch permissions across TUI sessions and reconnects …
etraut-openai Sep 30, 2026
cca4406
Flush expired paste bursts before handling Enter (#49810)
bc-openai Sep 30, 2026
c51f5bf
Handle unsupported `fs/writeBlock` requests in exec-server (#49811)
anp-oai Sep 30, 2026
0f8df3d
Move shadow skill ranking off the turn preparation path (#49812)
vkg-oai Sep 30, 2026
d4a475a
Support AWS GovCloud regions for Amazon Bedrock Mantle (#49813)
alexsong-oai Sep 30, 2026
8e44ad9
Add coordinated shutdown for local agent trees (#49814)
owenlin0 Oct 1, 2026
1182834
Remove browser-open success messages from the TUI (#49816)
bc-openai Oct 1, 2026
a5eac80
Add an advisory Bedrock GovCloud requirements check (#49817)
alexsong-oai Oct 1, 2026
a73898c
Use dedicated parameters for sandboxed file opens (#49818)
anp-oai Oct 1, 2026
cda82a2
Recover daemon startup and updater re-exec after cwd deletion (#49819)
etraut-openai Oct 1, 2026
7993248
Box the resume future in the agents overview permissions test (#49822)
sayan-oai Oct 1, 2026
08e2b58
Clarify service tier default save errors in the TUI (#49835)
etraut-openai Oct 1, 2026
e53e932
Allow microphone channel selection for voice conversations (#49836)
bc-openai Oct 1, 2026
08b07ee
Preserve daemon diagnostics and include updater logs in reports (#49843)
etraut-openai Oct 1, 2026
408f48c
Capture host-supplied extension data for each turn (#49846)
sayan-oai Oct 1, 2026
b44ca87
Persist world-state snapshots alongside rendered context (#49847)
pakrym-oai Oct 1, 2026
e2a7d53
Launch Windows daemon children in a dedicated working directory (#49850)
etraut-openai Oct 1, 2026
236be1a
Improve diagnostics for report attachment failures (#49852)
dkovalenko-oai Oct 1, 2026
bc197b7
Use embedded mode for elevated Windows TUI sessions (#49855)
etraut-openai Oct 1, 2026
c41a72c
Support Daybreak selection in `codex exec` (#49856)
etraut-openai Oct 1, 2026
f58ed54
Use the model catalog to select TUI cyber refusal guidance (#49857)
etraut-openai Oct 1, 2026
e152218
Add a persistent `/daybreak` toggle to the TUI (#49858)
etraut-openai Oct 1, 2026
cd4a9cb
Honor Daybreak settings in TUI continuations and background tasks (#4…
etraut-openai Oct 1, 2026
8ea2428
Add Daybreak state to the status line and terminal title (#49861)
etraut-openai Oct 1, 2026
90d7f27
Update elevated-launch warning snapshot to use `⌃o` for copy (#49867)
etraut-openai Oct 1, 2026
bdfbab9
Point usage and credit links to ChatGPT settings (#49874)
etraut-openai Oct 1, 2026
7b88d09
Decouple TUI startup presentation from execution configuration (#49875)
etraut-openai Oct 1, 2026
d2b254f
Remove personality plumbing from the TUI (#49876)
etraut-openai Oct 1, 2026
1f52d40
Bind permission grants to the originating turn (#49880)
anp-oai Oct 1, 2026
08a7031
Return world-state snapshots and context updates together (#49894)
pakrym-oai Oct 1, 2026
da2e174
Scope extension filesystem access to callback permissions (#49898)
anp-oai Oct 1, 2026
819efd7
Preserve validation errors for invalid TUI keybindings (#49910)
etraut-openai Oct 1, 2026
444da31
Respect approval policies in temporary structured threads (#49912)
etraut-openai Oct 1, 2026
6b4daaf
Add per-turn Cyber access program selection to exec and the SDK (#49939)
mldangelo-oai Oct 1, 2026
dd90f16
Prevent stale file search results from being labeled with a new query…
jif-oai Oct 1, 2026
f70810b
Include preceding assistant context in Guardian sender reviews (#49951)
jif-oai Oct 1, 2026
8a400e7
Cache the placeholder regex for MCP hook argument expansion (#49956)
jif-oai Oct 1, 2026
d6c3b44
Test session index thread-name append and removal (#49959)
jif-oai Oct 1, 2026
a933dd7
Share byte buffers across exec-server output chunks (#49972)
jif-oai Oct 1, 2026
ecc78e4
Add renewable EMA HTTP authentication and credential versioning (#49987)
nicksteele-oai Oct 1, 2026
57ac6f5
Preserve the async Guardian history prefix as retained context change…
felixxia-oai Oct 1, 2026
b527ce4
Honor server model defaults when starting fresh TUI threads (#50013)
etraut-openai Oct 1, 2026
5955343
Use descriptor-safe helpers for executable test fixtures (#50018)
jif-oai Oct 1, 2026
9552906
Protect the guardian decisions API key from environment forwarding (#…
swastik-oai Oct 1, 2026
2685e3a
Preserve user restrictions in Guardian handoff context (#50026)
jif-oai Oct 1, 2026
cc31e37
Follow MCP tool pagination in legacy protocol mode (#50035)
jif-oai Oct 1, 2026
a97fb78
Keep transcript Find results readable after closing the query (#50039)
fcoury-oai Oct 1, 2026
1cc9917
Keep transcript Find expansion scoped to the current match (#50045)
fcoury-oai Oct 1, 2026
5fa5aaf
Stabilize Windows voice build cache keys across tool reinstalls (#50046)
anp-oai Oct 1, 2026
9561a34
Keep plugin and skill snapshots scoped to each step (#50050)
sayan-oai Oct 1, 2026
57a38c1
Preserve question context in recovered TUI answer drafts (#50052)
imac-oai Oct 1, 2026
d9cf203
Check token estimate filtering directly on the tracing subscriber (#5…
tamird Oct 1, 2026
b06b7d2
Upgrade Windows bindings to `windows-sys` 0.61.2 (#50058)
tamird Oct 1, 2026
ae7aad5
Fix Linux sandbox startup with multiple denied files (#50059)
yuzhu-oai Oct 1, 2026
d91294c
Add a bounded Decisions transport for Guardian comparison classificat…
swastik-oai Oct 1, 2026
e4e33a5
Enable dynamic tool inheritance for fresh V2 subagents (#50082)
ke-oai Oct 1, 2026
26a49b3
Add paginated reverse lookup for thread attachments (#50083)
joeytrasatti-openai Oct 1, 2026
960e878
Preserve queued agent mail across session eviction (#50087)
jif-oai Oct 1, 2026
9d53dd9
Prevent shared instruction providers from delegating to themselves (#…
bryanashley Oct 1, 2026
2635431
Add attachment owner lookup to the app-server (#50094)
joeytrasatti-openai Oct 1, 2026
59f18e8
Add opt-in Decisions comparison for Guardian V2 (#50099)
swastik-oai Oct 1, 2026
e58b493
Consolidate chat composer footer logic in `footer_state` (#50105)
imac-oai Oct 1, 2026
6ece7bf
Keep fullscreen prompts bounded and scrollable (#50109)
imac-oai Oct 1, 2026
a0a7a63
Centralize TUI loading glyphs and frame scheduling (#50112)
imac-oai Oct 1, 2026
b707714
Add a native gRPC client for cloud thread resume and attach (#50113)
bc-openai Oct 1, 2026
4f99920
Expose the model selected for a running turn's next step (#50128)
sayan-oai Oct 1, 2026
7d3e696
Preserve Windows environment variables for remote MCP servers (#50129)
aidanv-oai Oct 1, 2026
8d44977
Add opt-in JSON diagnostics for TCP tunnels (#50131)
richardopenai Oct 2, 2026
cb6da58
Use the server permission catalog for TUI permission shortcuts (#50140)
etraut-openai Oct 2, 2026
e7ea5f4
Add managed worktree tools to the TUI (#50148)
bc-openai Oct 2, 2026
d25c114
Bound in-flight file opens in exec-server (#50162)
anp-oai Oct 2, 2026
7135b30
Upgrade `age` to 0.12.1 and remove the obsolete advisory exception (#…
michaelm-openai Oct 2, 2026
c39bfa4
Enable writable file streaming in exec-server (#50177)
anp-oai Oct 2, 2026
b997c72
Add `dots` to issue labeler guidance (#50183)
etraut-openai Oct 2, 2026
a20fe63
Replace the Figma OAuth exception with Mercado Pago (#50189)
mzeng-openai Oct 2, 2026
3f97f2b
Restore the account email in `/status` after account updates (#50199)
etraut-openai Oct 2, 2026
a759874
Report the configured TUI mode in `codex doctor` (#50200)
etraut-openai Oct 2, 2026
e3c2a83
Release stable Markdown tables into scrollback during streaming (#50207)
etraut-openai Oct 2, 2026
4dd51f4
Make transcript mouse scroll speed configurable (#50209)
etraut-openai Oct 2, 2026
d64360f
Support Ctrl+Insert for copying TUI selections (#50215)
etraut-openai Oct 2, 2026
37f5319
Use the shared text editor for command-center task renaming (#50216)
bc-openai Oct 2, 2026
14a477e
Bound tmux option probes to one second (#50219)
etraut-openai Oct 2, 2026
ca46606
Record Guardian V2 Decisions agreement and latency metrics (#50273)
swastik-oai Oct 2, 2026
4cedd0c
Add end-to-end coverage for MCP sandbox state enforcement (#50339)
bolinfest Oct 2, 2026
84d5437
Keep the subagent picker consistent with thread archive state (#50345)
etraut-openai Oct 2, 2026
9d2b603
Back off automatic remote control reconnects with jitter (#50348)
cooper-oai Oct 2, 2026
f4e18a9
Skip unrelated subtrees during config alias normalization (#50354)
btraut-openai Oct 2, 2026
9116836
Render ANSI styles in TUI hook system messages (#50359)
etraut-openai Oct 2, 2026
c73775f
Remove initial messages from session configuration events (#50360)
owenlin0 Oct 2, 2026
50b4c5e
Use printable ASCII terminal titles under GNU Screen (#50375)
imac-oai Oct 2, 2026
1ab8c6e
Fix thread unloading after disconnect during MCP startup (#50380)
yuzhu-oai Oct 2, 2026
2739e82
Allow opting into 16 KiB ARM64 code pages for macOS signing (#50384)
chess-oai Oct 2, 2026
f88a6ef
Honor configured keybindings before transcript navigation (#50389)
etraut-openai Oct 2, 2026
d61c7a8
Honor pager bindings for transcript page keys (#50396)
bc-openai Oct 2, 2026
c5d242f
Consolidate command execution output into `aggregated_output` (#50402)
owenlin0 Oct 2, 2026
dff5270
Clarify Git worktree choices for new and forked conversations (#50416)
bc-openai Oct 2, 2026
44dd77b
Honor Retry-After headers in failed Responses events (#50418)
anp-oai Oct 2, 2026
bee28e8
Cap persisted command output in paginated history at 64 KiB (#50427)
owenlin0 Oct 2, 2026
b6903c0
Preserve terminal hyperlinks in agents overview previews (#50431)
bc-openai Oct 2, 2026
66561d0
Allow API-key accounts to use Daybreak in the TUI (#50433)
etraut-openai Oct 2, 2026
c536ffc
Add keyboard copy selection to the owned transcript (#50434)
bc-openai Oct 2, 2026
602d2ad
Persist additional tool definitions in rollout history (#50435)
pakrym-oai Oct 2, 2026
12a30d4
Add a CLI command to uninstall the legacy Windows sandbox (#50437)
chess-oai Oct 2, 2026
0df7689
Support ordered response items in world-state context updates (#50441)
pakrym-oai Oct 2, 2026
3629508
Preserve native USD amounts in thread usage responses (#50442)
asohrabi-oai Oct 2, 2026
a4bfd07
Stabilize paused-time code-mode service tests (#50443)
seanh-oai Oct 2, 2026
d4eed6d
Assert that only direct tool calls emit timing events (#50445)
seanh-oai Oct 2, 2026
9b0a676
Bundle rollout attachments into a gzip tar archive (#50446)
dkovalenko-oai Oct 2, 2026
fd75aa1
Remove the provider capability gate for tool namespaces (#50447)
pakrym-oai Oct 2, 2026
3c3a990
Measure rollout persistence size reductions (#50454)
owenlin0 Oct 2, 2026
820f85c
Truncate oversized MCP results in paginated thread history (#50458)
owenlin0 Oct 2, 2026
c6049eb
Add capability overrides for custom model providers (#50459)
celia-oai Oct 2, 2026
09bced5
Populate thread previews from delegated task inputs (#50462)
bc-openai Oct 2, 2026
a0bfaac
Add the `incremental_tools` feature flag (#50464)
pakrym-oai Oct 2, 2026
ef8cfe5
Retry registry authentication outages and jitter executor reconnects …
apanasenko-oai Oct 2, 2026
f5a2272
Copy transcript selections as literal text while preserving rich HTML…
fcoury-oai Oct 2, 2026
be48ae3
Account for JSON overhead when truncating MCP tool results (#50470)
owenlin0 Oct 3, 2026
604061c
Enable Ultrafast service tiers for Amazon Bedrock Astra models (#50472)
celia-oai Oct 3, 2026
6c15cc4
Use the app-server default output cap for TUI workspace commands (#50…
etraut-openai Oct 3, 2026
8f7a0f7
Skip managed config loading for registered Windows sandbox refreshes …
zm-oai Oct 3, 2026
55922b7
Include installer stderr in daemon update failures (#50499)
etraut-openai Oct 3, 2026
9ce35d3
Use Enter to accept transcript Find results and Escape to cancel (#50…
fcoury-oai Oct 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
189 changes: 180 additions & 9 deletions .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@ startup --experimental_remote_repo_contents_cache

common --experimental_platform_in_output_dir

build --workspace_status_command=./scripts/workspace-status.sh
build:windows --workspace_status_command=./scripts/workspace-status.cmd

# Runfiles strategy rationale: codex-rs/utils/cargo-bin/README.md
common --noenable_runfiles

Expand All @@ -20,39 +23,207 @@ common:windows --host_platform=//:local_windows
common --@rules_cc//cc/toolchains/args/archiver_flags:use_libtool_on_macos=False
common --@llvm//config:experimental_stub_libgcc_s

# We need to use the sh toolchain on windows so we don't send host bash paths to the linux executor.
common:windows --@rules_rust//rust/settings:experimental_use_sh_toolchain_for_bootstrap_process_wrapper

# TODO(zbarsky): rules_rust doesn't implement this flag properly with remote exec...
# common --@rules_rust//rust/settings:pipelined_compilation

common --incompatible_strict_action_env
# Not ideal, but We need to allow dotslash to be found
common:linux --test_env=PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
common:macos --test_env=PATH=/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
# Native pkg-config configure checks execute target programs.
common:macos --strategy=CcConfigureMakeRule=remote,sandboxed,local

# Pass through some env vars Windows needs to use powershell?
common:windows --test_env=PATH
common:windows --test_env=SYSTEMROOT
common:windows --test_env=COMSPEC
common:windows --test_env=WINDIR
# Rust's libtest harness runs test bodies on std-spawned threads. The default
# 2 MiB stack can be too small for large async test futures on Windows CI; see
# https://github.com/openai/codex/pull/19067 for the motivating failure.
common --test_env=RUST_MIN_STACK=8388608 # 8 MiB

common --test_output=errors
common --bes_results_url=https://app.buildbuddy.io/invocation/
common --bes_backend=grpcs://remote.buildbuddy.io
common --remote_cache=grpcs://remote.buildbuddy.io
common --remote_download_toplevel
common --nobuild_runfile_links
# These settings tune BuildBuddy/RBE behavior but do not contact a remote
# service unless a `buildbuddy-*` configuration below supplies an endpoint.
common --remote_download_toplevel
common --remote_timeout=3600
common --noexperimental_throttle_remote_action_building
common --experimental_remote_execution_keepalive
common --grpc_keepalive_time=30s

# Opt-in remote configurations selected by
# `.github/scripts/run_bazel_with_buildbuddy.py`. Plain Bazel commands do not
# contact BuildBuddy unless a user selects one of these configurations.
# Use the generic host for cache, BES, and downloads without remote execution.
common:buildbuddy-generic --bes_backend=grpcs://remote.buildbuddy.io
common:buildbuddy-generic --bes_results_url=https://app.buildbuddy.io/invocation/
common:buildbuddy-generic --remote_cache=grpcs://remote.buildbuddy.io
common:buildbuddy-generic --experimental_remote_downloader=grpcs://remote.buildbuddy.io

# Add remote execution on the generic host.
common:buildbuddy-generic-rbe --config=buildbuddy-generic
common:buildbuddy-generic-rbe --config=remote
common:buildbuddy-generic-rbe --remote_executor=grpcs://remote.buildbuddy.io

# Use the OpenAI tenant for cache, BES, and downloads without remote execution.
common:buildbuddy-openai --bes_backend=grpcs://openai.buildbuddy.io
common:buildbuddy-openai --bes_results_url=https://openai.buildbuddy.io/invocation/
common:buildbuddy-openai --remote_cache=grpcs://openai.buildbuddy.io
common:buildbuddy-openai --experimental_remote_downloader=grpcs://openai.buildbuddy.io

# Add remote execution on the OpenAI tenant.
common:buildbuddy-openai-rbe --config=buildbuddy-openai
common:buildbuddy-openai-rbe --config=remote
common:buildbuddy-openai-rbe --remote_executor=grpcs://openai.buildbuddy.io

# This limits both in-flight executions and concurrent downloads. Even with high number
# of jobs execution will still be limited by CPU cores, so this just pays a bit of
# memory in exchange for higher download concurrency.
common --jobs=30

# Shared remote execution policy. The endpoint-bearing `buildbuddy-*-rbe`
# configurations include this group; CI configs override TestRunner below
# when tests must remain local on their runner.
common:remote --strategy=remote
# Native Mac voice actions need the local Apple tools; Linux remains remote.
common:macos --strategy=VoiceNativePrefix=remote,sandboxed,local
common:macos --strategy=VoiceNativeRuntime=remote,sandboxed,local
common:remote --extra_execution_platforms=//:rbe
common:remote --remote_executor=grpcs://remote.buildbuddy.io
common:remote --jobs=800
# TODO(team): Evaluate if this actually helps, zbarsky is not sure, everything seems bottlenecked on `core` either way.
# Enable pipelined compilation since we are not bound by local CPU count.
#common:remote --@rules_rust//rust/settings:pipelined_compilation

# GitHub Actions CI configs.
common:ci --remote_download_minimal
common:ci --keep_going
common:ci --verbose_failures
common:ci --build_metadata=REPO_URL=https://github.com/openai/codex.git
common:ci --build_metadata=ROLE=CI
common:ci --build_metadata=VISIBILITY=PUBLIC

# Disable disk cache in CI since we have a remote one and aren't using persistent workers.
common:ci --disk_cache=

# Shared config for the main Bazel CI workflow.
common:ci-bazel --config=ci
common:ci-bazel --build_metadata=TAG_workflow=bazel

# Shared config for Bazel-backed Rust linting.
build:clippy --aspects=@rules_rust//rust:defs.bzl%rust_clippy_aspect
build:clippy --output_groups=+clippy_checks
build:clippy --@rules_rust//rust/settings:clippy.toml=//codex-rs:clippy.toml
# Keep this deny-list in sync with `codex-rs/Cargo.toml` `[workspace.lints.clippy]`.
# Cargo applies those lint levels to member crates that opt into `[lints] workspace = true`
# in their own `Cargo.toml`, but `rules_rust` Bazel clippy does not read Cargo lint levels.
# `clippy.toml` can configure lint behavior, but it cannot set allow/warn/deny/forbid levels.
build:clippy --@rules_rust//rust/settings:clippy_flag=-Dwarnings
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::await_holding_invalid_type
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::await_holding_lock
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::disallowed_methods
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::expect_used
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::identity_op
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_clamp
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_filter
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_find
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_flatten
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_map
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_memcpy
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_non_exhaustive
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_ok_or
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_range_contains
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_retain
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_strip
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_try_fold
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::manual_unwrap_or
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::needless_borrow
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::needless_borrowed_reference
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::needless_collect
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::needless_late_init
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::needless_option_as_deref
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::needless_question_mark
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::needless_update
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::redundant_clone
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::redundant_closure
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::redundant_closure_for_method_calls
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::redundant_static_lifetimes
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::trivially_copy_pass_by_ref
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::uninlined_format_args
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::unnecessary_filter_map
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::unnecessary_lazy_evaluations
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::unnecessary_sort_by
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::unnecessary_to_owned
build:clippy --@rules_rust//rust/settings:clippy_flag=--deny=clippy::unwrap_used

# Shared config for Bazel-backed argument-comment-lint.
build:argument-comment-lint --aspects=//tools/argument-comment-lint:lint_aspect.bzl%rust_argument_comment_lint_aspect
build:argument-comment-lint --output_groups=argument_comment_lint_checks
build:argument-comment-lint --@rules_rust//rust/toolchain/channel=nightly

# Rearrange caches on Windows so they're on the same volume as the checkout.
common:ci-windows --config=ci-bazel
common:ci-windows --build_metadata=TAG_os=windows
common:ci-windows --repo_contents_cache=D:/a/.cache/bazel-repo-contents-cache
# The hidden dynamic-tool callback currently times out on Windows, and ConPTY
# cannot reliably interrupt foreground processes on Windows Bazel runners.
common:ci-windows --test_env=CODEX_BAZEL_TEST_SKIP_FILTERS=suite::code_mode::code_mode_can_call_hidden_dynamic_tools,tests::windows_tests::conpty_ctrl_c_interrupts_powershell_foreground_child

# We prefer to run the build actions entirely remotely so we can dial up the concurrency.
# We have platform-specific tests, so we want to execute the tests on all platforms using the strongest sandboxing available on each platform.

# On linux, we can do a full remote build/test, by targeting the right (x86/arm) runners, so we have coverage of both.
# Linux crossbuilds don't work until we untangle the libc constraint mess.
common:ci-linux --config=ci-bazel
common:ci-linux --build_metadata=TAG_os=linux
common:ci-linux --platforms=//:rbe

# On mac, we can run all the build actions remotely but test actions locally.
common:ci-macos --config=ci-bazel
common:ci-macos --build_metadata=TAG_os=macos
common:ci-macos --strategy=TestRunner=darwin-sandbox,local

# On Windows, use Linux remote execution for build actions but keep test actions
# on the Windows runner so Bazel's normal test sharding and flaky-test retries
# still run against Windows binaries.
common:ci-windows-cross --config=ci-windows
common:ci-windows-cross --build_metadata=TAG_windows_cross_compile=true
common:ci-windows-cross --host_platform=//:rbe
common:ci-windows-cross --strategy=TestRunner=local
# V8 embeds IsolateData offsets in snapshot builtins; Windows snapshots must be
# generated by a Windows mksnapshot binary rather than the Linux RBE host tool.
common:ci-windows-cross --strategy=V8Mksnapshot=local
common:ci-windows-cross --local_test_jobs=8
common:ci-windows-cross --test_env=RUST_TEST_THREADS=1
# Native Windows CI still covers the PowerShell parser-process tests. The
# cross-built gnullvm binaries currently hang in those tests when run on the
# Windows runner. This replaces the Windows skip list, so retain its exclusions.
common:ci-windows-cross --test_env=CODEX_BAZEL_TEST_SKIP_FILTERS=command_safety::powershell_parser::tests::,suite::code_mode::code_mode_can_call_hidden_dynamic_tools,tests::windows_tests::conpty_ctrl_c_interrupts_powershell_foreground_child
common:ci-windows-cross --platforms=//:windows_x86_64_gnullvm
common:ci-windows-cross --extra_execution_platforms=//:rbe,//:windows_x86_64_msvc
common:ci-windows-cross --extra_toolchains=//:windows_gnullvm_tests_on_msvc_host_toolchain

# Linux-only V8 CI config.
common:ci-v8 --config=ci
common:ci-v8 --build_metadata=TAG_workflow=v8
common:ci-v8 --build_metadata=TAG_os=linux

# Source-built Bazel V8 artifacts use the in-process sandbox by default. This
# does not affect Cargo's default prebuilt rusty_v8 path.
common --@v8//:v8_enable_pointer_compression=True
common --@v8//:v8_enable_sandbox=True

# Keep currently published rusty_v8 release artifacts non-sandboxed until the
# artifact migration ships matching Rust feature selection for Cargo consumers.
common:v8-release-compat --@v8//:v8_enable_pointer_compression=False
common:v8-release-compat --@v8//:v8_enable_sandbox=False
common:v8-target-x64 --@v8//bazel/config:v8_target_cpu=x64
common:v8-target-arm64 --@v8//bazel/config:v8_target_cpu=arm64

# Match rusty_v8's upstream GN release contract for published artifacts: every
# target object uses Chromium's custom libc++ headers and the archive folds in
# the matching runtime objects.
common:rusty-v8-upstream-libcxx --@v8//:v8_use_rusty_v8_custom_libcxx=True

# Optional per-user local overrides.
try-import %workspace%/user.bazelrc
5 changes: 5 additions & 0 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[env]
# Ask compatible jemalloc processes for transparent huge pages.
# Cargo passes this to all child processes, including tests and cargo run.
# An explicit MALLOC_CONF (even empty) keeps precedence.
MALLOC_CONF = { value = "thp:always", force = false }
2 changes: 2 additions & 0 deletions .codespellignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
iTerm
iTerm2
numer
psuedo
SOM
te
TE
4 changes: 2 additions & 2 deletions .codespellrc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[codespell]
# Ref: https://github.com/codespell-project/codespell#using-a-config-file
skip = .git*,vendor,*-lock.yaml,*.lock,.codespellrc,*test.ts,*.jsonl,frame*.txt,*.snap,*.snap.new,*meriyah.umd.min.js
skip = .git*,vendor,*-lock.yaml,*.lock,.codespellrc,*test.ts,*.jsonl,frame*.txt,*.snap,*.snap.new
check-hidden = true
ignore-regex = ^\s*"image/\S+": ".*|\b(afterAll)\b
ignore-words-list = ratatui,ser,iTerm,iterm2,iterm,te,TE
ignore-words-list = ratatui,ser,iTerm,iterm2,iterm,te,TE,PASE,SEH
Loading