Commit Graph
4623 Commits
Author SHA1 Message Date
Charles CunninghamandCodex 3b8dbede74 codex: address PR review feedback (#14170)
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:36:33 -07:00
Charles CunninghamandCodex 11d49d9259 tui: queue smart approvals updates
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:36:33 -07:00
Charles CunninghamandCodex 8d3ed74adc tui: defer windows sandbox popup selection
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:36:06 -07:00
Charles CunninghamandCodex 6cc147624e tui: fix windows selection action inference
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:36:06 -07:00
Charles CunninghamandCodex f34490a3f2 tui: gate inline feedback command
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:36:06 -07:00
Charles CunninghamandCodex 6d0be7f9d8 tui: preserve queued drafts across session switches
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:36:06 -07:00
Charles CunninghamandCodex e0627c8f37 tui: reserve builtin aliases in command popup
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:36:06 -07:00
Charles CunninghamandCodex a6ffd1c887 tui: gate slash help by runtime availability
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:36:06 -07:00
Charles CunninghamandCodex 1a54e52fd9 tui: dedupe alias-expanded popup commands
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:36:05 -07:00
Charles CunninghamandCodex d65960d57b tui: restore multi-agents slash alias
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:53 -07:00
Charles CunninghamandCodex 90e964fed4 tui: pause replay after personality updates
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:53 -07:00
Charles CunninghamandCodex eb31929288 tui: align slash help subagents naming
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:53 -07:00
Charles CunninghamandCodex 39f436fd69 tui: complete legacy sandbox preflight asynchronously
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 51d1e061f8 tui: encode queued resume paths losslessly
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 5ebd3486a8 tui: refresh windows slash help snapshots
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 7e91f70be0 tui: run legacy sandbox preflight before enable
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 027524dac5 tui: classify slash commands by execution kind
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 02f6733dea tui: clear empty-arg slash drafts on dispatch
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex a80a654b04 tui: honor resume cwd prompt exits
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 3b4b48320e tui: route elevated approvals through setup flow
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 295f7fe976 tui: serialize exact resume picker targets
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 7bcff58ea4 tui: reject unavailable queued slash drafts on replay
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex ef2b09c61a tui: preserve selected resume target path
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 648739854e codex: fix windows slash help snapshots (#14170)
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 3a6e3a95be tui: remove dead windows sandbox event
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:52 -07:00
Charles CunninghamandCodex 614936d113 tui: fix duplicate windows sandbox import
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 96fe896919 codex: fix CI failure on PR #14170
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 7250e82a9b tui: preserve world-writable warning opt-out
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex d8c0839fc2 tui: reject unavailable queued slash drafts
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex efa6715884 tui: cfg-gate realtime settings draft helper
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 93ead12235 tui: block queued replay behind open popups
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 2268f98488 tui: clean up slash help footer hints
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex e477780626 tui: clear slash help search before closing
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 541bc6ef34 tui: let shift-n go backward in slash help search
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 56c7646161 tui: shorten slash help close hint
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 0727144012 tui: space slash help footer
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 6e20c5af8c tui: refine slash help search controls
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 77e1e8029a tui: add slash help search and status
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 8fbc9d32fd tui: let q dismiss slash help
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:51 -07:00
Charles CunninghamandCodex 528e3df3f6 tui: let slash help grow with terminal
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00
Charles CunninghamandCodex 6a278e943f tui: make slash help dismissible
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00
Charles CunninghamandCodex 8fda4e0fc2 tui: add slash command help page
Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00
Charles CunninghamandCodex ad586ba24c tui: share slash command shlex codec
Centralize slash command draft serialization on top of shlex so popup flows and queued replay use the same quoting and tokenization rules.

Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00
Charles CunninghamandCodex 7ea03de12b tui: resume queued replay after idle slash actions
Pause queued replay on local slash actions that need app-side updates or popup dismissal, then resume once the app event queue and bottom pane are idle. Add regression coverage for queued theme replay and popup-gated resume.

Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00
Charles CunninghamandCodex bcb3555e70 tui: reject repeated model modifiers
Track whether /model effort and scope modifiers were provided so repeated sentinel values like default and global are rejected consistently.

Validation: cargo test -p codex-tui; just fix -p codex-tui; just fmt

Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00
Charles CunninghamandCodex 8c45c1acfc tui: canonicalize interactive slash drafts
Route interactive slash-command pickers through canonical serialized drafts so live dispatch and queued replay share one parser/executor path.

Validation: cargo test -p codex-tui; just fix -p codex-tui; just fmt

Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00
Charles CunninghamandCodex 217da0c113 tui: make slash command helpers exhaustive
Switch supports_inline_args() and requires_interaction() to exhaustive matches so newly added SlashCommand variants must be classified explicitly.

Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00
Charles CunninghamandCodex bb3e61843a tui: clarify queue replay stop comment
Explain that the busy-path Stop return in dispatch_command() only matters for live dispatch because queued replay never reaches that branch.

Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00
Charles CunninghamandCodex 173d0ef4e3 tui: resolve interactive slash commands before queueing
Mark popup-opening slash commands as requiring interaction, open them immediately instead of queueing bare drafts while a task is running, and make queued replay restore any legacy bare interactive command draft instead of opening UI mid-drain.

Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00
Charles CunninghamandCodex 8267155494 tui: document slash dispatch replay contract
Explain above dispatch_command that live callers usually ignore its return value while queued replay uses QueueReplayControl to decide whether draining can continue.

Co-authored-by: Codex <noreply@openai.com>
2026-03-15 23:32:50 -07:00