test(e2e): migrate provider-switch and compatible endpoint scenarios#5058
Conversation
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
E2E Advisor RecommendationRequired E2E: Dispatch hint: Full advisor summaryE2E Recommendation AdvisorBase: Required E2E
Optional E2E
New E2E recommendations
Dispatch hint
|
E2E Scenario Advisor RecommendationRequired scenario E2E: Dispatch required scenario E2E:
Full scenario advisor summaryE2E Scenario AdvisorBase: Required scenario E2E
Optional scenario E2E
Relevant changed files
|
PR Review AdvisorFindings: 0 needs attention, 2 worth checking, 0 nice ideas Review findings🛠️ Needs attention
🔎 Worth checking
🌱 Nice ideas
Consider writing more tests for
Since last review detailsCurrent findings:
This is an automated advisory review. A human maintainer must make the final merge decision. |
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
|
Cross-linking the post-#5106 migration path from #5098 before this stacked inference PR is rebased/salvaged: #5098 (comment) The useful inference work here should move forward only if it fits the one-E2E-system model: Vitest is the harness, GitHub Actions is the matrix, and NemoClaw fixtures/helpers wrap real subprocess/system boundaries. Shell/system behavior is fine inside tests where it is the real boundary, but we should not preserve or rebuild a parallel E2E runner. Also: please avoid treating |
|
Closing this stacked PR in its current form because it is based on the stale #5057 branch and predates the #5106 cutover. The compatible endpoint mock/runtime work is still valuable. Please reopen it as a clean draft PR from current main, targeting the one Vitest E2E system, without legacy-inventory.json roadmap changes, and with the host bind boundary either narrowed or justified by a regression test. |
Summary
Migrates the compatible-endpoint half of the provider/endpoint inference slice from placeholder planning into the typed E2E scenario framework.
Related Issue
Refs #4941
Refs #4990
Refs #4349
Stacked on #5057 via base branch
codex/e2e-fanout-06-cloud-inference-routing-scenarios.Changes
host.openshell.internal./v1/modelsand/v1/chat/completionsroutes, uses a per-run mock bearer token, and caps request bodies so the live scenario proves credential propagation instead of accepting unauthenticated traffic.openpolicy scenario, matching the host-reachable mock endpoint boundary.COMPATIBLE_API_KEYcredential ref instead of reusing generic NVIDIA cloud state.openai-compatible-inferenceintoRuntimePhaseFixture, the assertion registry, live scenario support, and the live matrix soubuntu-repo-openai-compatible-openclawcan run without external compatible-endpoint secrets.inference-switchruntime suite, while keeping it unsupported andnot-migratedin legacy inventory until a real lifecycle fixture performs provider registration andinference set.sandbox exec --name <sandbox> -- <cmd>form and keeps live scenario tests out of the default CLI project.Type of Change
Verification
npx vitest run --project e2e-scenario-framework --silent=false --reporter=defaultnpx vitest run --project e2e-scenario-framework test/e2e-scenario/framework-tests/e2e-phase-onboarding.test.ts --silent=false --reporter=defaultnpx vitest run --project e2e-scenario-framework test/e2e-scenario/framework-tests/e2e-phase-onboarding.test.ts test/e2e-scenario/framework-tests/e2e-expected-state.test.ts test/e2e-scenario/framework-tests/e2e-scenario-matrix.test.ts test/e2e-scenario/framework-tests/e2e-live-registry-discovery.test.ts --silent=false --reporter=defaultnpx vitest run --project cli --passWithNoTests test/e2e-scenario/live/registry-scenarios.test.ts --silent=false --reporter=defaultnpm run build:clinpm run typecheck:cligit diff --checkNEMOCLAW_RUN_E2E_SCENARIOS=1 NEMOCLAW_CLI_BIN=/home/cvillela/src/github.com/nvidia/NemoClaw/bin/nemoclaw.js npx vitest run --project e2e-scenarios-live test/e2e-scenario/live/registry-scenarios.test.ts -t '^ubuntu-repo-openai-compatible-openclaw$' --silent=false --reporter=defaultHOME=$(mktemp -d) npx vitest run --project cli test/release-latest-tag.test.ts --silent=false --reporter=defaultnpx prek run --all-filespasses locally; it failed only intest/release-latest-tag.test.tsbecause this workstation's global git signing config points at an unavailable signing key (No private key found for public key "/home/cvillela/.ssh/git-signing-key.pub"). The same release-tag test passes with a clean temporaryHOME.npm run docsbuilds without warnings (doc changes only)Signed-off-by: Carlos Villela cvillela@nvidia.com