Skip to content

Codex enters infinite processing loop when GitHub repository is deleted (404 not handled as terminal state) #10645

@alexshescp

Description

@alexshescp

What issue are you seeing?

When Codex is asked to expand or analyze a GitHub repository that has been deleted, the request does not fail gracefully. Instead, Codex enters an infinite or unbounded processing loop and remains in a "processing" state for an extended period of time (observed >1 hour).

This behavior is reproducible and appears to affect both Codex Web (via ChatGPT UI) and Codex CLI, suggesting a shared backend issue rather than a UI-specific problem.

What steps can reproduce the bug?

  1. Create a new repository on GitHub.
  2. Connect the repository to Codex (e.g., via ChatGPT Codex Web UI or Codex CLI).
  3. Delete the repository from GitHub.
  4. Submit a Codex request to expand or analyze code from the deleted repository using its original GitHub URL.
  5. Observe the processing behavior.

What is the expected behavior?

  • The request does not terminate.
  • Codex remains in a processing state indefinitely.
  • No explicit error is returned to the user.
  • The task continues running for more than 1 hour.

Additional information

Expected Behavior

  • GitHub 404 / 410 responses for deleted repositories should be treated as terminal errors.
  • The task should fail fast with a clear and actionable error message.
  • Retry attempts should be bounded and respect a global execution timeout.
  • The user should be able to recover without restarting the session.

Impact

  • Poor user experience due to lack of feedback and stuck UI state.
  • Unnecessary frontend and backend resource consumption.
  • Potential infrastructure load caused by unbounded retry behavior.

Environment

  • Codex Web (ChatGPT-hosted, browser-based)
  • Codex CLI
  • GitHub repository URL input

Additional Notes

  • The issue reproduces consistently across different Codex interfaces.
  • This suggests missing handling of terminal states for permanently unavailable repositories.

Suggested Fix (Optional)

  • Treat GitHub 404 and 410 responses as non-retriable errors.
  • Add an upper bound on retry attempts with exponential backoff.
  • Enforce a hard timeout for repository resolution and analysis stages.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingcodex-webIssues related to Codex Web

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions