Skip to content

[codex] Split app-server integration tests into shards#17973

Draft
starr-openai wants to merge 7 commits intomainfrom
starr/app-server-test-shards
Draft

[codex] Split app-server integration tests into shards#17973
starr-openai wants to merge 7 commits intomainfrom
starr/app-server-test-shards

Conversation

@starr-openai
Copy link
Copy Markdown
Contributor

Summary

  • split the app-server integration test root into several smaller root test binaries
  • keep helper-dependent modules grouped together so sibling super::... imports still work
  • remove the stale all.rs and suite aggregator modules

Validation

  • not run locally; relying on CI per Codex repo development guidance

Expected CI impact

  • replaces //codex-rs/app-server:app-server-all-test with independent targets generated from the new tests/*.rs roots

Replace the single all.rs integration root with smaller roots grouped by area so Bazel and CI can schedule them as independent app-server test targets.

Co-authored-by: Codex <noreply@openai.com>
@starr-openai starr-openai force-pushed the starr/app-server-test-shards branch from 3145f87 to de0e824 Compare April 15, 2026 18:44
starr-openai and others added 6 commits April 15, 2026 12:01
Windows test actions run locally in CI, and several Rust integration test binaries spawn subprocesses or servers. Limit local test-process fanout so sharded tests contend less on the runner while preserving the broader Bazel job count for scheduling and cache/download work.

Co-authored-by: Codex <noreply@openai.com>
Replace the one-second sleep in the unsubscribe-during-turn test with a sentinel-file command so the test unsubscribes while command execution is definitely still running. Also use Bazel's printed FAIL test.log path when tailing failed CI logs, which fixes Windows MSVC output-path mismatches.

Co-authored-by: Codex <noreply@openai.com>
Replace shell-command blocking in the unsubscribe-during-turn test with a gated streaming SSE response. This keeps the turn in progress without filesystem polling, shell sleeps, or Windows path translation. Add a request-count notification helper to the streaming SSE test server so tests can wait for the model request deterministically.

Co-authored-by: Codex <noreply@openai.com>
Remove stale imports and the unused response-count stabilization helper after switching the unsubscribe test to gated streaming SSE. Add the required argument comment for the request-count literal.

Co-authored-by: Codex <noreply@openai.com>
macOS Bazel CI runs build actions remotely but test actions locally. After splitting app-server tests into separate binaries, cap local test-process fanout on macOS as well so server-spawning integration tests do not contend heavily on the runner.

Co-authored-by: Codex <noreply@openai.com>
Limit Windows CI to one Rust test thread per test binary so the split app-server shards do not multiply child-process-heavy test concurrency on the runner.

Co-authored-by: Codex <noreply@openai.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant