Skip to content

test(conformance): run driver suites with cargo - #3866

Merged
elezar merged 3 commits into
mainfrom
codex/conformance-after-parity
Oct 12, 2026
Merged

elezar merged 3 commits into
mainfrom
codex/conformance-after-parity

Conversation

@elezar

@elezar elezar commented Sep 29, 2026 •

Copy link
Copy Markdown
Member

Summary

Run driver conformance through the portable Cargo test suites instead of building and distributing the standalone conformance CLI. Remove the obsolete CLI crate and its unused library APIs now that all supported paths use the library-backed test suites.

Rebased onto main ca187123d on 2026-10-12.

Related Issue

Follow-up cleanup for #2792 and #3864.

Changes

  • Run driver conformance from tests/suites/conformance with Cargo.
  • Remove standalone conformance-CLI build and setup steps from branch, driver E2E, binary-build, and release workflows.
  • Delete crates/openshell-conformance-cli and its workspace lockfile entry.
  • Remove the unused scenario registry, aggregate file-transfer wrapper, scenario descriptions, and CLI-only runner methods from the conformance library.
  • Resolve relative OPENSHELL_BIN paths before Cargo changes the test working directory.
  • Update test, build, policy-advisor, and test-guest documentation for Cargo tests and installed nextest archives.
  • Rename the Nix archive binding to reflect that it packages conformance tests rather than a CLI.

Testing

Rebase verification on 2026-10-12:

  • nix develop --command cargo test --locked --package openshell-conformance passes: 18 tests.
  • All four portable conformance targets compile with cargo test --locked --manifest-path tests/suites/conformance/Cargo.toml --package openshell-test-conformance-cli --no-run.
  • Range comparison confirms all three commit patches are unchanged by the rebase.

Earlier verification, before this rebase:

  • mise run --jobs 1 pre-commit passes
  • cargo test --locked --package openshell-conformance passes (18 tests)
  • cargo test --locked --manifest-path tests/suites/conformance/Cargo.toml --package openshell-test-conformance-cli --no-run passes
  • Relative binary path remains executable after changing to the conformance package directory
  • nix-instantiate --parse tests/artifacts.nix passes
  • Agent infrastructure consistency and public skill discovery checks pass
  • Live driver E2E jobs were not run locally; the affected GitHub workflows provide that coverage

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)

@elezar elezar mentioned this pull request Sep 29, 2026
6 of 8 tasks
@github-actions

Copy link
Copy Markdown

@elezar
elezar force-pushed the codex/conformance-after-parity branch from 9fee853 to 9994506 Compare September 30, 2026 06:32
@elezar
elezar added this pull request to stack #3939 September 30, 2026 06:32
@elezar
elezar force-pushed the codex/conformance-after-parity branch 2 times, most recently from f4da56b to d23f53a Compare September 30, 2026 10:19
@krishicks

Copy link
Copy Markdown
Collaborator

Analysis by agent found some cleanup that's worth addressing:

Once the CLI crate is removed, these openshell-conformance items have no remaining callers:

  • SCENARIOS, scenarios() and scenario(name)
  • FILE_TRANSFER_SCENARIO and run_file_transfer
  • the Scenario::description field
  • OpenShellRunner::new
  • OpenShellRunner::scenario(), which only its own unit test calls

Without the registry's consumer, a scenario added to SCENARIOS does not run unless a matching test file is also added.

@elezar
elezar force-pushed the codex/conformance-after-parity branch from d23f53a to baa4d59 Compare October 1, 2026 12:28
@elezar
elezar force-pushed the codex/conformance-after-parity branch from baa4d59 to 8ec0bfc Compare October 1, 2026 12:31
Base automatically changed from codex/remove-parity to main October 1, 2026 13:27
@elezar
elezar force-pushed the codex/conformance-after-parity branch 4 times, most recently from 0615bcf to 1e34f20 Compare October 2, 2026 14:35
@elezar
elezar force-pushed the codex/conformance-after-parity branch from 1e34f20 to e85a46c Compare October 6, 2026 13:44
Comment thread e2e/support/conformance.sh
@SDAChess

SDAChess commented Oct 8, 2026

Copy link
Copy Markdown
Member

Two comments still refer to the removed standalone runner:

  • e2e/rust/e2e-docker.sh:5: "Run standalone CLI conformance, and optionally a focused Rust e2e test…"
  • e2e/rust/e2e-kubernetes.sh:68: "note: skipping standalone CLI conformance in Kubernetes operator workspace mode…"

Could you drop "standalone" from both, since conformance now runs as the Cargo test suite?

alangou
alangou previously approved these changes Oct 8, 2026
@elezar
elezar force-pushed the codex/conformance-after-parity branch from 76cf598 to 2cc51ca Compare October 9, 2026 08:36
@elezar
elezar requested a review from alangou October 9, 2026 08:37
@elezar
elezar force-pushed the codex/conformance-after-parity branch from 2cc51ca to 702405c Compare October 9, 2026 08:40
@elezar elezar added the test:e2e Requires end-to-end coverage label Oct 12, 2026
@github-actions

Copy link
Copy Markdown

Label test:e2e applied for 702405c. Open the existing run and click Re-run all jobs to execute with the label set. The run will execute the standard E2E suite after building the required gateway, sandbox, and supervisor images once. The matching required CI gate status on this PR will flip green automatically once the run finishes.

Signed-off-by: Evan Lezar <elezar@nvidia.com>
Signed-off-by: Evan Lezar <elezar@nvidia.com>
Signed-off-by: Evan Lezar <elezar@nvidia.com>
@elezar
elezar force-pushed the codex/conformance-after-parity branch from 702405c to 3d591af Compare October 12, 2026 14:34
@elezar
elezar added this pull request to the merge queue Oct 12, 2026
Merged via the queue into main with commit c4dc30d Oct 12, 2026
112 checks passed
@elezar
elezar deleted the codex/conformance-after-parity branch October 12, 2026 15:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test:e2e Requires end-to-end coverage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants