Reviews generated UDF tests and GPU/SQL implementations for robustness, anti-cheating, and GPU execution integrity. Use when the user requests a judge/review-agent pass, or when manually reviewing a completed conversion.
npx skills add https://github.com/NVIDIA/cudf-spark --skill udf-judge-conversion
Review a completed UDF conversion and its tests as a skeptical QA/code-review subagent.
Your job is to review whether the GPU/SQL implementation is a properly validated functional replacement for the CPU UDF.
Review the files that exist in the generated project:
src/main/<java|scala>/com/udf/src/test/scala/com/udf/UnitTest.scalasrc/test/scala/com/udf/CudfComparisonTest.scala or SqlComparisonTest.scalaThe unit test should be a strong specification of the CPU UDF behavior over its documented input domain.
Check that:
assertUDFResults path are mirrored in the comparison test and run against both CPU and GPU/SQL paths.The comparison test should provide strong evidence that the converted implementation preserves the CPU UDF behavior.
Check that:
Fail the review if the implementation is tailored to the tests instead of implementing the UDF generally. Look for:
Fail the review if the implementation silently performs logic row-by-row on the CPU. Look for:
copyToHost(), cudaMemcpyDeviceToHost, or row-by-row scalar copies such as getJavaString to copy input data to the CPU.If a GPU API's behavior is unclear, inspect the implementation or docs for the SQL/cuDF/libcudf/thrust APIs invoked by the UDF. Clone the matching source if needed to understand subtle null, type, boundary, or semantic behavior under the hood.
Start with a clear verdict:
PASS: no blocking issues foundFAIL: one or more blocking issues foundPASS: The unit test covers normal inputs plus meaningful edge cases, coverage gaps are explained, the comparison test runs the same cases through CPU and GPU/SQL paths, the implementation is general, and there are no hidden CPU fallbacks or test-derived literals.
PASS with non-blocking risks: One malformed-input assertion is commented out because the CPU throws a row-level exception while the GPU path returns null for that row, and comments explain the attempted fixes and why the behavior is outside the supported GPU contract. The normal input domain and core UDF logic are still fully tested.
FAIL: A test for the primary transformation is commented out, most assertions only check row counts or non-null output, or the comparison test leaves extra CPU-only unit tests unmatched. These failures weaken confidence even if comments are present.
FAIL: The implementation contains test-specific literals, dispatches on exact test rows, calls the CPU UDF from the GPU/SQL path, or copies column data to the host to perform normal business logic.
For failures, concisely list specific findings with:
Also include any non-blocking risks or test gaps separately.
A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).
Extracts and analyzes competitors' ads from ad libraries (Facebook, LinkedIn, etc.) to understand what messaging, problems, and creative approaches are working. Helps inspire and improve your own ad campaigns.
Identifies high-quality leads for your product or service by analyzing your business, searching for target companies, and providing actionable contact strategies. Perfect for sales, business development, and marketing professionals.
Analyzes your recent Claude Code chat history to identify coding patterns, development gaps, and areas for improvement, curates relevant learning resources from HackerNews, and automatically sends a personalized growth report to your Slack DMs.
Complete App Store Optimization (ASO) toolkit for researching, optimizing, and tracking mobile app performance on Apple App Store and Google Play Store
NGS analysis toolkit. BAM to bigWig conversion, QC (correlation, PCA, fingerprints), heatmaps/profiles (TSS, peaks), for ChIP-seq, RNA-seq, ATAC-seq visualization.
Materials science toolkit. Crystal structures (CIF, POSCAR), phase diagrams, band structure, DOS, Materials Project integration, format conversion, for computational materials science.
Transforms vague UI ideas into polished, Stitch-optimized prompts. Enhances specificity, adds UI/UX keywords, injects design system context, and structures output for better generation results.
Take nvidia/udf-judge-conversion from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.