What problem does it solve?
When the pandas test suite runs under cudf.pandas (the zero-code-change GPU accelerator), failing tests can stem from cudf implementation bugs, proxy/dispatch issues, missing proxy registrations, conversion bugs, or environment gaps. This Skill provides a systematic workflow to reproduce failures, isolate the root cause, implement a correct fix, and verify it without regressions.
Core Features & Use Cases
- Structured diagnosis pipeline: Reproduce failures with the pandas test harness, compare direct cudf behavior against pandas, and use environment variables like CUDF_PANDAS_FAIL_ON_FALLBACK and LOG_FAST_FALLBACK to trace proxy-layer fallbacks.
- Guardrails against bad fixes: Enforces rules prohibiting test-specific special cases, CPU fallback as a fix, private pandas APIs, pyarrow as an execution backend, and behavior that diverges from pandas.
- xfail/skip marker management: Guides updates to the pandas-testing-plugin.py dictionaries and dependency additions via dependencies.yaml and rapids-dependency-file-generator.
- Use Case: Given a failing node ID like tests/groupby/test_reductions.py::test_first_last_skipna[Float64-False-False-first], reproduce it, determine whether the bug is in cudf core or the proxy layer, implement a minimal fix, and verify no module-level regressions.
Quick Start
Debug the failing pandas test tests/groupby/test_reductions.py::test_first_last_skipna under cudf.pandas and implement a fix.