Skip to content

[Bug][CI]: web-search pacing deadline test fails on a loaded Windows shard (504 on reset replay) #6988

Closed

Description

@lidge-jun

Client or integration

Other

GitHub Actions Windows suite shard (windows 8/9, dispatch-only lane), not an installed client.

Area

Tools / MCP / web search

Summary

tests/web-search/web-search-pacing-deadline.test.ts (added by #6700) failed two cases on a Windows shard in a full lane=all dispatch. The failure kind was assertion, so the shard failed on first occurrence as designed.

  • reset replay excludes its own pacing wait expected 200 and received 504 (line 67 via line 145), after the log printed [upstream-retry] connection reset (web-search-loop) — retrying (2/3).
  • A later case in the same file expected started to be 2 and received 1 (line 213).

The test asserts that local pacing waits are excluded from the response-header deadline. A 504 here means the deadline fired on a loaded Windows runner. Either the pacing wait was still counted against the deadline on that path, or the test's deadline leaves too little room for a reset replay under Windows scheduling. Recent dev dispatches failed Windows shards on different timing tests each time (ocx status codexPlugins 20s, retained-sync Ultra Fast 20s, plaintext v2 drip-feed, credential separation, gateway startup), and none of those were in this file, so this is a new case.

Expected: the case either passes on loaded Windows runners because its assertions do not depend on wall-clock slack, or the 504 is shown to be a real pacing/deadline defect and fixed in the source.

Reproduction

  1. Full dispatch https://github.com/lidge-jun/opencodex/actions/runs/38222141865 (branch codex/6978-macos-shard-budget-261012, head 736e7bf, which changes only the macOS shard matrix and its contract tests).
  2. Job windows 8/9, batch 45/45, file tests\web-search\web-search-pacing-deadline.test.ts.

Version

736e7bf (dev a0191a1 + macOS shard matrix change)

Operating system

GitHub-hosted windows-latest

Provider and model

Not applicable (test fixtures).

Logs or error output

[upstream-retry] connection reset (web-search-loop) — retrying (2/3)
error: expect(received).toBe(expected)
Expected: 200
Received: 504
      at expectSuccess (tests\web-search\web-search-pacing-deadline.test.ts:67:27)
      at async <anonymous> (tests\web-search\web-search-pacing-deadline.test.ts:145:13)
(fail) web-search pacing and response-header deadline > reset replay excludes its own pacing wait [483.85ms]
error: expect(received).toBe(expected)
Expected: 2
Received: 1
      at <anonymous> (tests\web-search\web-search-pacing-deadline.test.ts:213:21)
Test failure in shard 8/9 batch 45/45 (exit 1); not retrying assertion/test failures.

Screenshots and supporting files

No response

Redacted configuration

No response

Checks

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

Activity

  1. added
    platformOS/service/tray/ACL (Windows-heavy, not Windows-only)
    toolstool_calls, MCP, web-search / sidecar tools
    on Oct 12, 2026
  2. lidge-jun commented on Oct 12, 2026

    @lidge-jun
    OwnerAuthor

    Fixed on dev by #6993 (commit ed07f0f49d), landed through #7009 (merge 8f10f238e3). Ships in 2.84.0.

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

    bugSomething isn't workingplatformOS/service/tray/ACL (Windows-heavy, not Windows-only)toolstool_calls, MCP, web-search / sidecar tools

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions