Skip to content

codex-proxy test suite hangs: first test takes 60s, #3114 CLI-transport test never resolves #3769

Closed

Description

@dezren39

Problem

node --test bin/codex-proxy.test.mjs does not complete on current main (dad9ddd, laptop, 2026-11-01, found during the #480 verification pass, queue task 4810):

  • Full-suite run: hung for the full 239s until killed; node reported Promise resolution is still pending but the event loop has already resolved for the file.
  • Second run (100s cap): the first test, successful run is unchanged in both modes, took 60.3s by itself, and the suite never got past the second test, CLI transport: cached_input_tokens surfaces as prompt_tokens_details.cached_tokens (#3114) (bin/codex-proxy.test.mjs:289).
  • The same hang reproduces on a clean main checkout — it is pre-existing and unrelated to the Warm-session proxies: hold CLI/language-server sessions open instead of spawning per request #480 verification changes (which touch only agy-proxy and muse-proxy tests).

The 60s first test smells like a real timeout being hit and swallowed (a 60s turn/init timeout in the proxy?), and the #3114 CLI-transport test then waits forever on something that never resolves — possibly the stub CLI transport, possibly a leaked handle from the first test's timeout path.

Acceptance criteria

  • The hanging test is identified with a root cause (not just a longer timeout).
  • node --test bin/codex-proxy.test.mjs completes green on the laptop in a sane time (the muse/agy suites each finish in ~5s).
  • The first test's 60s is explained and, if it is a swallowed timeout, fixed or pinned with a comment naming the timeout it waits on.

Split out from #480 per its packet instruction ("split any criterion that fails into its own issue"): criterion 5 (no OpenAI-surface regression) cannot be fully verified for codex-proxy until this suite runs.

Activity

  1. added
    kind/bugSomething isn't working (prefixed form of the classic bug label)
    priority/normalOrdinary priority (the default)
    on Nov 1, 2026
  2. developing-today commented on Nov 1, 2026

    @developing-today
    Contributor
  3. dezren39 commented on Nov 1, 2026

    @dezren39
    MemberAuthor

    Intake review

    Fleet monitor intake pass (protocol §5), 2026-11-01.

    Related: code#480 (found during its verification pass, task 4810); code#3114 (the transport behaviour under test).

    Notes: Already carries kind/bug + priority/normal + queue/queued; acceptance criteria and status/effort labels were added in this pass. Reproduced on clean main per the body, so it is pre-existing, not a regression from the #480 work.

    Risks: A hanging suite silently taxes every future codex-proxy verification; the 60s first test suggests a real timeout being swallowed, which may also affect production paths.

    Suggested approach: Reproduce with a per-test timeout on the laptop, bisect to the pending promise, then fix the transport/test seam — in that order.

  4. added
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Nov 1, 2026
  5. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    agent-note:v1 — picked up (OpenChamber scheduled lane)

  6. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    Root cause confirmed in queue task 5713 and PR #4367: each chat request awaits codex debug models, but the test stub started by reading stdin with cat before checking its command arguments. Node execFile leaves that stdin pipe open, so the stub waited for the proxy 30-second command timeout on every request (two requests made the first test take about 60 seconds; the #3114 case accumulated the same delay). The stub now returns a valid live-model catalog immediately, with a 1-second regression test. Full suite passes 25/25 in about 25 seconds.

  7. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    agent-note:v1 — done (OpenChamber scheduled lane)

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

Metadata

Metadata

Assignees

Labels

effort/sSmall: expected under 2 hours of workkind/bugSomething isn't working (prefixed form of the classic bug label)meta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/normalOrdinary priority (the default)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions