in goal last steer is re-included after each compaction
Resolved 💬 5 comments Opened May 6, 2026 by Szpadel Closed May 30, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor)
responded on this thread — see the highlighted reply below.
What version of Codex CLI is running?
v0.129.0-alpha.8
What subscription do you have?
pro
Which model were you using?
_No response_
What platform is your computer?
_No response_
What terminal emulator and version are you using (if applicable)?
_No response_
What issue are you seeing?
After each compaction event agent is re-reacting to last sent steer message that is no longer relevant.
What steps can reproduce the bug?
- Start long running /goal
- At some point sent steer like, refactor X now
- Agent will address steer message as expected, and continue normally
- Compaction happens
- Agent re-recive last steer again and tries to address it again
- This will repeat after every future compaction
What is the expected behavior?
Steer should not be re-included after compaction or, next goal cycle should displace user messages in history
Additional information
Here is codex analysis of the issue:
turn/steerbecomes pending input, then gets recorded as a normal user message once consumed.- Compaction preserves recent non-summary user messages. It does not know that an old user message was
only a temporary steer.
/goalcontinuation prompts are injected asdevelopermessages, not user messages, so they do not
displace that old steer as the latest “real user” message.
- After each compaction, the replacement history can still contain that old steer as the most recent
real user message, plus a fresh summary. The model can then treat it as newly salient and react to it
again.
5 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
This is now fixed. Earlier implementations of the
/goalfeature injected the goal continuation prompt as a developer message. The new implementation uses a user message, which prevents this problem.Doesn't really look fixed to me : in "goal" mode, the agent still seems to be wasting lots of tokens after each compaction re-evaluating the same previous steer message again and again and again.
Not fixed for me in Windows.
Feedback ID 019f7d4d-3161-7ce3-bb2e-2d0b8155f671
Version 26.715.31925 (latest available at time of writing).
One workaround I've come up to stop it re-handling old steering messages is to give a follow-up message with something like this:
"This steering command is an empty command to deal with a codex compacting bug that re-sends previous steering messages. Ignore this message."
@etraut-openai nearly two months later, this bug has not been fixed. These repeated steering commands can do serious damage in a task. Please re-open this issue and prioritise the bug as severe, as it's costing a lot of time and tokens. The sheer number of duplicate/similar issues in github should really be a giveaway that this is affecting a lot of people.