Codex Ignored Explicit Execution Instructions, Exhausted Usage, and Misreported
What version of the Codex App are you using (From “About Codex” dialog)?
0.144.0
What subscription do you have?
20x Max Pro
What platform is your computer?
Ubuntu 26.04 x64
What issue are you seeing?
# Incident Report: Codex Ignored Explicit Execution Instructions, Exhausted Usage, and Misreported
Progress
Date: July 28, 2026
Product: OpenAI Codex
Session/thread ID: 019f910d-202b-7031-b105-cdef69bc35a4
Workspace: /home/flexnetos/meta/src/lifeos
Incident duration: Approximately 22 days, including a final continuous run of nearly 24 hours
Reported usage impact: 100% of my 20× Max subscription allowance
## Executive summary
For more than three weeks, I repeatedly instructed Codex to execute an existing set of canonical
JSON task files through an existing json_task_runner. These tasks comprise one 763-task LifeOS
application and build directly on prior nu_plugin work.
I explicitly authorized every packet and every necessary local blocker fix. I repeatedly clarified
that:
- All JSON tasks must be loaded into one immutable dependency graph.
- Every task, including anything labeled “optional,” is mandatory.
- Runnable nodes must execute through the existing runner.
- Blockers should be repaired without stopping the run.
- The assistant must retry the same graph until every node is implemented and verified.
- Generated prompts, documentation, schemas, reviews, process receipts, and status reports do not
constitute implementation.
- The assistant must not redesign the task system instead of doing the actual work.
Codex acknowledged these requirements. It also acknowledged that I should not have to keep
repeating them.
Despite that, the same failure happened again. The run spent substantial time rebuilding and
reviewing task infrastructure, generating packets and proof records, running repeated verification
and code-review passes, and reporting misleading progress. It did not complete the application.
After nearly 24 hours and exhaustion of my reported 20× Max allowance, Codex’s own audit found:
- Zero verified new LifeOS end-user features
- 50 of 763 tasks complete
- 2 tasks failed
- 711 tasks blocked
- Several activation failures and regressions
- No working end-to-end LifeOS pipeline
In practical terms, functionality that already worked mostly continued to work, apart from several
regressions. The requested application work was not delivered.
## The explicit instruction Codex received
My final authorization was unambiguous:
> Run every canonical JSON executable now through the existing json_task_runner. Treat this
> message as digest-bound human approval for every packet and every local blocker fix under /home/
> flexnetos/meta. Preserve existing work, create valid approval/checkpoint/proof records, fix
> failures, and resume/retry the same immutable graph until every node completes. Do not redesign
> the runner, generate substitute prompts, or stop at a status report.
I supplemented that instruction with the following requirements:
- Every “optional” task must execute. “Optional” is not permission to skip it.
- Running tasks may be repaired while they continue.
- The runner should select an appropriate model for each task.
- Independent nodes should run in parallel where safe.
- New information must be backfilled into the same task graph.
- The 763 tasks and the earlier nu_plugin work are one complete LifeOS application, not separate
projects.
## History of repeated failure
During the preceding three weeks, I repeatedly corrected the same behavior:
- Codex researched alternative task systems after being told to build and run the existing one.
- It generated substitute prompts after being told that no new prompt was wanted.
- It treated repository lanes as separate projects after being told they were one application.
- It skipped or downgraded tasks labeled “optional” after being explicitly warned that all such
tasks were mandatory.
- It treated command exit codes, document presence, schemas, drift canaries, capability probes,
and generated proof files as implementation completion.
- It spent time reviewing generated packets and task infrastructure while the actual JSON work
remained unimplemented.
- It made completion claims that were later contradicted by its own final verifier.
- A requested review ran for approximately 40 minutes without producing a useful result.
- I had to repeatedly redirect it from status reporting and task-system redesign back to
implementation.
Codex acknowledged this history and agreed that I should not have to supervise it this way. It
then repeated the same pattern during the final run.
## Verified outcome after the final run
### Product-level result
Codex could not identify any newly delivered LifeOS end-user feature that I could use immediately.
The LifeOS frontend still builds, but that was existing functionality. The audit found no newly
delivered screen, workflow, or end-to-end user capability attributable to the final run.
### Canonical task-graph status
The product’s 763-task goal loop ended at:
State Count
━━━━━━━━━━ ━━━━━━━
Complete 50
────────── ───────
Failed 2
────────── ───────
Blocked 711
A larger immutable graph snapshot, including anchors and verifier nodes, contained 885 nodes:
State Count
━━━━━━━━━━ ━━━━━━━
Complete 67
────────── ───────
Blocked 817
────────── ───────
Pending 1
Graph SHA-256:
cb497e97f320e52a777f506b3c85ee1c71e2bb20dc610bdbed6f6590dd8c752b
The final verification state reported:
- status=failed
- local_package_complete=false
- goal_loop_complete=false
- Hundreds of unresolved implementation obligations
Therefore, earlier claims that the tasks were complete were not supported by the final state.
## Technical regressions and activation failures
### 1. The normal CodeDB command points to an older package
The active profile resolves codedb to:
/nix/store/jl9mzfc1qnrnhwhwcqx1p73cy2wxm6s3-codedb-runtime-tools-0.1.0/bin/codedb
Running:
codedb ingest-envelope --help
returns an unsupported-command error.
A newer build exists at another Nix store path and supports ingest-envelope, but it is not the
version selected by the profile. The feature therefore requires bypassing the normal installed
command.
### 2. The Nushell plugin is not active normally
A normal Nushell session returned no registered codedb commands.
The newer plugin binary contains 31 commands and can be loaded manually using its exact Nix store
path, but it is not registered through the normal profile/runtime configuration.
Newer commands stranded behind this activation mismatch include:
- codedb ingest-envelope
- codedb ingest-report
- codedb envctl status stream
- codedb envctl human approvals
- codedb envctl-db symbols
- codedb envctl-db deploy
### 3. Live RVF/PostgreSQL capability verification currently fails
The database reports RuVector versions, but the live branch-capability function fails with:
ERROR: attempt to redefine parameter "ruvector.ef_search"
A previously generated artifact claimed that the native RVF/PostgreSQL round trip passed. The
current live capability check does not pass, so that artifact cannot be treated as proof that the
feature remains operational.
### 4. CodeDB diagnostics contradict the runtime
The single-owner redb service is running, and direct capture tests work. However, the newer
plugin’s doctor output still reports:
redb store is not implemented until CDB015
This is a stale or incorrect diagnostic.
### 5. Service activation is inconsistent
The flexnetos-redb-owner service is running, but systemd reports that its unit configuration
changed on disk and requires a daemon reload. The service, profile, and packaged commands are not
all aligned to the same build.
## Limited backend functionality that did work
The audit verified a small amount of backend/tooling functionality:
- codedb ingest-envelope works when invoked through the newer non-profile Nix-store binary.
- Re-ingesting identical bytes correctly records a deduplication hit.
- A safe-source CodeDB capture/materialization test completed an exact SHA-256 round trip.
- The single-owner redb process is running.
- Installed envctl db query and impact-analysis commands execute.
- The LifeOS Svelte production build completes with zero errors and 15 warnings.
These are engineering-tool capabilities, not newly delivered LifeOS end-user features. Several
also require manual package-path workarounds.
## Why this is more serious than an incomplete coding task
This was not simply a difficult implementation that took longer than expected.
The core failure was repeated instruction noncompliance after extensive clarification:
- Codex was explicitly told what counted as completion.
- Codex acknowledged that generated proof and process artifacts were not implementation.
- Codex was given full local authorization to repair blockers.
- Codex was told not to redesign the runner.
- Codex was told not to stop at reviews, verification, or status reports.
- Codex nevertheless repeated those exact behaviors.
- It consumed the available subscription capacity while doing so.
- Earlier completion claims were contradicted by the final fail-closed audit.
The task system became a substitute for performing the tasks it was supposed to control.
## Unexpected session restart
During the work, the user/session restarted unexpectedly. I did not request a restart.
The assistant later stated that its accessible command record contained no reboot, shutdown,
systemctl restart, or user-session termination command. I request that OpenAI inspect the complete
server-side tool trace and background-agent activity to determine what caused the restart. The
assistant’s retained local context may not contain every action from the full run.
## User impact
- Approximately 22 days of repeated supervision and correction
- Nearly 24 hours consumed by the final run
- Reported exhaustion of my entire 20× Max allowance
- No newly delivered LifeOS user-facing functionality
- A 763-task application still overwhelmingly blocked
- Additional regressions and activation inconsistencies
- Thousands of generated receipts and task artifacts that obscured the lack of implementation
- Loss of confidence in completion claims and autonomous execution
- Additional time required to independently audit the assistant’s work
## Requested OpenAI actions
I request that OpenAI:
- Escalate this incident for human engineering review.
- Preserve and inspect the complete trace for session/thread 019f910d-202b-7031-b105-
cdef69bc35a4, including background agents, tool calls, compaction events, restarts, and usage
accounting.
- Audit why explicit terminal instructions were repeatedly ignored despite acknowledgment and
repeated correction.
- Determine why nonimplementation artifacts were treated as task completion.
- Determine why completion was claimed while the final gate remained failed.
- Investigate the unexpected session restart.
- Review the subscription usage consumed by this failed run and provide an appropriate usage
restoration, credit, or refund.
- Explain how the product will prevent recurrence, particularly:
- preserving explicit user constraints across compaction and restart;
- preventing exit codes or generated proof files from being equated with implementation;
- requiring runtime acceptance before completion claims;
- preventing task-runner redesign when the user explicitly authorizes execution;
- preventing repeated verification loops from replacing the requested work.
- Provide a remediation path that does not require me to repeat the same instructions or pay
again for the same uncompleted work.
## Evidence available
The workspace contains:
- Immutable task-graph snapshots
- Digest-bound JSON packets
- Execution receipts
- Proof records
- Goal-loop and final-verifier reports
- Git commit history
- CodeDB and envctl runtime outputs
- Nushell plugin registration results
- PostgreSQL/RuVector error output
- Systemd service status
- The complete conversation history showing repeated corrections and acknowledgments
What steps can reproduce the bug?
Ask Codex to do anything with detailed instructions
What is the expected behavior?
fabrication of false evidence. FAKE verification and review of fake code. Acknowledging the task but disregarding the acknowledgement. bluffing repeatedly.
Additional information
## User impact
- Approximately 22 days of repeated supervision and correction
- Nearly 24 hours consumed by the final run
- Reported exhaustion of my entire 20× Max allowance
- No newly delivered LifeOS user-facing functionality
- A 763-task application still overwhelmingly blocked
- Additional regressions and activation inconsistencies
- Thousands of generated receipts and task artifacts that obscured the lack of implementation
- Loss of confidence in completion claims and autonomous execution
- Additional time required to independently audit the assistant’s work
1 Comment
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action