← Back to scan
File as GitHub Issue repo: NVIDIA/warp

Push this scan report to NVIDIA/warp

Click the green button below to open GitHub’s new-issue form, pre-filled with the report title, summary table, top findings, and an embedded score-card image. No authentication needed — you review on GitHub before submitting. Repobility is credited as the scanner.

Embedded score card image

This image will render at the top of the issue body. Hosted on Repobility, refreshes automatically after re-scans.

Repobility score card

Issue title

Phantom test coverage — test files without real assertions

Curate findings to include

Pick exactly which findings appear in the issue body. By default the top 5 are included. Uncheck noise, check what matters.

Top 5 (default)
Severity Rule Title File:line
HIGH QUAL006 Floats used for monetary values warp/tests/test_codegen.py:972
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_inte…:102
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_inte…:63
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_inte…:24
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_inte…:102
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_inte…:63
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_inte…:24
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_api.…:193
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_api.…:180
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_api.…:168
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_api.…:156
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_api.…:144
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_api.…:132
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_api.…:120
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_api.…:108
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_api.…:96
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/benchmarks/benchmark_api.…:84
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/tile/example_tile_block_c…:393
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/tile/example_tile_block_c…:320
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/core/example_work_queue.py:85
HIGH TEST001 Phantom test coverage — test files without real assertions warp/examples/core/example_spin_lock.py:36
HIGH TEST001 Phantom test coverage — test files without real assertions warp/tests/cuda/test_streams.py:496
HIGH TEST001 Phantom test coverage — test files without real assertions warp/tests/cuda/test_streams.py:356
HIGH TEST001 Phantom test coverage — test files without real assertions warp/tests/cuda/test_streams.py:295
HIGH TEST001 Phantom test coverage — test files without real assertions warp/tests/cuda/test_streams.py:263
HIGH TEST001 Phantom test coverage — test files without real assertions warp/tests/cuda/test_streams.py:225
HIGH TEST001 Phantom test coverage — test files without real assertions warp/tests/cuda/test_streams.py:195
HIGH TEST001 Phantom test coverage — test files without real assertions warp/tests/cuda/test_streams.py:166
MED ERR001 [ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even… warp/_src/codegen.py:4213
MED ERR001 [ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even… warp/_src/context.py:3410
MED SEC012 [SEC012] ZipSlip — Archive Path Traversal: Archive extraction without path validation all… tools/packman/bootstrap/install_package…:156
MED DKR003 Dockerfile base image uses the latest tag docker/warp-cpp-test-env/Dockerfile:82
MED DKR003 Dockerfile base image uses the latest tag docker/warp-builder/Dockerfile:277
MED DKR007 Docker build context has no .dockerignore .dockerignore
MED AIC003 Duplicated implementation block across source files warp/native/cuBQL/builder/cuda/sah_buil…:106
MED AIC003 Duplicated implementation block across source files warp/_src/torch.py:211
MED AIC003 Duplicated implementation block across source files warp/_src/fem/space/shape/triangle_shap…:405
MED AIC003 Duplicated implementation block across source files warp/_src/fem/space/shape/triangle_shap…:183
MED AIC003 Duplicated implementation block across source files warp/_src/fem/space/shape/tet_shape_fun…:533
MED AIC003 Duplicated implementation block across source files warp/_src/fem/space/grid_3d_function_sp…:137
MED AIC003 Duplicated implementation block across source files warp/_src/fem/geometry/trimesh.py:256
MED AIC003 Duplicated implementation block across source files warp/_src/fem/geometry/trimesh.py:1
MED AIC003 Duplicated implementation block across source files warp/_src/fem/geometry/tetmesh.py:526
MED AIC003 Duplicated implementation block across source files warp/_src/fem/geometry/tetmesh.py:1
MED AIC003 Duplicated implementation block across source files warp/_src/fem/geometry/nanogrid.py:357
MED AIC003 Duplicated implementation block across source files warp/_src/fem/geometry/grid_3d.py:222
MED QUAL003 Magic number used as default arg asv/benchmarks/atomics.py:61
MED QUAL003 Magic number used as default arg warp/_src/types.py:4903
MED QUAL003 Magic number used as default arg warp/__init__.pyi:6116
MED QUAL003 Magic number used as default arg warp/__init__.pyi:6115
MED QUAL003 Magic number used as default arg warp/__init__.pyi:6082
MED QUAL003 Magic number used as default arg warp/__init__.pyi:4317
MED QUAL003 Magic number used as default arg warp/__init__.pyi:4316
MED QUAL003 Magic number used as default arg warp/__init__.pyi:4297
MED TEST002 Function is stub-only (pass/raise NotImplementedError) asv/benchmarks/tile/compile_cholesky.py:77
MED TEST002 Function is stub-only (pass/raise NotImplementedError) asv/benchmarks/tile/compile_gemm.py:85
MED TEST002 Function is stub-only (pass/raise NotImplementedError) asv/benchmarks/tile/compile_fft.py:69
MED TEST002 Function is stub-only (pass/raise NotImplementedError) docs/generate_reference.py:100
MED TEST002 Function is stub-only (pass/raise NotImplementedError) docs/generate_reference.py:97
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/examples/fem/utils.py:315
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/examples/benchmarks/benchmark_inte…:12
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/examples/benchmarks/benchmark_inte…:12
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/field/virtual.py:515
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/geometry/partition.py:166
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/space/shape/triangle_shap…:61
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/space/shape/tet_shape_fun…:121
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/space/function_space.py:97
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/space/partition.py:114
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/integrate.py:477
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/integrate.py:473
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/operator.py:239
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/operator.py:234
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/operator.py:229
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/operator.py:224
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/fem/operator.py:219
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/thirdparty/unittest_parallel.…:663
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/tape.py:402
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/tape.py:399
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/tape.py:396
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/tape.py:393
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/tape.py:390
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/tape.py:385
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/tape.py:382
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/types.py:2133
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/types.py:1998
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/types.py:1502
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/_src/codegen.py:3711
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_codegen_instancing.py:1253
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_snippet.py:297
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_snippet.py:294
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_snippet.py:264
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_snippet.py:260
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_snippet.py:237
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_snippet.py:211
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_snippet.py:187
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_snippet.py:151
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_snippet.py:116
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_snippet.py:24
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/unittest_utils.py:459
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_unique_module.py:247
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_unique_module.py:236
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_unique_module.py:225
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_unique_module.py:205
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_unique_module.py:195
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_unique_module.py:185
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_unique_module.py:174
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_unique_module.py:214
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_func.py:244
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_map.py:314
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_generics.py:291
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_generics.py:286
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_generics.py:281
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_generics.py:276
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_implicit_init.py:218
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_static.py:206
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_future_annotations.py:23
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_grad.py:570
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/aux_test_module_unload.py:10
MED TEST002 Function is stub-only (pass/raise NotImplementedError) warp/tests/test_subscript_types.py:218
MED CONC002 Concurrency — TOCTOU race via os.path.exists+open warp/_src/build.py:289
MED CONC002 Concurrency — TOCTOU race via os.path.exists+open warp/_src/build.py:280
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/sparse/matrix_matrix.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/sparse/matrix_vector.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/fem/integrate.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/codegen/mat22_augassign.…:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/codegen/mat44_assignment…:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/codegen/array2d_augassig…:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/api/launch.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/api/struct.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/api/array.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/api/python_builtins.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/tile/compile_cholesky.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/tile/bounds_check.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/tile/gemm.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/tile/compile_gemm.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/tile/array_sum.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/tile/tile_nbody.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/tile/compile_fft.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/tile/shared_load_store_n…:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/tile/load_store.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/memory_access.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/benchmarks_utils.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/spatial_query.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/atomics.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/bvh_build.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint tools/packman/bootstrap/install_package…:7
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint tools/packman/python.sh:9
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint tools/packman/packmanconf.py:107
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint tools/packman/packmanconf.py:7
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/_src/thirdparty/appdirs.py:515
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/_src/thirdparty/appdirs.py:489
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/_src/thirdparty/appdirs.py:338
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/_src/thirdparty/appdirs.py:182
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/_src/thirdparty/appdirs.py:62
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/_src/thirdparty/appdirs.py:12
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/_src/thirdparty/appdirs.py:11
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/native/nanovdb/PNanoVDB.h:2956
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/native/tile_radix_sort.h:39
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/native/intersect.h:302
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/native/sort.cpp:72
MED DKR001 Docker final stage has no non-root USER docker/warp-cpp-test-env/Dockerfile:85
MED DKR001 Docker final stage has no non-root USER docker/warp-builder/Dockerfile:280
MED SEC005 [SEC005] Command Injection Risk: Unsafe shell execution or eval of user input. warp/_src/build_dll.py:45
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/examples/mesh_intersect.…:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint asv/benchmarks/examples/cloth.py:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/examples/fem/example_taylor_green.…:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/examples/fem/example_kelvin_helmho…:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/examples/fem/example_shallow_water…:8
MED CRYP001 Crypto — plaintext HTTP for sensitive endpoint warp/tests/test_constant_precision.py:8
MED ERR001 [ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even… warp/examples/browse.py:24
MED CORE_LARGE_FILES Average file size is 507 lines (recommend <300)
LOW QUAL005 Cluster of TODOs in one file warp/_src/jax_experimental/custom_call.…:149
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_radix_sort.h:1043
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_radix_sort.h:1036
LOW QUAL005 Cluster of TODOs in one file warp/native/vec.h:1920
LOW QUAL005 Cluster of TODOs in one file warp/native/vec.h:1898
LOW QUAL005 Cluster of TODOs in one file warp/native/vec.h:1883
LOW QUAL005 Cluster of TODOs in one file warp/native/vec.h:1797
LOW QUAL005 Cluster of TODOs in one file warp/native/vec.h:1496
LOW QUAL005 Cluster of TODOs in one file warp/native/vec.h:1475
LOW QUAL005 Cluster of TODOs in one file warp/native/vec.h:1434
LOW QUAL005 Cluster of TODOs in one file warp/native/texture.h:620
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_reduce.h:758
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_reduce.h:751
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_reduce.h:743
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_reduce.h:736
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_reduce.h:607
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_reduce.h:602
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_scan.h:289
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_scan.h:278
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_scan.h:267
LOW QUAL005 Cluster of TODOs in one file warp/native/tile_scan.h:260
LOW QUAL005 Cluster of TODOs in one file warp/tests/tile/test_tile_cholesky.py:496
LOW QUAL005 Cluster of TODOs in one file warp/tests/tile/test_tile_cholesky.py:410
LOW QUAL005 Cluster of TODOs in one file warp/tests/tile/test_tile_cholesky.py:329
LOW QUAL005 Cluster of TODOs in one file warp/tests/tile/test_tile_cholesky.py:269
LOW QUAL005 Cluster of TODOs in one file warp/tests/tile/test_tile_cholesky.py:167
LOW QUAL005 Cluster of TODOs in one file warp/tests/tile/test_tile_cholesky.py:69
LOW QUAL005 Cluster of TODOs in one file pyproject.toml:116
LOW DKR011 Dockerfile installs recommended OS packages docker/warp-cpp-test-env/Dockerfile:27
Reset to top 5 200 findings available (after auto-suppression of test files + won't-fix)

Issue body (markdown)

## Code-quality scan: `NVIDIA/warp`

**Score: 73/100 (B)**  ·  807 findings  ·  scanned 2026-05-15 19:40 UTC  ·  306,653 LOC

| Severity | Count |
|---|---|
| CRITICAL | 0 |
| HIGH | 629 |
| MEDIUM | 143 |
| LOW | 29 |

📊 [Full filterable report](https://repobility.com/scan/ea65a57b-58fc-4cf4-b3ce-536d04e461e0/)  ·  ![scorecard](https://repobility.com/scan/ea65a57b-58fc-4cf4-b3ce-536d04e461e0/report.png?v=1778874002-s2)

### Top findings

1. **HIGH** `QUAL006` — Floats used for monetary values
   `warp/tests/test_codegen.py:972`
2. **HIGH** `TEST001` — Phantom test coverage — test files without real assertions
   `warp/examples/benchmarks/benchmark_interop_paddle.py:102`
3. **HIGH** `TEST001` — Phantom test coverage — test files without real assertions
   `warp/examples/benchmarks/benchmark_interop_paddle.py:63`
4. **HIGH** `TEST001` — Phantom test coverage — test files without real assertions
   `warp/examples/benchmarks/benchmark_interop_paddle.py:24`
5. **HIGH** `TEST001` — Phantom test coverage — test files without real assertions
   `warp/examples/benchmarks/benchmark_interop_torch.py:102`

---

_Filed automatically. Close this issue if not useful — we won't refile. Full report: https://repobility.com/scan/ea65a57b-58fc-4cf4-b3ce-536d04e461e0/_
Megaproject â high spam risk
Could not determine 'NVIDIA/warp' star count (GitHub API rate-limited or unreachable). When in doubt about repo size, prefer opening a focused PR or a discussion rather than an issue.
Already filed
674/807 findings (84%) on this scan are already flagged as test-file, won't-fix, or suppressed. The scan is too noisy to file as a single issue. Curate down to specific actionable findings, or address the FP source first.

The button opens GitHubâs new-issue page in a new tab. You will see the title + body pre-filled â review, edit if you want, then click GitHubâs "Submit new issue" button. Repobility never posts anything on your behalf.

For real security findings on big repos: use the project's SECURITY.md or private advisory flow instead of a public issue.