openai / openai/codex

GPT-6 Astra loses explicit financial-state invariants and recommends premature actions

Open
#43,718 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug CLI model-behavior
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

What version of Codex CLI is running?

codex-cli 0.153.4 (latest reported by codex doctor on 8 September 2026)

What subscription do you have?

ChatGPT Pro

Which model were you using?

GPT-6 Astra with xhigh reasoning effort

What platform is your computer?

macOS 26.6.2, Apple Silicon (Darwin 25.6.0 arm64)

What terminal emulator and version are you using?

Ghostty 1.3.1

Codex doctor report

Privacy-sensitive local paths omitted. The relevant checks were:

{
  "schemaVersion": 1,
  "overallStatus": "ok",
  "codexVersion": "0.153.4",
  "platform": "macos-aarch64",
  "authMode": "chatgpt",
  "configLoad": "ok",
  "providerReachability": "ok",
  "websocketHandshake": "ok",
  "latestVersion": "0.153.4"
}

What issue are you seeing?

In a long-running Codex personal-finance project, GPT-6 Astra repeatedly lost or overrode explicit state invariants even though they were written in repository instructions and reinforced by the user.

The controlling rules included:

  • A newly reported bank float is already post-transaction; prior spending must not be deducted again.
  • Raw bank balance, projected personal cash and protected long-term liquidity must remain separate.
  • A business invoice of S$2,000 produced only S$200 of personal income; the full receipt was not personal spendable cash.
  • Do not recommend or request a Fullerton redemption before the recorded cash trigger is reached.
  • Routine small transactions require short bookkeeping, not a new strategy or several agents.
  • Status should surface only changed actions, not repeat unchanged warnings.

Astra nevertheless repeatedly:

  • deducted already-paid spending twice;
  • confused gross business receipts with personal income;
  • mixed raw bank cash with projected cash;
  • recommended preparing a redemption before the controlling trigger;
  • repeated stale status instead of calculating the newest evidence delta;
  • produced lengthy, confident explanations around an incorrect state;
  • required the user to supervise elementary bookkeeping and restore rules already present in the harness.

This is safety-sensitive. A wrong transfer or redemption recommendation can affect living expenses and retirement assets. The user should not have to act as the model's arithmetic checker and state store after supplying explicit invariants.

Frankly, this is exasperating. GPT-6 Astra is presented as OpenAI's most capable model for difficult end-to-end work, yet in this thread its practical intelligence appeared inept at preserving basic, explicitly stated financial state. More elaborate reasoning made the wrong conclusions harder—not easier—to unwind.

What steps can reproduce the bug?

Uploaded thread: 019fee77-c037-7ac0-9cbe-1e763d1e7c96

  1. Resume the uploaded thread with GPT-6 Astra at xhigh effort.
  2. Load the repository instructions containing the invariants above.
  3. Provide a new bank float and state that it already includes prior expenses.
  4. Add an ordinary small expense and then request a concise status or next action.
  5. Check whether the model uses the newest float as the anchor, books the expense once, preserves the redemption trigger and returns only a changed action.
  6. Repeat after correcting one state error and verify whether the correction changes the next calculation, rather than only producing a verbal acknowledgement.

The failures occurred repeatedly rather than as a single wording mistake.

What is the expected behavior?

Astra should:

  • preserve explicit user and repository invariants across the thread;
  • use the newest dated balance as the controlling raw-cash anchor;
  • deduct each payment exactly once;
  • keep gross business receipts separate from the owner's share;
  • avoid transfer, redemption or investment recommendations until the relevant trigger and evidence are established;
  • state uncertainty and hold when evidence conflicts;
  • answer routine updates briefly;
  • bind a user correction to the next calculation and action.

For this class of task, correctness should be measured at the accepted financial state and recommendation—not by how sophisticated the explanation sounds.

Additional information

Related to #42937, but this report adds a specific uploaded thread and a narrower safety-sensitive reproduction: loss of explicit state invariants leading to premature financial actions.

The same local harness behaves more consistently after switching away from Astra, although that is a workflow observation rather than a controlled benchmark. The core defect reported here is Astra's repeated failure to preserve explicit state and correction bindings despite a healthy CLI installation and sufficient local instructions.

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 with the uploaded thread 019fee77-c037-7ac0-9cbe-1e763d1e7c96 and the repository instructions containing the stated invariants. Reproduce the sequence using GPT-6 Astra at xhigh effort, beginning with a new bank float and an ordinary expense. Done means the newest float is the anchor, each payment is counted once, triggers are respected, corrections affect the next calculation, and unchanged warnings are omitted.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
ai, cli
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.