openai / openai/codex

App composer: Ctrl+C submits cancelled draft and drops next prompt

Open
#41,877 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app bug session
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

What version of Codex is running?

codex-cli 0.147.0

Which model was in use?

gpt-5.6-sol

What platform is the computer?

Linux 6.8.0-138-generic x86_64, using the Codex app interface.

What issue occurred?

Cancelling a partially composed follow-up with Ctrl+C submitted that cancelled draft to the active conversation. A different question typed and explicitly submitted immediately afterward disappeared and never reached the agent.

The cancelled draft was:

do not commit any changes from this review, keep in working tree for discussion.

The transcript and the agent both received that text as an ordinary user message. The user then noticed that the question they had actually submitted was absent. This establishes both sides of the failure: a cancelled draft was delivered, and its replacement was lost.

Steps to reproduce
  1. Start a Codex conversation and let the agent work on an active turn.
  2. Begin composing a follow-up message while that turn is active.
  3. Press Ctrl+C to cancel/discard the partial follow-up without submitting it.
  4. Compose a different follow-up and submit it normally.
  5. Observe that the cancelled draft appears in the conversation, while the subsequently submitted message is absent.

This may be timing-sensitive and may involve the active-turn steering/queued-message path.

Expected behavior
  • Ctrl+C should discard or cancel the partial draft without delivering it as a user message.
  • The next message explicitly submitted by the user should be delivered exactly once.
Actual behavior
  • The Ctrl+C-cancelled draft was delivered as a user message.
  • The replacement message submitted afterward was lost.
Additional information

No conversation identifiers or repository details are included because this is a public report. This appears related to prompt queue/interrupt state handling, but it is not the same symptom as a prompt merely disappearing: the cancelled draft replaced the intended submission.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the active-turn scenario in the Codex app on Linux, using the Ctrl+C cancellation and replacement-submission steps described here. Then trace the prompt queue/interrupt state handling; done means the cancelled draft is discarded and the next explicitly submitted message is delivered exactly once.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.