From 8c14b08dd1e4de6a3e9e73de5c735433ff5c55a3 Mon Sep 17 00:00:00 2001 From: starr-openai Date: Mon, 18 May 2026 11:10:37 -0700 Subject: [PATCH] Upload rust full CI JUnit reports (#23273) ## Why `rust-ci-full` failures currently leave downstream investigation reconstructing basic test facts from raw logs. `cargo nextest` can emit standard JUnit XML for each lane, which gives us a small structured artifact for post-run failure analysis without changing the test execution model. ## What changed - enable nextest JUnit output in `codex-rs/.config/nextest.toml` - upload the lane-scoped JUnit XML artifact from each `rust-ci-full` test lane ## Verification - `rust-ci-full` run `26018931531` on head `52d77c60e79b36859d944ef28a36b014055c5c48` produced JUnit artifacts for macOS, Linux x64 remote, Windows x64, and Windows ARM64 test lanes - `rust-ci-full` run `26021241006` on the same head produced the missing Linux ARM JUnit artifact after the first run lost that runner before export - downloaded all five lane JUnit artifacts and verified each contains non-empty test counters and failure data --- .github/workflows/rust-ci-full.yml | 8 ++++++++ codex-rs/.config/nextest.toml | 3 +++ 2 files changed, 11 insertions(+) diff --git a/.github/workflows/rust-ci-full.yml b/.github/workflows/rust-ci-full.yml index de37faa4c..697d4b9c3 100644 --- a/.github/workflows/rust-ci-full.yml +++ b/.github/workflows/rust-ci-full.yml @@ -688,6 +688,14 @@ jobs: RUST_MIN_STACK: "8388608" # 8 MiB NEXTEST_STATUS_LEVEL: leak + - name: Upload nextest JUnit report + if: always() + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 + with: + name: nextest-junit-rust-ci-${{ matrix.runner }}-${{ matrix.target }}-${{ matrix.profile }} + path: codex-rs/target/nextest/default/junit.xml + if-no-files-found: warn + - name: Upload Cargo timings (nextest) if: always() uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 diff --git a/codex-rs/.config/nextest.toml b/codex-rs/.config/nextest.toml index 86d00e463..cc86ee087 100644 --- a/codex-rs/.config/nextest.toml +++ b/codex-rs/.config/nextest.toml @@ -2,6 +2,9 @@ # Do not increase, fix your test instead slow-timeout = { period = "15s", terminate-after = 2 } +[profile.default.junit] +path = "junit.xml" + [test-groups.app_server_protocol_codegen] max-threads = 1