Skip to content

Audio transcription/live-call outcome accounting pre-sets 502 before body validation #4502

Description

@lidge-jun

Client or integration

Direct HTTP/API client

Area

Proxy and routing

Summary

In src/server/audio-transcriptions.ts:120 and src/server/audio-live.ts:103 (commit 81f58a4 / 4a49d7f), outcome is pre-set to 502 after a successful upstream HTTP response and only replaced after JSON/text validation. A 200 whose body is oversized, malformed, missing a call id, or fails alias registration is recorded as 502, which can feed cooldown of a healthy ChatGPT account. Native handleLive records the real upstream status before body handling, so the owned paths disagree with the native ones.

Reproduction

  1. Create a live call / transcription whose upstream returns 200 with a malformed or oversized body.
  2. Observe recordOutcome(502) instead of the real upstream 200 (or a body-handling-specific outcome).

Found by the 2.53.0 release regression audit (lane09). Synthesis disposition: follow-up issue — narrow accounting defect with account-cooldown blast radius; not promotion blocking.

Version

dev @ eb81eaa (post-2.52.0, pre-2.53.0)

Operating system

macOS (any; codepath is platform-independent)

Provider and model

openai (ChatGPT account pool) live/audio routes

Logs or error output

N/A

Screenshots and supporting files

N/A — evidence is source-level, cited inline.

Redacted configuration

N/A

Checks

  • I searched existing issues and documentation.
  • I removed secrets, tokens, account details, request credentials, and personal data.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    account-poolOAuth, credentials, Codex pool, quota, failover, plansbugSomething isn't workingproxyHTTP proxy, routing, reverse-proxy / management auth

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions