Public scan — anyone with this URL can view this analysis. Sign up to track your own repos privately, run scheduled re-scans, and get AI fix prompts via your dashboard.

numpy/numpy

https://github.com/numpy/numpy.git · scanned 2026-05-16 12:55 UTC (1 day, 5 hours ago) · 10 languages

273 findings (20 legacy + 253 scanner) 2/10 scanners ran 43rd percentile · Python · huge (>500K LoC) Scanner says 99 (lower by 17)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 1 day, 8 hours ago · v1 · 265 findings from 2 sources. Findings combine the legacy security pipeline AND the multi-layer engine (atlas, wiring, flows, ranked) AND verified AI agent contributions.

JSON
Severity distribution — click a segment to filter
Active filters: excluding tests × Reset all
Severity: Critical 0 High 14 Medium 14 Low 182 Source: Legacy 12 9-layer 253 Crowd 0 Layer: Software 69 Security 16 Quality 177 Api 1 Frontend 1 Cicd 1
Scan summary Repository scanned at 99.2/100 with 88.9% coverage. It contains 13741 nodes across 0 cross-layer flows, written primarily in mixed languages. Engine surfaced 253 findings — concentrated in quality (173), software (67), security (10). Risk profile is high: 0 critical, 9 high, 7 medium. Recommended next step: open the quality layer findings first — that's where the highest-impact wins live.

Showing 264 of 265 findings. Click TP / FP to vote on a finding's accuracy — votes adjust the confidence weighting and improve detection across the platform.

high Legacy security path_traversal conf 0.80 [SEC013] Path Traversal — User Input in File Path: User-controlled input used in file path without sanitization. Allows reading arbitrary files.
Use os.path.realpath() and verify the path starts with your expected base directory. Use secure_filename() for uploads.
numpy/linalg/lapack_lite/clapack_scrub.py:307 path_traversallegacy
high Legacy software file_upload conf 1.00 [SEC032] Unrestricted File Upload — no extension/MIME validation: File upload accepts the user's filename without validating extension, content-type, or magic bytes. Attackers upload `.php`, `.jsp`, or executable files to a web-served directory, then visit the URL to trigger RCE. CWE-434. Examples: Apache Struts (CVE-2017-9805), countless WordPress plugin RCEs.
Validate THREE things server-side: 1. Extension allowlist: ALLOWED = {'.png', '.jpg', '.pdf'} ext = Path(file.filename).suffix.lower() if ext not in ALLOWED: abort(400) 2. Magic-byte check (don't trust the extension): import magic mime = magic.from_buffer(file…
numpy/linalg/lapack_lite/make_lite.py:258 file_uploadlegacy
high 9-layer security owasp conf 1.00 Insecure pattern 'eval_used' in benchmarks/benchmarks/bench_ma.py:141
Found a known-risky pattern (eval_used). Review and replace if possible.
benchmarks/benchmarks/bench_ma.py:141 owaspeval_used
high 9-layer security owasp conf 1.00 Insecure pattern 'eval_used' in numpy/_build_utils/tempita/_tempita.py:320
Found a known-risky pattern (eval_used). Review and replace if possible.
numpy/_build_utils/tempita/_tempita.py:320 owaspeval_used
high 9-layer security owasp conf 1.00 Insecure pattern 'eval_used' in numpy/f2py/auxfuncs.py:632
Found a known-risky pattern (eval_used). Review and replace if possible.
numpy/f2py/auxfuncs.py:632 owaspeval_used
high 9-layer security owasp conf 1.00 Insecure pattern 'eval_used' in numpy/f2py/capi_maps.py:159
Found a known-risky pattern (eval_used). Review and replace if possible.
numpy/f2py/capi_maps.py:159 owaspeval_used
high 9-layer security owasp conf 1.00 Insecure pattern 'exec_used' in benchmarks/benchmarks/bench_indexing.py:29
Found a known-risky pattern (exec_used). Review and replace if possible.
benchmarks/benchmarks/bench_indexing.py:29 owaspexec_used
high 9-layer security owasp conf 1.00 Insecure pattern 'exec_used' in numpy/_build_utils/tempita/_tempita.py:335
Found a known-risky pattern (exec_used). Review and replace if possible.
numpy/_build_utils/tempita/_tempita.py:335 owaspexec_used
high 9-layer security owasp conf 1.00 Insecure pattern 'tls_verify_false' in numpy/_core/multiarray.py:112
Found a known-risky pattern (tls_verify_false). Review and replace if possible.
numpy/_core/multiarray.py:112 owasptls_verify_false
high 9-layer security owasp conf 1.00 Insecure pattern 'tls_verify_false' in numpy/lib/_ufunclike_impl.py:18
Found a known-risky pattern (tls_verify_false). Review and replace if possible.
numpy/lib/_ufunclike_impl.py:18 owasptls_verify_false
high Legacy quality error_handling conf 1.00 [ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even in cleanup code, log at DEBUG level.
Log the error: `except Exception: logger.debug('cleanup failed', exc_info=True)`. Or handle specific exception types.
numpy/ma/core.py:1097 error_handlinglegacy
high Legacy quality error_handling conf 1.00 [ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even in cleanup code, log at DEBUG level.
Log the error: `except Exception: logger.debug('cleanup failed', exc_info=True)`. Or handle specific exception types.
tools/refguide_check.py:309 error_handlinglegacy
high Legacy quality error_handling conf 1.00 [ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even in cleanup code, log at DEBUG level.
Log the error: `except Exception: logger.debug('cleanup failed', exc_info=True)`. Or handle specific exception types.
numpy/_core/function_base.py:486 error_handlinglegacy
medium Legacy security injection conf 0.50 [SEC005] Command Injection Risk: Unsafe shell execution or eval of user input.
Use subprocess with shell=False and a list of args. Never eval user input.
tools/write_release.py:54 injectionlegacy
medium Legacy security deserialization conf 1.00 [SEC007] Unsafe Deserialization: Unsafe deserialization can execute arbitrary code.
Use yaml.safe_load() instead of yaml.load(). Avoid pickle for untrusted data.
numpy/_core/src/multiarray/methods.c:2110 deserializationlegacy
medium Legacy security deserialization conf 1.00 [SEC007] Unsafe Deserialization: Unsafe deserialization can execute arbitrary code.
Use yaml.safe_load() instead of yaml.load(). Avoid pickle for untrusted data.
numpy/_core/src/multiarray/multiarraymodule.c:2207 deserializationlegacy
medium Legacy security deserialization conf 1.00 [SEC007] Unsafe Deserialization: Unsafe deserialization can execute arbitrary code.
Use yaml.safe_load() instead of yaml.load(). Avoid pickle for untrusted data.
numpy/_core/records.py:703 deserializationlegacy
medium Legacy security crypto conf 1.00 [SEC014] SSL Verification Disabled: SSL certificate verification is disabled, allowing man-in-the-middle attacks.
Enable SSL verification. Use verify=True (default) for requests. Pin certificates if needed.
numpy/_core/multiarray.py:112 cryptolegacy
medium Legacy software redos conf 1.00 [SEC031] Catastrophic Backtracking Regex (ReDoS): Regex contains nested quantifiers like `(a+)+` or quantified alternation with overlapping branches. On adversarial input these patterns exhibit exponential backtracking, freezing the process. CWE-1333. Real CVEs: CVE-2017-16129 (minimatch), CVE-2021-3807 (ansi-regex), and dozens more.
Three options, pick one: 1. Rewrite the pattern to avoid nested quantifiers. E.g. `(a+)+` is functionally equivalent to `a+` for matching purposes. 2. Use Google's re2 (`pip install google-re2`): linear-time, drop-in replacement for `re` for most use cases. 3. Set a hard timeout: `s…
tools/c_coverage/c_coverage_report.py:119 redoslegacy
medium Legacy quality quality Average file size is 646 lines (recommend <300)
Refactor large files by extracting related functions into separate modules. Target files with 300+ lines first. Use the Single Responsibility Principle — each module should have one clear purpose.
qualitylegacy
medium 9-layer cicd supply-chain conf 1.00 GitHub Actions workflow grants broad write permissions
CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions.
.github/workflows/scorecards.yml supply-chaingithub-actionsleast-privilege
medium 9-layer quality integrity conf 1.00 Network/subprocess call without timeout or try/except — benchmarks/asv_pip_nopep517.py:17
`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries.
integrityfragile-runtimerobustness
medium 9-layer quality integrity conf 1.00 Network/subprocess call without timeout or try/except — numpy/f2py/_backends/_meson.py:185
`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries.
integrityfragile-runtimerobustness
medium 9-layer quality integrity conf 1.00 Network/subprocess call without timeout or try/except — tools/check_python_h_first.py:219
`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries.
integrityfragile-runtimerobustness
medium 9-layer quality integrity conf 1.00 Network/subprocess call without timeout or try/except — tools/linter.py:26
`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries.
integrityfragile-runtimerobustness
medium 9-layer quality integrity conf 1.00 Network/subprocess call without timeout or try/except — tools/write_release.py:55
`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries.
integrityfragile-runtimerobustness
medium 9-layer security coverage conf 1.00 No auth library detected
The scanner did not find any standard auth library (JWT, OAuth, NextAuth, Auth0, etc.). Either auth lives in custom code, in a separate service, or is missing.
coverageauth
low 9-layer quality maintenance conf 1.00 146 TODO/FIXME markers
High count of TODO/FIXME/HACK markers — track them as issues so they're not forgotten.
maintenance
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: benchmarks/asv_pip_nopep517.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: doc/neps/conf.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: doc/source/f2py/code/setup_skbuild.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: doc/source/reference/random/performance.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: doc/source/user/conftest.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: doc/source/user/plots/matplotlib1.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: doc/source/user/plots/matplotlib2.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: doc/source/user/plots/matplotlib3.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: doc/source/user/plots/meshgrid_plot.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_core/_type_aliases.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_core/cversions.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_core/printoptions.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_core/tests/examples/cython/setup.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_core/tests/examples/limited_api/setup.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_core/umath.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_distributor_init.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_expired_attrs_2_0.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_pyinstaller/hook-numpy.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_pyinstaller/tests/pyinstaller-smoke.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_typing/_char_codes.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_typing/_extended_precision.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_typing/_nbit.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_typing/_scalars.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_typing/_shape.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/_typing/_ufunc.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/doc/ufuncs.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/f2py/__main__.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/f2py/__version__.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/f2py/_isocbind.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/lib/array_utils.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/lib/format.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/lib/npyio.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/lib/scimath.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/lib/stride_tricks.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/lib/user_array.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: numpy/random/_examples/cffi/extending.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: tools/swig/test/setup.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer quality integrity conf 1.00 Legacy-named symbol `_character_bc_old` in numpy/f2py/tests/test_character.py:502
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `a_copy` in numpy/_core/tests/test_ufunc.py:1903
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `a_copy` in numpy/lib/tests/test_function_base.py:310
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `arr_copy` in numpy/_core/tests/test_item_selection.py:126
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `ary_copy` in numpy/_core/_internal.py:400
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `assert_deprecated` in numpy/_core/tests/test_deprecations.py:39
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `authors_old` in tools/changelog.py:78
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `exp_copy` in numpy/f2py/tests/test_inplace.py:31
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `is_deprecated` in numpy/lib/tests/test__datasource.py:320
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `isintent_copy` in numpy/f2py/auxfuncs.py:32
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `isintent_copy` in numpy/f2py/rules.py:96
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `no_copy` in numpy/_core/tests/test_indexing.py:890
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `not_deprecated` in tools/refguide_check.py:203
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `obj_copy` in numpy/f2py/tests/test_array_from_pyobj.py:262
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `OverriddenArrayOld` in numpy/_core/tests/test_umath.py:3850
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in numpy/_typing/__init__.py:111
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in numpy/typing/__init__.py:182
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in numpy/typing/tests/test_runtime.py:36
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `s_copy` in numpy/linalg/lapack_lite/clapack_scrub.py:75
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `std_old` in numpy/_core/tests/test_numeric.py:405
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `std_old` in numpy/lib/tests/test_nanfunctions.py:828
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_copy` in numpy/_core/tests/test_multiarray.py:2509
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_copy` in numpy/ma/tests/test_core.py:494
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_copy` in numpy/polynomial/tests/test_classes.py:438
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_copy` in numpy/polynomial/tests/test_polynomial.py:55
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_copy` in numpy/polynomial/tests/test_symbol.py:156
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_deprecated` in numpy/_core/tests/test_array_coercion.py:868
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_drop_metadata_identity_and_copy` in numpy/lib/tests/test_utils.py:74
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_dunder_dlpack_copy` in numpy/_core/tests/test_dlpack.py:37
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_iter_copy` in numpy/_core/tests/test_nditer.py:1485
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_random_integers_deprecated` in numpy/random/tests/test_random.py:358
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_random_integers_deprecated` in numpy/random/tests/test_randomstate.py:546
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_recarray_copy` in numpy/_core/tests/test_regression.py:577
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_returns_copy` in numpy/_core/tests/test_shape_base.py:249
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_stdlib_copy` in numpy/_core/tests/test_stringdtype.py:415
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `time_array_no_copy` in benchmarks/benchmarks/bench_array_coercion.py:25
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `time_strided_copy` in benchmarks/benchmarks/bench_io.py:30
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 12 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_io.py:setup, benchmarks/benchmarks/bench_io.py:setup, benchmarks/benchmarks/bench_io.py:setup, benchmarks/benchmarks/bench_io.py:setup This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see http…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 12 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_function_base.py:setup, benchmarks/benchmarks/bench_function_base.py:setup, benchmarks/benchmarks/bench_function_base.py:setup, benchmarks/benchmarks/bench_function_base.py:setup This is *the* AI-coder failure mode (4× mor…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_io.py:time_copyto, benchmarks/benchmarks/bench_io.py:time_copy This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_linalg.py:time_matmul_a_b, benchmarks/benchmarks/bench_linalg.py:time_matmul This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why th…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_linalg.py:time_einsum_multiply, benchmarks/benchmarks/bench_linalg.py:time_einsum_mul This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or docume…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_linalg.py:time_einsum_noncon_multiply, benchmarks/benchmarks/bench_linalg.py:time_einsum_noncon_mul This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consoli…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_lib.py:time_unique_values, benchmarks/benchmarks/bench_lib.py:time_unique_values This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document wh…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_lib.py:time_unique_counts, benchmarks/benchmarks/bench_lib.py:time_unique_counts This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document wh…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_lib.py:time_unique_inverse, benchmarks/benchmarks/bench_lib.py:time_unique_inverse This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document …
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_lib.py:time_unique_all, benchmarks/benchmarks/bench_lib.py:time_unique_all This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_clip.py:setup, benchmarks/benchmarks/bench_clip.py:setup This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_clip.py:time_clip, benchmarks/benchmarks/bench_clip.py:time_clip This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separa…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_function_base.py:time_full_coverage, benchmarks/benchmarks/bench_function_base.py:time_full_coverage This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consol…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_function_base.py:time_small_coverage, benchmarks/benchmarks/bench_function_base.py:time_small_coverage This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Cons…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_function_base.py:time_fine_binning, benchmarks/benchmarks/bench_function_base.py:time_fine_binning This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolid…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_reduce.py:time_any_fast, benchmarks/benchmarks/bench_reduce.py:time_any This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 3 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_itemselection.py:setup, benchmarks/benchmarks/bench_itemselection.py:setup, benchmarks/benchmarks/bench_itemselection.py:setup This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.h…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 5 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_lib.py:setup, benchmarks/benchmarks/bench_lib.py:setup, benchmarks/benchmarks/bench_lib.py:setup, benchmarks/benchmarks/bench_lib.py:setup This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see …
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 8 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_linalg.py:setup, benchmarks/benchmarks/bench_linalg.py:setup, benchmarks/benchmarks/bench_linalg.py:setup, benchmarks/benchmarks/bench_linalg.py:setup This is *the* AI-coder failure mode (4× more duplication in vibe-coded …
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 9 places
Functions with the same first-5-line body hash: benchmarks/benchmarks/bench_reduce.py:setup, benchmarks/benchmarks/bench_reduce.py:setup, benchmarks/benchmarks/bench_reduce.py:setup, benchmarks/benchmarks/bench_reduce.py:setup This is *the* AI-coder failure mode (4× more duplication in vibe-coded …
integrityduplicatedry
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_assign
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:85 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_comment_loadtxt_csv
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:121 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_cont_assign
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:27 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_contiguous
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_itemselection.py:17 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_copy
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:82 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_copyto
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:47 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_copyto_8_dense
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:59 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_copyto_8_sparse
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:56 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_copyto_dense
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:53 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_copyto_sparse
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:50 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_dense
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_itemselection.py:38 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_dot_a_b
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_linalg.py:19 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_dot_d_dot_b_c
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_linalg.py:22 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_loadnpy_overhead
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:102 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_loadtxt_csv_datetime
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:273 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_loadtxt_csv_struct_dtype
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:169 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_loadtxt_dtypes_csv
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:148 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_loadtxt_usecols_csv
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:242 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_memcpy
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:20 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_memcpy_large_out_of_place
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:23 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_ordered
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_itemselection.py:60 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_read_uint64
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:218 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_read_uint64_neg_values
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:224 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_searchsorted
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_searchsorted.py:34 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_skiprows_csv
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:199 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_sparse
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_itemselection.py:41 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_strided_assign
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:33 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_strided_copy
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:30 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_trim_zeros
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_trim_zeros.py:26 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: time_vb_savez_squares
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
benchmarks/benchmarks/bench_io.py:93 dead-code
low 9-layer quality integrity conf 1.00 Stub function `domain` (body is just `pass`/`return`) — numpy/polynomial/_polybase.py:116
Likely an AI scaffold that was never filled in. Remove or implement.
integrityempty-handlerdead-code
low 9-layer quality integrity conf 1.00 Stub function `example` (body is just `pass`/`return`) — numpy/_utils/__init__.py:23
Likely an AI scaffold that was never filled in. Remove or implement.
integrityempty-handlerdead-code
low 9-layer quality integrity conf 1.00 Stub function `local` (body is just `pass`/`return`) — numpy/_utils/_pep440.py:185
Likely an AI scaffold that was never filled in. Remove or implement.
integrityempty-handlerdead-code
low 9-layer quality integrity conf 1.00 Stub function `nop` (body is just `pass`/`return`) — numpy/testing/_private/utils.py:1497
Likely an AI scaffold that was never filled in. Remove or implement.
integrityempty-handlerdead-code
low 9-layer quality integrity conf 1.00 Stub function `wrap` (body is just `pass`/`return`) — benchmarks/benchmarks/bench_overrides.py:8
Likely an AI scaffold that was never filled in. Remove or implement.
integrityempty-handlerdead-code
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/_add_newdocs.py (7131 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/arrayprint.py (1788 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/code_generators/generate_umath.py (1694 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/code_generators/ufunc_docstrings.py (5562 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/einsumfunc.py (1647 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/fromnumeric.py (4257 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/multiarray.py (1743 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/numeric.py (2706 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/strings.py (1813 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_arrayprint.py (1353 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_datetime.py (3210 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_dtype.py (2080 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_einsum.py (1368 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_indexing.py (1690 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_multiarray.py (11484 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_nditer.py (3678 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_numeric.py (4265 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_regression.py (2671 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_stringdtype.py (1852 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_strings.py (1506 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_ufunc.py (3440 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/_core/tests/test_umath.py (5173 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/f2py/cfuncs.py (1579 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/f2py/crackfortran.py (3727 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/f2py/rules.py (1641 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/f2py/symbolic.py (1518 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/fft/_pocketfft.py (1693 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/lib/_function_base_impl.py (5775 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/lib/_nanfunctions_impl.py (2006 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/lib/_npyio_impl.py (2491 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/lib/recfunctions.py (1681 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/lib/tests/test_arraypad.py (1427 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/lib/tests/test_function_base.py (4787 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/lib/tests/test_io.py (2733 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/lib/tests/test_nanfunctions.py (1449 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/linalg/_linalg.py (3649 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/linalg/tests/test_linalg.py (2486 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/ma/core.py (9000 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/ma/extras.py (2266 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/ma/tests/test_core.py (6117 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/ma/tests/test_extras.py (1945 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/polynomial/chebyshev.py (2053 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/polynomial/hermite.py (1794 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/polynomial/hermite_e.py (1692 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/polynomial/laguerre.py (1729 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/polynomial/legendre.py (1655 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/polynomial/polynomial.py (1683 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/random/tests/test_generator_mt19937.py (2825 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/random/tests/test_random.py (1723 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/random/tests/test_randomstate.py (2098 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/testing/_private/utils.py (2866 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: numpy/testing/tests/test_utils.py (2132 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
info 9-layer quality integrity conf 1.00 Commented-code block (11 lines) in numpy/_core/tests/test_einsum.py:851
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (11 lines) in numpy/_utils/_pep440.py:20
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (11 lines) in numpy/random/tests/test_random.py:264
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (11 lines) in numpy/random/tests/test_randomstate.py:410
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (12 lines) in numpy/_core/tests/test_ufunc.py:1948
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (13 lines) in numpy/f2py/cfuncs.py:398
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in benchmarks/benchmarks/bench_ufunc.py:529
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/__init__.py:663
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_core/__init__.py:165
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_core/_internal.py:84
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_core/arrayprint.py:12
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_core/tests/test_casting_unittests.py:881
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_core/tests/test_indexing.py:541
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_core/tests/test_multiarray.py:657
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_core/tests/test_multiprocessing.py:37
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_core/tests/test_nditer.py:1570
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_core/tests/test_regression.py:1662
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_core/tests/test_umath.py:4856
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_typing/_array_like.py:17
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/_typing/_dtype_like.py:59
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/f2py/capi_maps.py:151
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/f2py/crackfortran.py:1439
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/f2py/rules.py:955
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/lib/_arraysetops_impl.py:324
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/lib/_datasource.py:305
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/lib/_format_impl.py:413
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/lib/_nanfunctions_impl.py:1835
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/lib/tests/test__datasource.py:316
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/lib/tests/test_function_base.py:2129
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/lib/tests/test_io.py:320
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/lib/tests/test_loadtxt.py:873
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/ma/tests/test_core.py:2618
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/ma/tests/test_subclassing.py:84
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/random/tests/test_generator_mt19937.py:243
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (5 lines) in numpy/testing/tests/test_utils.py:499
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (6 lines) in numpy/_core/code_generators/numpy_api.py:93
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (6 lines) in numpy/_core/einsumfunc.py:625
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (6 lines) in numpy/_core/records.py:432
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (6 lines) in numpy/_core/tests/test_array_coercion.py:459
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (6 lines) in numpy/_core/tests/test_arrayobject.py:54
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (6 lines) in numpy/_core/tests/test_deprecations.py:27
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (6 lines) in numpy/_core/tests/test_scalarmath.py:605
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (6 lines) in numpy/_globals.py:100
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (6 lines) in numpy/testing/_private/utils.py:81
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (7 lines) in numpy/_core/code_generators/generate_umath.py:269
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (7 lines) in numpy/_core/numeric.py:2415
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (7 lines) in numpy/lib/_function_base_impl.py:80
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (7 lines) in numpy/tests/test_public_api.py:98
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (8 lines) in numpy/_core/tests/test_numeric.py:1176
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (8 lines) in numpy/f2py/symbolic.py:14
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (8 lines) in numpy/lib/_npyio_impl.py:249
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (8 lines) in numpy/ma/core.py:481
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer quality integrity conf 1.00 Commented-code block (8 lines) in numpy/random/tests/test_generator_mt19937_regressions.py:108
A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest.
integritycommented-codedead-code
info 9-layer api coverage conf 1.00 No API endpoints detected
The scanner did not find FastAPI/Flask/Express/NestJS/GraphQL/gRPC routes. If this repo exposes APIs, the framework may be unsupported.
coverage
info 9-layer frontend coverage conf 1.00 No frontend routes/components detected
No React/Vue/Next routes were found. This is fine for backend-only repos.
coverage
{# ── 2026-05-17 Round 14: AI-agent bridge footer ────────────────────── Discoverability: the /agents/voting/ guide + MCP manifest exist but aren't linked from anywhere users actually land. Small, opt-in footer. #}
For AI agents: Voting guide (TP/FP) MCP manifest Stdio wrapper SARIF Integrate Findings queue Vote TP/FP on findings to calibrate the engine.
For AI agents + API integrations
Email me when this repo regresses
Free. We re-scan periodically; new criticals → your inbox. No signup required for the scan itself.
API access

This page is publicly accessible at: https://repobility.com/scan/42d62344-be26-4abd-ae9b-1edcf3c5f360/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/42d62344-be26-4abd-ae9b-1edcf3c5f360/

Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.