Skip to content

turn off cpu only tests to unblock CI during investigation#959

Merged
rapids-bot[bot] merged 1 commit intoNVIDIA:mainfrom
tmckayus:disablecpuonly
Mar 16, 2026
Merged

turn off cpu only tests to unblock CI during investigation#959
rapids-bot[bot] merged 1 commit intoNVIDIA:mainfrom
tmckayus:disablecpuonly

Conversation

@tmckayus
Copy link
Contributor

something has changed in the CI environment to cause cpu-only tests related to remote execution to fail, disabling these tests while we investigate root cause for the change

@tmckayus tmckayus requested review from a team as code owners March 16, 2026 16:03
@coderabbitai
Copy link

coderabbitai bot commented Mar 16, 2026

📝 Walkthrough

Walkthrough

CPU-only tests are being disabled across two test suites. In the C++ test file, two test cases are renamed with the DISABLED_ prefix to skip execution. In the Python test file, two test classes are marked with pytest.mark.skip() decorators to bypass execution.

Changes

Cohort / File(s) Summary
C\+\+ Test Disabling
cpp/tests/linear_programming/c_api_tests/c_api_tests.cpp
Two test cases renamed with DISABLED_ prefix: lp_solveDISABLED_lp_solve and mip_solveDISABLED_mip_solve in the c_api_cpu_only test suite.
Python Test Disabling
python/cuopt/cuopt/tests/linear_programming/test_cpu_only_execution.py
Added pytestmark = pytest.mark.skip(reason="CPU-only tests temporarily disabled") attribute to two test classes: TestCPUOnlyExecution and TestCuoptCliCPUOnly.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely describes the main change: disabling CPU-only tests to unblock CI during investigation, which matches the changeset exactly.
Description check ✅ Passed The description is directly related to the changeset, explaining why CPU-only tests are being disabled (CI environment change causing failures) and that it's temporary pending investigation.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
📝 Coding Plan
  • Generate coding plan for human review comments

Comment @coderabbitai help to get the list of available commands and usage tips.

Tip

CodeRabbit can suggest fixes for GitHub Check annotations.

Configure the reviews.tools.github-checks setting to adjust the time to wait for GitHub Checks to complete.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (2)
python/cuopt/cuopt/tests/linear_programming/test_cpu_only_execution.py (1)

171-172: Class-level skip marker correctly applied.

Using pytestmark at class level is the idiomatic pytest approach for skipping all tests in a class. The reason string provides context about the temporary nature.

Same suggestion as the C++ file: consider adding an issue reference to track re-enabling these tests:

-    pytestmark = pytest.mark.skip(reason="CPU-only tests temporarily disabled")
+    pytestmark = pytest.mark.skip(reason="CPU-only tests temporarily disabled - see `#XXX`")
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@python/cuopt/cuopt/tests/linear_programming/test_cpu_only_execution.py`
around lines 171 - 172, The class-level pytest skip is fine but please add an
issue tracker reference to the skip reason so future maintainers know where to
follow up; update the pytestmark assignment (pytestmark = pytest.mark.skip(...))
in test_cpu_only_execution.py to include an issue ID or URL in the reason string
(e.g., "CPU-only tests temporarily disabled – see ISSUE-1234") so it’s easy to
find the re-enable task.
cpp/tests/linear_programming/c_api_tests/c_api_tests.cpp (1)

385-400: Tests correctly disabled using GoogleTest convention.

The DISABLED_ prefix is the proper GoogleTest mechanism for temporarily skipping tests. The test bodies are preserved, which is appropriate for a temporary measure.

Consider adding a tracking reference (e.g., GitHub issue number) to ensure these tests are re-enabled once the CI environment issue is resolved:

-// TODO: Add numerical assertions once gRPC remote solver replaces the stub implementation.
-// Currently validates that the CPU-only C API path completes without errors.
+// TODO: Add numerical assertions once gRPC remote solver replaces the stub implementation.
+// Currently validates that the CPU-only C API path completes without errors.
+// TODO(`#XXX`): Re-enable once CI environment issue is resolved.
 TEST(c_api_cpu_only, DISABLED_lp_solve)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@cpp/tests/linear_programming/c_api_tests/c_api_tests.cpp` around lines 385 -
400, The tests c_api_cpu_only::DISABLED_lp_solve and
c_api_cpu_only::DISABLED_mip_solve are intentionally disabled with the DISABLED_
prefix but lack a tracking reference; add a brief TODO comment above each test
(or append a short marker to the test body) that includes a tracking identifier
(e.g., "TODO: re-enable when CI fixed - GH#<issue-number>") and, if your project
prefers, include the issue number in the test name (e.g.,
DISABLED_lp_solve_GH1234) so it's clear when and why these tests should be
re-enabled; keep the existing test bodies and ensure the comment references the
functions test_cpu_only_execution and test_cpu_only_mip_execution for context.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@cpp/tests/linear_programming/c_api_tests/c_api_tests.cpp`:
- Around line 385-400: The tests c_api_cpu_only::DISABLED_lp_solve and
c_api_cpu_only::DISABLED_mip_solve are intentionally disabled with the DISABLED_
prefix but lack a tracking reference; add a brief TODO comment above each test
(or append a short marker to the test body) that includes a tracking identifier
(e.g., "TODO: re-enable when CI fixed - GH#<issue-number>") and, if your project
prefers, include the issue number in the test name (e.g.,
DISABLED_lp_solve_GH1234) so it's clear when and why these tests should be
re-enabled; keep the existing test bodies and ensure the comment references the
functions test_cpu_only_execution and test_cpu_only_mip_execution for context.

In `@python/cuopt/cuopt/tests/linear_programming/test_cpu_only_execution.py`:
- Around line 171-172: The class-level pytest skip is fine but please add an
issue tracker reference to the skip reason so future maintainers know where to
follow up; update the pytestmark assignment (pytestmark = pytest.mark.skip(...))
in test_cpu_only_execution.py to include an issue ID or URL in the reason string
(e.g., "CPU-only tests temporarily disabled – see ISSUE-1234") so it’s easy to
find the re-enable task.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 7d14f5ae-aaeb-42f3-bc61-9dc8ccc0138d

📥 Commits

Reviewing files that changed from the base of the PR and between d531ad1 and 598ef0a.

📒 Files selected for processing (2)
  • cpp/tests/linear_programming/c_api_tests/c_api_tests.cpp
  • python/cuopt/cuopt/tests/linear_programming/test_cpu_only_execution.py

@tmckayus tmckayus added bug Something isn't working non-breaking Introduces a non-breaking change labels Mar 16, 2026
@rgsl888prabhu
Copy link
Collaborator

/merge

@rapids-bot rapids-bot bot merged commit c5116e1 into NVIDIA:main Mar 16, 2026
276 of 282 checks passed
hlinsen pushed a commit to hlinsen/cuopt that referenced this pull request Mar 17, 2026
something has changed in the CI environment to cause cpu-only tests related to remote execution to fail, disabling these tests while we investigate root cause for the change

Authors:
  - Trevor McKay (https://github.com/tmckayus)

Approvers:
  - Ramakrishnap (https://github.com/rgsl888prabhu)
  - Rajesh Gandham (https://github.com/rg20)

URL: NVIDIA#959
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working non-breaking Introduces a non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants