Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1248 commits
Select commit Hold shift + click to select a range
5e07d1f
Support OSC 52 clipboard forwarding through GNU screen (#58716)
etraut-openai Oct 31, 2026
231c8ab
Make Bazel checks advisory and pause Bazel release artifacts (#58717)
dkovalenko-oai Oct 31, 2026
8c811e8
Support rendering TUI conversations within an inset area (#58718)
fcoury-oai Nov 1, 2026
e02a32c
Wire native voice dependencies into full Rust CI (#58719)
bc-openai Nov 1, 2026
181b4a8
Prioritize pending approvals in the subagent picker (#58720)
tamird Nov 1, 2026
54201ea
Add naming and navigation helpers for TUI backend sessions (#58722)
bc-openai Nov 1, 2026
4b4a5cf
Use local Bazel for voice release builds (#58727)
fcoury-oai Nov 1, 2026
fe16bc0
Release superseded assistant text from live paginated history (#58751)
btraut-openai Nov 1, 2026
cb1bc0a
Remove Bazel outputs from DotSlash release configs (#58757)
fcoury-oai Nov 1, 2026
b8c5102
Distinguish update handoffs in TUI startup telemetry (#58766)
etraut-openai Nov 1, 2026
a098129
Validate `/fork` before consuming the composer draft (#58767)
etraut-openai Nov 1, 2026
05c08d7
Accept agent follow-ups through native turn input delivery (#58829)
won-openai Nov 2, 2026
3026a8e
Add model provider discovery to the app server (#58845)
alexsong-oai Nov 2, 2026
053e5b1
Add model provider configuration writes to the app-server (#58876)
alexsong-oai Nov 2, 2026
ba0d0e1
Handle steers accepted during the final transcript flush (#58877)
charliemarsh-oai Nov 2, 2026
020e0f7
Preserve timestamp ties when paginating threads (#58886)
jif-oai Nov 2, 2026
1e8b536
Add a feature-gated account check for CLI thread resume (#58890)
jif-oai Nov 2, 2026
aef7d27
Support model catalog overrides for plugin guidance (#58894)
goodman-oai Nov 2, 2026
84dfc20
Add native patch support to direct Guardian review (#58899)
swastik-oai Nov 2, 2026
f040905
Support permission requests in direct Guardian review (#58903)
swastik-oai Nov 2, 2026
18c6dbe
Add a standalone HTTP MCP server for the agent message board (#58904)
jif-oai Nov 2, 2026
517960e
Package the message board MCP connection as a plugin (#58908)
jif-oai Nov 2, 2026
6c4fa86
Add an in-memory launcher for the message-board MCP server (#58909)
jif-oai Nov 2, 2026
8806313
Scope local history discovery to the current ChatGPT account (#58918)
jif-oai Nov 2, 2026
8a17396
Fix live stream reflow at the allocated conversation width (#58927)
fcoury-oai Nov 2, 2026
4517871
Support direct Guardian review of patches invoked through exec_comman…
swastik-oai Nov 2, 2026
0712633
Release message-board state before HTTP shutdown returns (#58933)
jif-oai Nov 2, 2026
a54329e
Defer Guardian context trimming in elastic preparation (#58935)
ioanbudea-OAI Nov 2, 2026
6833483
Extract model-provider unit tests into separate files (#58936)
ioanbudea-OAI Nov 2, 2026
172d8fc
Verify queued network approval wakeups before polling again (#58937)
seanh-oai Nov 2, 2026
62bf900
Skip attribution for direct MCP tool calls (#58938)
victor-openai Nov 2, 2026
1a604d5
Refine additional-context byte histogram buckets (#58939)
akira-oai Nov 2, 2026
a5c4092
Retire the daemon_auto_start feature flag (#58940)
etraut-openai Nov 2, 2026
4515bc6
Fix model selection after provider setup (#58945)
etraut-openai Nov 2, 2026
00df7f6
Preserve Guardian sender context for cloud deliveries with orbit IDs …
felixxia-oai Nov 2, 2026
0a2dda4
Recover WebSocket transport after transient HTTP fallback (#58950)
charliemarsh-oai Nov 2, 2026
f381b64
Support caller-owned sideband channels for realtime attachments (#58953)
jiahao-oai Nov 2, 2026
ac9372e
Add a thread-store builder with host cleanup support (#58954)
felixxia-oai Nov 2, 2026
43ad1cb
Delete Guardian evidence boards when permanently deleting threads (#5…
felixxia-oai Nov 2, 2026
2fa67f0
Allow volatile World State sections to refresh after compaction (#58956)
rhan-oai Nov 2, 2026
af6e8d4
Cache marketplace name mismatches during automatic upgrades (#58957)
charliemarsh-oai Nov 2, 2026
b7ca29d
Recover inherited history from alternate rollout copies (#58959)
charliemarsh-oai Nov 2, 2026
ba0dfd3
Prefer indexed rollout paths when resolving ancestors (#58960)
charliemarsh-oai Nov 2, 2026
9ede2e8
Preserve Guardian budget policy through review recovery (#58962)
ioanbudea-OAI Nov 2, 2026
d893b14
Add host-owned turn admission to the agent runtime (#58963)
rhan-oai Nov 2, 2026
4477dcd
Stabilize and enable client tool output retention by default (#58964)
jif-oai Nov 2, 2026
0a2d5f5
Move protocol permissions tests into a separate file (#58966)
viyatb-oai Nov 2, 2026
6ff7f31
Avoid unnecessary rendering during TUI history loading and insertion …
etraut-openai Nov 2, 2026
8a1d425
Keep automatic thread title saves off the TUI event loop (#58970)
etraut-openai Nov 2, 2026
7accd27
Fix Escape handling in memory reset confirmation (#58971)
imac-oai Nov 2, 2026
9c23d93
Add opt-in MCP discovery for in-memory agent message boards (#58973)
jif-oai Nov 2, 2026
636cdcb
Bind final-message output before running sandboxed tools (#58974)
viyatb-oai Nov 2, 2026
c725e47
Add usage accounting for host-owned agent runtimes (#58975)
rhan-oai Nov 2, 2026
479c6be
Enable the segment heap on Windows CI runners (#58978)
anp-oai Nov 2, 2026
66e3b5a
Record turn critical path metrics and trace fields (#58980)
bkotsopoulos Nov 2, 2026
6c98467
Extend and bound exec-server session recovery (#58983)
richardopenai Nov 2, 2026
40cf168
Allow hosts to restrict a thread's root-only capabilities (#58984)
rhan-oai Nov 2, 2026
9da0765
Move agent message-board backend construction into the extension (#58…
jif-oai Nov 2, 2026
ac21e58
Respect delivery boundaries for injected agent messages (#58988)
won-openai Nov 2, 2026
4460449
Keep HTTP fallback active for the rest of the session (#58989)
charliemarsh-oai Nov 2, 2026
23bc6e5
Preserve modified Ctrl+C keys in active TUI views (#58990)
imac-oai Nov 2, 2026
db227ae
Add opt-in side conversation panes to the TUI (#58992)
fcoury-oai Nov 2, 2026
dd2df0a
Deliver environment hook decisions while output reads are queued (#58…
andrewgu-oai Nov 2, 2026
adca203
Preserve steering when returning to a long-running turn (#58998)
tamird Nov 2, 2026
52b4526
Allow hosted child threads to inherit a root session ID (#59000)
rhan-oai Nov 2, 2026
93f9f1a
Test connection events against active environment selections (#59001)
anp-oai Nov 2, 2026
857415f
Preserve Guardian review framing under elastic context limits (#59003)
ioanbudea-OAI Nov 2, 2026
26f73fb
Add host cycling and saved defaults for new TUI conversations (#59007)
bc-openai Nov 2, 2026
d92aae5
Centralize filesystem permission resolution for sandbox enforcement (…
viyatb-oai Nov 2, 2026
2816088
Add optional total token limits to elastic section configuration (#59…
ioanbudea-OAI Nov 2, 2026
9e77fb4
Make SQLite schema migrations safe for concurrent startup (#59015)
dkovalenko-oai Nov 2, 2026
c60cda3
Make observed thread metadata writes atomic and retryable (#59016)
dkovalenko-oai Nov 2, 2026
dec38fc
Add WebSocket connection metrics with reauthentication labels (#59018)
bromano-oai Nov 3, 2026
0585dcb
Preserve sandbox context in prepared MCP calls (#59020)
sayan-oai Nov 3, 2026
036e160
Allow concurrent readers of the installation ID (#59021)
dkovalenko-oai Nov 3, 2026
80a8710
Remove strict third-party tool deferral in Code Mode Only (#59025)
rishab-openai Nov 3, 2026
f58acd6
Use prepared MCP owner permissions in Guardian reviews (#59028)
sayan-oai Nov 3, 2026
b26f682
Add web search provider metadata and configuration (#59033)
yitaoh-oai Nov 3, 2026
3c074bb
Add model Search discovery to MCP bindings (#59034)
yitaoh-oai Nov 3, 2026
e839b82
Resolve model-selected search providers with policy-aware fallback (#…
yitaoh-oai Nov 3, 2026
16ddd53
Expose assistant content token counts in completion notifications (#5…
aojiao-oai Nov 3, 2026
7e8143a
Tie executor attachments to environment selection lifetimes (#59043)
anp-oai Nov 3, 2026
fbf5f0d
Decode live transcript updates in the cloud client (#59047)
bc-openai Nov 3, 2026
3f958ac
Run Bazel CI locally without BuildBuddy credentials (#59055)
dkovalenko-oai Nov 3, 2026
c512216
Tailor MCP doctor remediation to detected problems (#59057)
etraut-openai Nov 3, 2026
dbaead0
Classify daemon auto-start failures in TUI telemetry (#59058)
etraut-openai Nov 3, 2026
7ee5efa
Add typed item lifecycle events to the cloud client (#59066)
bc-openai Nov 3, 2026
9e23a47
Enable Bedrock onboarding through the local daemon (#59068)
etraut-openai Nov 3, 2026
29eed28
Enforce strict third-party tool deferral in Code Mode Only (#59071)
rishab-openai Nov 3, 2026
f9e7b19
Add optional animated GIF output to image generation (#59073)
Gan-Tu Nov 3, 2026
bc4116e
Add paginated history reads to the cloud client (#59075)
bc-openai Nov 3, 2026
616cab3
Clarify argument meanings in marketplace and guardian tests (#59076)
fcoury-oai Nov 3, 2026
ac91c14
Make native startup libraries available to Windows voice-host tests (…
fcoury-oai Nov 3, 2026
a805143
Add opt-in reconsideration of Guardian denials (#59107)
jif-oai Nov 3, 2026
33ffb6f
Normalize saved chat settings after model catalog refreshes (#59111)
dpatel-oai Nov 3, 2026
62d650d
Preserve worker permissions across sibling-triggered reloads (#59115)
jif-oai Nov 3, 2026
cb2b585
Preserve Guardian denials when reconsideration times out (#59118)
jif-oai Nov 3, 2026
86b2eca
Allow dangerous-command review when sandbox approvals are disabled (#…
jif-oai Nov 3, 2026
d393490
Remove a redundant permission profile clone in exec policy tests (#59…
jif-oai Nov 3, 2026
fc39cfc
Add context to Guardian test setup failures (#59125)
jif-oai Nov 3, 2026
eb15d3a
Add a shortcut to hide the focused side conversation pane (#59130)
fcoury-oai Nov 3, 2026
9630fcf
Clarify test failures and annotate a backend registration invariant (…
oh-openai Nov 3, 2026
3b54833
Parse Guardian review responses once (#59136)
felixxia-oai Nov 3, 2026
f05aa41
Route message-board notifications through agent mailboxes (#59139)
jif-oai Nov 3, 2026
4a97149
Expose thread APIs for message board access (#59154)
jif-oai Nov 3, 2026
6163584
Move Guardian unit tests into their owning crates (#59159)
felixxia-oai Nov 3, 2026
c0d2a6f
Clarify token-count and screen-ownership arguments in tests (#59161)
jif-oai Nov 3, 2026
bfdbf01
Move agent message board host integration to app-server (#59162)
jif-oai Nov 3, 2026
f7167ac
Move agent message board cleanup into the app server (#59167)
jif-oai Nov 3, 2026
079e17a
Wire shared runtime authentication through threads and API clients (#…
cooper-oai Nov 3, 2026
ac558e2
Resolve saved Daybreak preferences against advertised model programs …
jamy-OAI Nov 3, 2026
781d89b
Add cloud client message submission and turn interruption (#59201)
bc-openai Nov 3, 2026
6b2a275
Add shortcuts to focus the main composer and side conversation (#59208)
fcoury-oai Nov 3, 2026
1f8bf31
Use the public managed-features constructor in the guardian config te…
dylan-hurd-oai Nov 3, 2026
0ddee3e
Use Bazel's zstd library for zstd-sys (#59219)
cayoub-oai Nov 3, 2026
86cfa90
Revalidate Guardian denials when parent authorization changes (#59225)
felixxia-oai Nov 3, 2026
8960c36
Preserve installer stderr when releasing the install lock (#59227)
etraut-openai Nov 3, 2026
0ed9d6f
Handle `budget_reached` as a terminal session budget error (#59228)
yuning-oai Nov 3, 2026
8da8b0c
Fix test fixtures for Bazel sandboxes and Windows voice runtimes (#59…
dkovalenko-oai Nov 3, 2026
42b5b37
Suppress macOS warnings in the V8 libc++ Bazel build (#59232)
dkovalenko-oai Nov 3, 2026
5667598
Use resolved filesystem permissions in Windows sandbox policies (#59233)
viyatb-oai Nov 3, 2026
f1b0721
Enable uploaded audio with durable rejection recovery (#59234)
hung-oai Nov 3, 2026
3780a5f
Budget retained file audio during remote compaction (#59237)
hung-oai Nov 3, 2026
6f53fbf
Register the Guardian additional-context feature flag (#59238)
akira-oai Nov 3, 2026
a47a518
Honor Guardian's additional-context setting for tool outputs (#59239)
akira-oai Nov 3, 2026
3abe09d
Mark deny-path parent directories created by the Windows MXC launcher…
iceweasel-oai Nov 3, 2026
943a218
Set seven-day garbage collection ages for Bazel caches (#59242)
anp-oai Nov 3, 2026
d5830f6
Expand per-turn critical path capture and split inference timing (#59…
taohong339 Nov 3, 2026
6150643
Expand Windows deny-read globs without invoking ripgrep (#59250)
iceweasel-oai Nov 3, 2026
79dcb11
Track automatic review overhead in critical-path durations (#59251)
taohong339 Nov 3, 2026
f2e0bf2
Clarify TUI reconnect status for HTTP 429 stream errors (#59253)
etraut-openai Nov 3, 2026
1176913
Add stdin bearer authentication for exec-server registration (#59254)
apanasenko-oai Nov 3, 2026
8f32b72
Bind reusable backend clients to runtime authentication (#59255)
cooper-oai Nov 3, 2026
d582332
Add OSC 777 notifications and improve approval notification text (#59…
etraut-openai Nov 3, 2026
b59f2e2
Preserve prompt contrast when terminal colors are unavailable (#59257)
etraut-openai Nov 3, 2026
444359f
Refactor sandbox request preparation by backend (#59258)
viyatb-oai Nov 3, 2026
db14d75
Report auto-review overhead in turn critical-path analytics (#59260)
taohong339 Nov 3, 2026
b348080
Normalize loading bullets in the safety recourse snapshot test (#59263)
dkovalenko-oai Nov 3, 2026
1685f2d
Use measured durations to budget uploaded audio (#59268)
hung-oai Nov 4, 2026
c141c31
Preserve requested approval reviewers across policy overrides (#59272)
ioanbudea-OAI Nov 4, 2026
f39e45e
Support API workload identity authentication (#59275)
cooper-oai Nov 4, 2026
afefd0b
Enforce current filesystem permissions when reading repository skills…
dkovalenko-oai Nov 4, 2026
526f609
Preserve filesystem authority when loading skills (#59279)
dkovalenko-oai Nov 4, 2026
0b21a5b
Respect filesystem permissions when discovering repository skills (#5…
dkovalenko-oai Nov 4, 2026
0a944f8
Enable unified image budgeting by default (#59282)
dkovalenko-oai Nov 4, 2026
db3c444
Add directional conversation focus shortcuts in workspace mode (#59287)
fcoury-oai Nov 4, 2026
007f668
Respect turn filesystem permissions during executor skill discovery (…
dkovalenko-oai Nov 4, 2026
75aba67
Add outcome metrics for skill reads and installation listings (#59295)
TAFOYA-OAI Nov 4, 2026
f2b94ef
Switch rusty_v8 to the openai-oss-forks repository (#59299)
seanh-oai Nov 4, 2026
d84c872
Route response item IDs through a shared generator (#59312)
euroelessar Nov 4, 2026
3a2788e
Restore background terminals from the displayed thread's live state (…
etraut-openai Nov 4, 2026
19438ad
Introduce a dedicated context window ID type (#59328)
euroelessar Nov 4, 2026
93b4e5b
Stop TUI voice calls when the OS session locks (#59330)
bc-openai Nov 4, 2026
3e743d1
Add cloud thread activation with resolved settings (#59343)
bc-openai Nov 4, 2026
010520d
Add managed thread prewarming to the cloud client (#59351)
bc-openai Nov 4, 2026
71a4c07
Share context window ID allocation through the agent runtime (#59354)
euroelessar Nov 4, 2026
021fccb
Stabilize cross-platform tests and directory-change fork permissions …
dkovalenko-oai Nov 4, 2026
fc79b7f
Honor section limits in elastic Guardian context budgeting (#59401)
ioanbudea-OAI Nov 4, 2026
389d99f
Fix missing item ID generators in retained instruction tests (#59403)
jif-oai Nov 4, 2026
48524f3
Preserve pending agent messages across compaction (#59404)
jif-oai Nov 4, 2026
4d62359
Add opt-in elastic budgeting for synchronous Guardian reviews (#59444)
ioanbudea-OAI Nov 4, 2026
49f2fc2
Warn when project instructions exceed the configured byte budget (#59…
etraut-openai Nov 4, 2026
65c83ea
Restore the daemon auto-start feature flag (#59447)
etraut-openai Nov 4, 2026
ede5893
Prefer Launchpad for Linux zlib downloads in `rules_rs` (#59448)
jif-oai Nov 4, 2026
031829d
Carry per-input extension data to user message completion callbacks (…
wemmanuel-oai Nov 4, 2026
ba057e4
Drain queued side-conversation events before switching focus (#59458)
etraut-openai Nov 4, 2026
9ff072d
Allow prepared forks to use source revalidation (#59468)
owenlin0 Nov 4, 2026
4f6acbf
Preserve transcript interaction when switching panes with arrow keys …
fcoury-oai Nov 4, 2026
4437ff3
Extract agent message board hosting into a dedicated crate (#59473)
seanh-oai Nov 4, 2026
75424f8
Refactor MCP tool argument parsing and approval preparation (#59474)
swastik-oai Nov 4, 2026
b9099a1
Honor project agent opt-ins over lower-priority legacy opt-outs (#59476)
jif-oai Nov 4, 2026
bd7cfa3
Record saved multi-agent opt-outs in session telemetry (#59478)
jif-oai Nov 4, 2026
c9296fa
Deprecate the `multi_agent` feature flag (#59479)
jif-oai Nov 4, 2026
41cbd5b
Add per-turn prompt cache TTL options (#59480)
rm-openai Nov 4, 2026
d78f68f
Allow per-turn overrides for direct-only tool namespaces (#59481)
hlevy-openai Nov 4, 2026
9fcaeb7
Use MCP owner permissions for Guardian reviews and score reuse (#59489)
sayan-oai Nov 4, 2026
08bbbbd
Preserve external auth through transient provider failures (#59491)
cooper-oai Nov 4, 2026
5112ce6
Add a native cloud backend to the app-server client (#59493)
bc-openai Nov 4, 2026
464239d
Honor the configured credential store in gateway test fixtures (#59495)
jif-oai Nov 4, 2026
b260ee5
Preserve project agent opt-ins across enabled legacy feature flags (#…
jif-oai Nov 4, 2026
dc1cc0a
Add debug timing for thread item pagination (#59497)
yiqian-oai Nov 4, 2026
6744e5e
Fix the workspace policy test's auth loading call (#59501)
bc-openai Nov 4, 2026
e115d5f
Keep threads on their saved model provider when defaults change (#59503)
abhinav-oai Nov 4, 2026
e15c5fc
Upgrade argument comment lint to Dylint 6.3.0 (#59505)
seanh-oai Nov 4, 2026
ad5e6e5
Bind memory consolidation permissions to the memory root (#59507)
ioanbudea-OAI Nov 4, 2026
aa1399c
Forward caller metadata on MCP resource reads (#59509)
joesavona Nov 4, 2026
4b94e6c
Use server model defaults for fresh TUI sessions on every connection …
etraut-openai Nov 4, 2026
f8c4060
Bump the Python SDK build backend to `uv_build` 0.13 (#59512)
ww-oai Nov 4, 2026
763faa6
Add paginated cloud thread discovery to the cloud client (#59514)
bc-openai Nov 4, 2026
0851181
Simplify pending interactive request tracking in the TUI (#59517)
dkovalenko-oai Nov 4, 2026
47172f0
Validate UI trees at decode time and simplify display elements (#59518)
joesavona Nov 4, 2026
a5ed46c
Populate the local secrets cache after successful saves (#59520)
celia-oai Nov 4, 2026
b2a47c5
Forward cloud message item lifecycle notifications (#59524)
bc-openai Nov 4, 2026
e8e3197
Make side conversation panes resizable and interactive (#59527)
fcoury-oai Nov 5, 2026
9a7213c
Resolve workspace permissions at the sandbox launch boundary (#59530)
viyatb-oai Nov 5, 2026
f3074e3
Render host-owned V2 subagent rosters in environment context (#59531)
rhan-oai Nov 5, 2026
de6e72a
Add opt-in Unicode canonical matching to exec policy rules (#59535)
dylan-hurd-oai Nov 5, 2026
b386e2d
Add a token-efficient model-facing ID generator (#59540)
anp-oai Nov 5, 2026
f1b9421
Add model provider browsing to the TUI configuration panel (#59541)
alexsong-oai Nov 5, 2026
c903541
Use paused time throughout the Noise relay recovery test (#59544)
dylan-hurd-oai Nov 5, 2026
5c0b1ac
Extend runtime auth to account, plugin, and file requests (#59564)
cooper-oai Nov 5, 2026
529d965
Add ChatGPT token stdin authentication to exec-server (#59569)
aagrawal-oai Nov 5, 2026
388aee4
Use runtime authentication across backend request paths (#59572)
cooper-oai Nov 5, 2026
f732dce
Enable pane-local image previews in tmux (#59579)
etraut-openai Nov 5, 2026
695961e
Enable pets in fullscreen tmux panes with Kitty passthrough (#59580)
etraut-openai Nov 5, 2026
56032e9
Increase shared code-mode host capacity safely (#59590)
pash-openai Nov 5, 2026
ed8eac4
Add keyboard controls for TUI pane resizing and zoom (#59595)
fcoury-oai Nov 5, 2026
edd0d89
Add a root-only option for background compaction (#59598)
oliverye-oai Nov 5, 2026
e7f32cf
Add experimental command output deferral to thread item listings (#59…
btraut-openai Nov 5, 2026
c0100ad
Remove the legacy Seatbelt network policy wrapper (#59632)
ioanbudea-OAI Nov 5, 2026
d4902ce
Expose retained command sessions in incremental world state (#59633)
jif-oai Nov 5, 2026
2be3dd3
Ignore the unmaintained pin-utils advisory in dependency audits (#59638)
jif-oai Nov 5, 2026
86ac091
Preserve turn configuration in Guardian scoring and approvals (#59642)
ioanbudea-OAI Nov 5, 2026
1e9e8bd
Resample Guardian denials with the original request (#59659)
jif-oai Nov 5, 2026
5141f97
Add original-history evidence snapshots for Guardian V3 (#59669)
felixxia-oai Nov 5, 2026
ac03f42
Capture Guardian evidence incrementally with explicit acknowledgement…
felixxia-oai Nov 5, 2026
481cb03
Add evidence housekeeping for Guardian v3 (#59671)
felixxia-oai Nov 5, 2026
49f0c60
Remove the legacy sandbox policy summary helper (#59677)
ioanbudea-OAI Nov 5, 2026
d786ff9
Extract channel notification formatting into `PostPreview` (#59688)
jif-oai Nov 5, 2026
55b1c64
Split MCP direct-mode exposure coverage into separate test cases (#59…
jif-oai Nov 5, 2026
ee80baa
Support Cloud conversation requests in the app-server client (#59693)
bc-openai Nov 5, 2026
44252e3
Fix reasoning summary restoration in the TUI (#59698)
etraut-openai Nov 5, 2026
054128c
Fix TUI assistant messages interrupted by tool execution (#59700)
etraut-openai Nov 5, 2026
0327a3e
Prioritize filename matches in fuzzy file search (#59709)
omers-oai Nov 5, 2026
2a32e7c
Expand Linux sandbox deny globs in process (#59711)
iceweasel-oai Nov 5, 2026
c587fbc
Clarify message board notification delivery documentation (#59713)
jif-oai Nov 5, 2026
be765f1
Set `output_deferred` to false for cloud thread items (#59714)
jif-oai Nov 5, 2026
b2a8e68
Allow choosing the default provider for new chats in the TUI (#59722)
alexsong-oai Nov 5, 2026
f69c660
Add host reporting for terminal agent turn outcomes (#59725)
rhan-oai Nov 5, 2026
119a547
Prevent idle Windows MCP pipes from blocking unrelated I/O (#59726)
majapw-oai Nov 5, 2026
2e58636
Use Codex releases as the primary libcap source for musl builds (#59728)
anp-oai Nov 5, 2026
c8a1109
Omit native multi-agent guidance when native tools are disabled (#59732)
won-openai Nov 5, 2026
3934ae9
Support direct Guardian review of recorded MCP calls (#59735)
swastik-oai Nov 5, 2026
84a1476
Stabilize the unreadable-glob traversal error test (#59736)
maxwell-oai[bot] Nov 5, 2026
9abfbce
Restrict Guardian native multi-agent history to the OpenAI provider (…
jif-oai Nov 5, 2026
194f266
Add a sidebar chooser and floating workspace shortcut panels (#59739)
fcoury-oai Nov 5, 2026
af92ae1
Forward explicit cyber access programs with header authentication (#5…
jamy-OAI Nov 5, 2026
b93a7b1
Repair legacy Windows sandbox bin permissions for SYSTEM (#59745)
zm-oai Nov 5, 2026
e934edd
Add typed Cloud user-message submission receipts (#59746)
bc-openai Nov 5, 2026
219ab40
Use runtime authentication for OpenAI MCP and app requests (#59749)
cooper-oai Nov 5, 2026
c48785a
Stop Noise relay recovery on rejected executor credentials (#59750)
richardopenai Nov 5, 2026
0935808
Configure the Opus Bazel patch and isolate auth tests (#59752)
bkotsopoulos Nov 5, 2026
b313cca
Enforce host-required cyber access programs per thread (#59754)
jamy-OAI Nov 5, 2026
b3c5a49
Update WebSocket dependency forks (#59759)
charliemarsh-oai Nov 5, 2026
9df200a
Add sidebar tabs and nonblocking side-chat creation (#59767)
fcoury-oai Nov 5, 2026
08e4f43
Stop prefetching plugin discovery at app-server startup (#59768)
zamoshchin-openai Nov 5, 2026
74417e9
Reuse decoded WebSocket event kinds in telemetry (#59769)
charliemarsh-oai Nov 5, 2026
94ca55a
Add shared service-tier support for host-owned agents (#59770)
rhan-oai Nov 6, 2026
c2bd770
Remove the legacy sandbox policy constructor (#59772)
ioanbudea-OAI Nov 6, 2026
835933f
Merge remote-tracking branch 'upstream/main' into sync-upstream-2026-…
thedancingdeveloper Nov 6, 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.
73 changes: 57 additions & 16 deletions .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,23 @@ common --repo_env=BAZEL_NO_APPLE_CPP_TOOLCHAIN=1
common --xcode_version_config=//:disable_xcode

common --disk_cache=~/.cache/bazel-disk-cache
common --experimental_disk_cache_gc_max_age=7d
common --repo_contents_cache=~/.cache/bazel-repo-contents-cache
common --repo_contents_cache_gc_max_age=7d
common --repository_cache=~/.cache/bazel-repo-cache
common --remote_cache_compression
startup --experimental_remote_repo_contents_cache
# rules_python 2.x requires symlink support for Windows Python launchers.
startup --windows_enable_symlinks

common --experimental_platform_in_output_dir

# Match Cargo's MSVC static CRT policy and V8's allocator linkage. Only the
# MSVC C/C++ toolchain consumes this feature; other toolchains ignore it.
# Include host dependencies so native build tools use the same runtime.
build --features=static_link_msvcrt
build --host_features=static_link_msvcrt

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

Expand All @@ -37,6 +47,8 @@ common:macos --strategy=CcConfigureMakeRule=remote,sandboxed,local
common:windows --test_env=SYSTEMROOT
common:windows --test_env=COMSPEC
common:windows --test_env=WINDIR
common:windows --test_env=SystemDrive
common:windows --test_env=LOCALAPPDATA
# 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.
Expand Down Expand Up @@ -99,6 +111,8 @@ common:remote --jobs=800
common:ci --remote_download_minimal
common:ci --keep_going
common:ci --verbose_failures
# A failed snapshot assertion should print its diff without leaving a .snap.new after a passing retry.
test:ci --test_env=INSTA_UPDATE=no
common:ci --build_metadata=REPO_URL=https://github.com/openai/codex.git
common:ci --build_metadata=ROLE=CI
common:ci --build_metadata=VISIBILITY=PUBLIC
Expand Down Expand Up @@ -208,22 +222,49 @@ 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
# Native Windows MSVC builds inherit the runner's MSVC SDK environment.
# Client environment capture and repository discovery happen before target
# transitions, so these runner settings cannot live in runtime_package.bzl.
# Hermetic LLVM targets the GNU ABI on Windows even on an MSVC platform.
build:ci-windows-msvc --repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=0
build:ci-windows-msvc --extra_toolchains=@local_config_cc//:cc-toolchain-x64_windows,@local_config_cc//:cc-toolchain-arm64_windows
build:ci-windows-msvc --action_env=PATH
build:ci-windows-msvc --host_action_env=PATH
build:ci-windows-msvc --action_env=INCLUDE
build:ci-windows-msvc --host_action_env=INCLUDE
build:ci-windows-msvc --action_env=LIB
build:ci-windows-msvc --host_action_env=LIB
build:ci-windows-msvc --action_env=LIBPATH
build:ci-windows-msvc --host_action_env=LIBPATH
build:ci-windows-msvc --action_env=SystemRoot
build:ci-windows-msvc --host_action_env=SystemRoot
build:ci-windows-msvc --action_env=PROCESSOR_ARCHITECTURE
build:ci-windows-msvc --host_action_env=PROCESSOR_ARCHITECTURE
build:ci-windows-msvc --action_env=WindowsSdkDir
build:ci-windows-msvc --host_action_env=WindowsSdkDir
build:ci-windows-msvc --action_env=VCINSTALLDIR
build:ci-windows-msvc --host_action_env=VCINSTALLDIR

# Release profile settings are also defined in codex-rs/Cargo.toml.
# runtime_package.bzl applies this profile to archive dependencies automatically.
# Packaging extracts symbols before stripping; the Rust toolchains retain
# line tables and use split-debuginfo=off. opt mode selects Rust opt-level=3,
# which disables debug assertions and overflow checks by default.
build:release --compilation_mode=opt
build:release --@rules_rust//rust/settings:lto=thin
build:release --@rules_rust//rust/settings:codegen_units=4
# Match observed Cargo 1.95 build-tool commands: opt-level=0, assertions off,
# and rustc's non-incremental default of 16 codegen units (not target's 4).
build:release --@rules_rust//rust/settings:extra_exec_rustc_flag=-Copt-level=0
build:release --@rules_rust//rust/settings:extra_exec_rustc_flag=-Ccodegen-units=16
build:release --@rules_rust//rust/settings:extra_exec_rustc_flag=-Cdebug-assertions=no

# Compatibility: Cargo build scripts consume the Rust profile, including debug
# info, and choose their native optimization. Preserve explicit user C/C++ flags.
# Opt in for target and host dependencies; normal Bazel builds keep defaults.
build:release --features=cargo-release-profile
build:release --host_features=cargo-release-profile
# Bubblewrap and voice set release options on their own native rules.

# Optional per-user local overrides.
try-import %workspace%/user.bazelrc
2 changes: 2 additions & 0 deletions .codespellignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
iTerm
iTerm2
numer
oint
psuedo
SOM
te
TE
WRONLY
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
codex-rs/app-server-protocol/schema/** linguist-generated
codex-rs/hooks/schema/generated/** linguist-generated
third_party/voice/sources.json text eol=lf
patches/v8_array_sort_elements_kind.patch text eol=lf
35 changes: 35 additions & 0 deletions .github/actions/build-bazel-package-binaries/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Build Bazel package binaries
description: Set up Bazel and stage unstripped runtime package binaries and symbols.
inputs:
target:
description: Rust release target triple.
required: true
build-mode:
description: Release optimizations, or debug for faster package smoke builds.
default: release

runs:
using: composite
steps:
- name: Set up Bazel
uses: ./.github/actions/prepare-bazel-ci
with:
target: ${{ inputs.target }}
cache-scope: bazel-release

- name: Install Cargo for workspace metadata
uses: dtolnay/rust-toolchain@e081816240890017053eacbb1bdf337761dc5582 # 1.95.0

- name: Configure MSVC environment
if: ${{ runner.os == 'Windows' }}
uses: ./.github/actions/setup-msvc-env
with:
target: ${{ inputs.target }}

- name: Build Bazel release binaries and symbols
uses: ./.github/actions/build-bazel-release
with:
target: ${{ inputs.target }}
bundle: combined
release-dir: ${{ env.CARGO_TARGET_DIR }}/${{ inputs.target }}/release
build-mode: ${{ inputs.build-mode }}
51 changes: 51 additions & 0 deletions .github/actions/build-bazel-release/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Build Bazel release staging archive
description: Build a binary/symbol archive and extract writable inputs for existing signing and packaging.
inputs:
target:
description: Rust release target triple.
required: true
bundle:
description: Binary bundle (combined, primary, app-server, or helpers).
default: combined
release-dir:
description: Directory where the archive is extracted for signing and packaging.
required: true
build-mode:
description: Release optimizations, or debug for faster package smoke builds.
default: release

runs:
using: composite
steps:
- name: Refresh release workspace metadata
shell: bash
working-directory: ${{ github.workspace }}/codex-rs
# Release tags change Cargo.toml; rules_rs needs matching workspace lock entries.
run: cargo update --workspace

- name: Build staging archive
shell: bash
working-directory: ${{ github.workspace }}
env:
TARGET: ${{ inputs.target }}
BUNDLE: ${{ inputs.bundle }}
BUILD_MODE: ${{ inputs.build-mode }}
# Keep Git Bash from rewriting Bazel labels as Windows paths.
MSYS2_ARG_CONV_EXCL: "*"
run: |
python3 .github/scripts/run_bazel_with_buildbuddy.py build \
${{ runner.os == 'Windows' && '--config=ci-windows-msvc' || '' }} \
${{ runner.os == 'macOS' && '--config=ci-macos --remote_download_toplevel --build_metadata=VISIBILITY=PRIVATE' || '' }} \
"--platforms=@rules_rs//rs/platforms:$TARGET" \
"--//codex-rs:runtime_package_build_mode=$BUILD_MODE" \
"//codex-rs:runtime_package_$BUNDLE"
- name: Extract staging archive
shell: bash
working-directory: ${{ github.workspace }}
env:
BUNDLE: ${{ inputs.bundle }}
RELEASE_DIR: ${{ inputs.release-dir }}
run: |
mkdir -p "$RELEASE_DIR"
tar -xzf "bazel-bin/codex-rs/runtime_package_$BUNDLE.tar.gz" -C "$RELEASE_DIR"
135 changes: 135 additions & 0 deletions .github/actions/build-cargo-package-binaries/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
name: Build Cargo package binaries
description: Set up Cargo and build unstripped runtime package binaries and symbols.
inputs:
target:
description: Rust release target triple.
required: true
binaries:
description: Space-separated binary target names.
required: true
build-mode:
description: Release optimizations, or debug for faster package smoke builds.
default: release

runs:
using: composite
steps:
- uses: ./.github/actions/setup-ci

- name: Configure Cargo release profile
shell: bash
env:
BUILD_MODE: ${{ inputs.build-mode }}
# macOS symbol extraction needs packed dSYM bundles before binaries are stripped.
CARGO_PROFILE_RELEASE_SPLIT_DEBUGINFO: ${{ contains(inputs.target, 'apple-darwin') && 'packed' || 'off' }}
run: |
set -euo pipefail
echo "CARGO_PROFILE_RELEASE_SPLIT_DEBUGINFO=$CARGO_PROFILE_RELEASE_SPLIT_DEBUGINFO" >> "$GITHUB_ENV"
case "$BUILD_MODE" in
release) ;;
debug)
# Use the release profile so assertions, symbols and packaging match production.
# Only trade compiler optimizations for faster builds.
{
echo "CARGO_PROFILE_RELEASE_OPT_LEVEL=0"
echo "CARGO_PROFILE_RELEASE_LTO=off"
echo "CARGO_PROFILE_RELEASE_CODEGEN_UNITS=256"
} >> "$GITHUB_ENV"
;;
*) echo "Unsupported build mode: $BUILD_MODE" >&2; exit 1 ;;
esac

- uses: dtolnay/rust-toolchain@e081816240890017053eacbb1bdf337761dc5582 # 1.95.0
with:
targets: ${{ inputs.target }}

- name: Use hermetic Cargo home (musl)
if: ${{ runner.os == 'Linux' }}
shell: bash
working-directory: codex-rs
run: |
set -euo pipefail
cargo_home="${GITHUB_WORKSPACE}/.cargo-home"
mkdir -p "${cargo_home}/bin"
echo "CARGO_HOME=${cargo_home}" >> "$GITHUB_ENV"
echo "${cargo_home}/bin" >> "$GITHUB_PATH"
: > "${cargo_home}/config.toml"

- name: Install Zig
if: ${{ runner.os == 'Linux' }}
uses: mlugg/setup-zig@d1434d08867e3ee9daa34448df10607b98908d29 # v2.2.1
with:
version: 0.14.0
use-cache: false

- name: Install musl build tools
if: ${{ runner.os == 'Linux' }}
shell: bash
working-directory: codex-rs
env:
TARGET: ${{ inputs.target }}
run: bash "${GITHUB_WORKSPACE}/.github/scripts/install-musl-build-tools.sh"

- name: Disable aws-lc jitter entropy (musl)
if: ${{ runner.os == 'Linux' }}
shell: bash
working-directory: codex-rs
env:
TARGET: ${{ inputs.target }}
run: |
set -euo pipefail
# aws-lc's jitter entropy path does not work reliably on musl builders,
# so disable it globally and per target.
echo "AWS_LC_SYS_NO_JITTER_ENTROPY=1" >> "$GITHUB_ENV"
target_no_jitter="AWS_LC_SYS_NO_JITTER_ENTROPY_${TARGET}"
target_no_jitter="${target_no_jitter//-/_}"
echo "${target_no_jitter}=1" >> "$GITHUB_ENV"

- name: Configure rusty_v8 artifact overrides and verify checksums
uses: ./.github/actions/setup-rusty-v8
with:
target: ${{ inputs.target }}

- name: Configure MSVC environment
if: ${{ runner.os == 'Windows' }}
uses: ./.github/actions/setup-msvc-env
with:
target: ${{ inputs.target }}

- name: Build bwrap and export digest
if: ${{ runner.os == 'Linux' }}
shell: bash
working-directory: codex-rs
env:
TARGET: ${{ inputs.target }}
run: |
set -euo pipefail
cargo build --target "${TARGET}" --release --timings --bin bwrap

bwrap_path="${CARGO_TARGET_DIR}/${TARGET}/release/bwrap"
# Codex embeds this digest at build time and verifies the packaged
# bwrap at runtime, so hash its final stripped bytes first.
strip --strip-debug --strip-unneeded "$bwrap_path"
digest="$(sha256sum "$bwrap_path" | awk '{print $1}')"
echo "CODEX_BWRAP_SHA256=${digest}" >> "$GITHUB_ENV"

- name: Build Codex package binaries
shell: bash
working-directory: codex-rs
env:
TARGET: ${{ inputs.target }}
BINARIES: ${{ inputs.binaries }}
run: |
set -euo pipefail
build_args=()
for binary in $BINARIES; do
build_args+=(--bin "$binary")
done
# SQLite intrinsics can emit instructions unsupported by older x64
# CPUs, causing Windows release binaries to crash during startup.
if [[ "${TARGET}" == "x86_64-pc-windows-msvc" ]]; then
export LIBSQLITE3_FLAGS=SQLITE_DISABLE_INTRINSIC
fi
STABLE_GIT_COMMIT="$(git rev-parse HEAD)"
export STABLE_GIT_COMMIT
cargo build --target "${TARGET}" --release --timings "${build_args[@]}"
Loading
Loading