AI Slop Code RIsk Monitor

shader-slang/slang

Making it easier to work with shaders

5.2 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for shader-slang/slang, a C++ project with 5,721 GitHub stars. SynthScan examined 892,784 lines of code across 2758 source files, recording 4341 pattern matches distributed across 21 syntactic categories. The legacy adjusted pattern signal is 5.2 (Moderate pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

5.2
Adjusted Signal
5.2
Raw Pattern Score
100%
Time Factor
2026-10-11
Last Push
5.7K
Stars
C++
Language
892.8K
Lines of Code
2.8K
Files
4.3K
Pattern Hits
2026-10-12
Scan Date
0.02
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 19.1/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 4101 finding(s).

Hallucinated Dependency & Supply Chain Risk 1.6/100 · LOW

Are imports declared and package/API names verified? 70 finding(s).

Agent Over-Engineering Ratio 4.8/100 · LOW

Are wrappers, guards, and repeated structures necessary? 550 finding(s).

PR Review Velocity Impact 24.6/100 · LOW

Which changes need focused human review? 4341 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 0HIGH 66MEDIUM 186LOW 4089

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 4341 distinct pattern matches across 21 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Over-Commented Block3461 hits · 2953 pts
SeverityFileLineSnippetContext
LOWCMakeLists.txt41COMMENT
LOWCMakeLists.txt801 install(COMMENT
LOWCMakeLists.txt921# $<BUILD_LOCAL_INTERFACE:...> / $<BUILD_INTERFACE:...> (cmake/SlangTarget.cmake),COMMENT
LOWCLAUDE.md41# Use -DSLANG_EMBED_CORE_MODULE=OFF to keep core module compilation separateCOMMENT
LOWtools/CMakeLists.txt281 # spvdb (vendored at tests/spvdb) is a SPIR-V interpreter and source-levelCOMMENT
LOWtools/CMakeLists.txt561 )COMMENT
LOWtools/gfx-unit-test/link-time-options.cpp1#include "core/slang-basic.h"COMMENT
LOWtools/gfx-unit-test/shader-cache-tests.cpp1#if 0COMMENT
LOWtools/gfx-unit-test/pointer-in-buffer-roundtrip.cpp1#include "core/slang-basic.h"COMMENT
LOWtools/gfx-unit-test/gfx-test-texture-util.cpp1#include "gfx-test-texture-util.h"COMMENT
LOWtools/gfx-unit-test/gfx-test-texture-util.cpp161 return new PackedValidationTextureFormat<uint32_t>(10, 10, 10, 2);COMMENT
LOWtools/gfx-unit-test/texture-types-tests.cpp1#if 0COMMENT
LOWtools/gfx-unit-test/texture-types-tests.cpp701// one test with something bound, one test with nothing bound, one test with subset of layers (setCOMMENT
LOWtools/gfx-unit-test/pointer-in-paramblock-roundtrip.cpp1#include "core/slang-basic.h"COMMENT
LOWtools/gfx-unit-test/precompiled-module-2.cpp1#if 0COMMENT
LOWtools/gfx-unit-test/link-time-type-layout.cpp241// This test verifies that type layout information correctly propagates throughCOMMENT
LOWtools/gfx-unit-test/link-time-type-layout-nested.cpp241//COMMENT
LOW…x-unit-test/pointer-in-buffer-double-ptr-roundtrip.cpp1#include "core/slang-basic.h"COMMENT
LOWtools/gfx-unit-test/span.h1/*COMMENT
LOWtools/gfx-unit-test/span.h21#define TCB_SPAN_NO_EXCEPTIONSCOMMENT
LOWtools/gfx-unit-test/span.h41#define TCB_SPAN_HAVE_CPP14COMMENT
LOWtools/gfx-unit-test/span.h81 cond ? (void)0 : contract_violation("Expected " TCB_SPAN_STRINGIFY(cond))COMMENT
LOWtools/gfx-unit-test/span.h101COMMENT
LOWtools/gfx-unit-test/span.h121COMMENT
LOWtools/gfx-unit-test/gfx-test-util.h1#pragma onceCOMMENT
LOWtools/gfx-unit-test/neural-slang-network-converter.cpp1#include "core/slang-basic.h"COMMENT
LOWtools/gfx-unit-test/copy-texture-tests.cpp1#if 0COMMENT
LOWtools/vk-pipeline-create/main.cpp1// main.cppCOMMENT
LOWtools/coverage-html/script.js1(function () {COMMENT
LOWtools/coverage-html/lcov_io.py281 # NOTE on counting: LCOV emits one FN/FNDA pair per *mangled name*,COMMENT
LOWtools/coverage-html/lcov_io.py801COMMENT
LOWtools/platform/platform-api.h1#ifndef SLANG_PLATFORM_API_HCOMMENT
LOWtools/platform/gui.cpp1// gui.cppCOMMENT
LOWtools/platform/gui.cpp361COMMENT
LOWtools/platform/model.cpp1// model.cppCOMMENT
LOWtools/platform/model.cpp21COMMENT
LOWtools/slang-static-unit-test/unit-test-ast-types.cpp1// unit-test-ast-types.cppCOMMENT
LOW…ls/slang-static-unit-test/unit-test-module-version.cpp1// unit-test-module-version.cppCOMMENT
LOW…slang-static-unit-test/slang-static-unit-test-main.cpp1// slang-static-unit-test-main.cppCOMMENT
LOW…slang-static-unit-test/slang-static-unit-test-main.cpp181 // `slang-test` fills these with real paths for the plugin tests. Nothing in thisCOMMENT
LOW…slang-static-unit-test/unit-test-harness-selfcheck.cpp1// unit-test-harness-selfcheck.cppCOMMENT
LOW…slang-static-unit-test/unit-test-harness-selfcheck.cpp21// throw: reaching it is what proves the driver carried on rather than dying at one ofCOMMENT
LOWtools/slang-static-unit-test/static-unit-test-env.h1// static-unit-test-env.hCOMMENT
LOWtools/slang-static-unit-test/static-unit-test-env.h41{COMMENT
LOWtools/slang-static-unit-test/static-unit-test-env.h61 /// construct types and other AST values directly.COMMENT
LOWtools/slang-static-unit-test/static-unit-test-env.h101 explicit IRFixtureBuilder(Session* session);COMMENT
LOWtools/slang-static-unit-test/static-unit-test-env.h121COMMENT
LOWtools/slang-static-unit-test/static-unit-test-env.h141COMMENT
LOWtools/slang-static-unit-test/static-unit-test-env.h161 /// separated by a call to `callee`, then a return. Returns the two markers.COMMENT
LOWtools/slang-static-unit-test/static-unit-test-env.h181 /// build directly.COMMENT
LOWtools/slang-static-unit-test/static-unit-test-env.h201 /// two guarantees at once: a function-entry marker takes a dedicated slot,COMMENT
LOWtools/slang-static-unit-test/static-unit-test-env.h221 /// a placeholder, so this matches `countGlobalInsts(kIROp_Func)` only while everyCOMMENT
LOWtools/slang-static-unit-test/unit-test-ir-dce.cpp1// unit-test-ir-dce.cppCOMMENT
LOWtools/slang-static-unit-test/unit-test-ir-dce.cpp361COMMENT
LOWtools/slang-static-unit-test/unit-test-check-decl.cpp1// unit-test-check-decl.cppCOMMENT
LOW…tic-unit-test/unit-test-cuda-sm-capability-mapping.cpp1// unit-test-cuda-sm-capability-mapping.cppCOMMENT
LOW…ang-static-unit-test/unit-test-coverage-coalescing.cpp1// unit-test-coverage-coalescing.cppCOMMENT
LOW…ang-static-unit-test/unit-test-coverage-coalescing.cpp21// Property 2 is the sharpest case for a direct test: first- and last-markerCOMMENT
LOWtools/slang-fiddle/slang-fiddle-diagnostic-defs.h1//COMMENT
LOWtools/slang-fiddle/slang-fiddle-main.cpp1// slang-fiddle-main.cppCOMMENT
3401 more matches not shown…
Decorative Section Separators105 hits · 360 pts
SeverityFileLineSnippetContext
MEDIUMtools/coverage-html/slang-coverage-merge.py63# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-merge.py65# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-merge.py89# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-merge.py91# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tools/coverage-html/slang-coverage-merge.py172# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tools/coverage-html/slang-coverage-merge.py174# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-merge.py224# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-merge.py226# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-merge.py288# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-merge.py290# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/llvm_cov_json.py36# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/llvm_cov_json.py38# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-html.py53# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-html.py55# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tools/coverage-html/slang-coverage-html.py90# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tools/coverage-html/slang-coverage-html.py92# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-html.py1144# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-html.py1146# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-html.py1206# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-html.py1208# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-html.py1246# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-html.py1248# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-html.py1272# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/slang-coverage-html.py1274# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/lcov_io.py114# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/lcov_io.py116# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/lcov_io.py514# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/lcov_io.py516# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/lcov_io.py725# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/lcov_io.py727# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/lcov_io.py805# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/lcov_io.py807# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tools/coverage-html/tests/test_merge.py178# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tools/coverage-html/tests/test_merge.py180# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tools/coverage-html/tests/test_merge.py245# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tools/coverage-html/tests/test_merge.py247# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/tests/test_merge.py43# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/tests/test_merge.py45# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/tests/test_merge.py86# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/tests/test_merge.py88# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/tests/test_merge.py303# ---------------------------------------------------------------------------COMMENT
MEDIUMtools/coverage-html/tests/test_merge.py305# ---------------------------------------------------------------------------COMMENT
MEDIUMsource/compiler-core/slang-rich-diagnostics-render.cpp185 // ┬──────────, where the first character there is the 'Join' one, itCOMMENT
MEDIUMtests/expected-failure-coverage.txt2# =========================COMMENT
MEDIUM⚡tests/spvdb/examples/complicated-bug/CMakeLists.txt4# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/spvdb/examples/complicated-bug/CMakeLists.txt6# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/spvdb/examples/complicated-bug/CMakeLists.txt14# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡tests/spvdb/examples/complicated-bug/CMakeLists.txt16# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/spvdb/examples/complicated-bug/CMakeLists.txt38# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/spvdb/examples/complicated-bug/CMakeLists.txt40# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/shader-coverage-image-pipeline/run_coverage.py29# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/shader-coverage-image-pipeline/run_coverage.py31# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/shader-coverage-image-pipeline/run_coverage.py51# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/shader-coverage-image-pipeline/run_coverage.py53# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/shader-coverage-image-pipeline/run_coverage.py131# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/shader-coverage-image-pipeline/run_coverage.py133# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/shader-coverage-image-pipeline/run_coverage.py158# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/shader-coverage-image-pipeline/run_coverage.py160# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/shader-coverage-image-pipeline/run_coverage.py173# ---------------------------------------------------------------------------COMMENT
MEDIUMexamples/shader-coverage-image-pipeline/run_coverage.py175# ---------------------------------------------------------------------------COMMENT
45 more matches not shown…
Hyper-Verbose Identifiers379 hits · 341 pts
SeverityFileLineSnippetContext
LOW⚡tools/coverage-html/slang-coverage-merge.py177def synthesize_missing_functions(CODE
LOW⚡tools/coverage-html/slang-coverage-html.py98def _escape_path_for_filename(relpath: str) -> str:CODE
LOWtools/coverage-html/slang-coverage-html.py621def _render_file_functions_row(CODE
LOWtools/coverage-html/slang-coverage-html.py848def _fn_function_coverage_cells(is_hit: bool) -> str:CODE
LOWtools/coverage-html/slang-coverage-html.py859def _fn_branch_coverage_cells(b_total: int, b_hit: int) -> str:CODE
LOWtools/coverage-html/slang-coverage-html.py921def _render_inline_functions_table(CODE
LOWtools/coverage-html/tests/test_renderer.py42 def test_empty_is_plain_spaces(self):CODE
LOWtools/coverage-html/tests/test_renderer.py110 def test_cell_bg_uses_high_lightness(self):CODE
LOWtools/coverage-html/tests/test_renderer.py117 def test_rate_cell_emits_gradient_inline_style(self):CODE
LOWtools/coverage-html/tests/test_renderer.py145 def test_no_filters_is_identity(self):CODE
LOWtools/coverage-html/tests/test_renderer.py170 def test_glob_and_regex_compose(self):CODE
LOWtools/coverage-html/tests/test_renderer.py228 def test_demo_fixture_round_trip(self):CODE
LOWtools/coverage-html/tests/test_renderer.py253 def test_refuses_foreign_output_dir(self):CODE
LOWtools/coverage-html/tests/test_renderer.py269 def test_exit_nonzero_on_corrupt_lcov(self):CODE
LOWtools/coverage-html/tests/test_renderer.py278 def test_empty_lcov_produces_empty_index(self):CODE
LOWtools/coverage-html/tests/test_renderer.py290 def test_real_lcov_with_branches_and_functions(self):CODE
LOWtools/coverage-html/tests/test_renderer.py311 def test_metric_cards_only_on_per_file_pages(self):CODE
LOWtools/coverage-html/tests/test_renderer.py342 def test_top_chrome_is_sticky(self):CODE
LOWtools/coverage-html/tests/test_renderer.py379 def test_directory_grouping_in_index(self):CODE
LOWtools/coverage-html/tests/test_renderer.py411 def test_nested_directory_levels_each_collapsible(self):CODE
LOWtools/coverage-html/tests/test_renderer.py447 def test_index_uses_full_width_no_center(self):CODE
LOWtools/coverage-html/tests/test_renderer.py464 def test_title_no_lcov_branding(self):CODE
LOWtools/coverage-html/tests/test_renderer.py480 def test_slang_brand_palette_applied(self):CODE
LOWtools/coverage-html/tests/test_renderer.py497 def test_chevron_placeholder_keeps_columns_aligned(self):CODE
LOWtools/coverage-html/tests/test_renderer.py536 def test_inline_function_table_fixed_width_layout(self):CODE
LOWtools/coverage-html/tests/test_renderer.py562 def test_invocation_cwd_resolves_repo_relative_paths(self):CODE
LOWtools/coverage-html/tests/test_renderer.py603 def test_function_dropdown_includes_branch_coverage(self):CODE
LOWtools/coverage-html/tests/test_renderer.py647 def test_index_has_expandable_function_rows(self):CODE
LOWtools/coverage-html/tests/test_renderer.py691 def test_per_file_page_no_longer_has_functions_table(self):CODE
LOWtools/coverage-html/tests/test_renderer.py721 def test_real_lcov_renders_inline_branch_column(self):CODE
LOWtools/coverage-html/tests/test_renderer.py785 def test_idempotent_modulo_timestamp(self):CODE
LOWtools/coverage-html/tests/test_renderer.py834 def test_json_input_renders_regions_column(self):CODE
LOWtools/coverage-html/tests/test_renderer.py865 def test_json_input_drops_auth_summary(self):CODE
LOWtools/coverage-html/tests/test_renderer.py879 def test_json_summary_drives_overall_numbers(self):CODE
LOWtools/coverage-html/tests/test_renderer.py895 def test_json_gz_extension_accepted(self):CODE
LOWtools/coverage-html/tests/test_renderer.py912 def test_no_auth_no_regions_zero_total(self):CODE
LOWtools/coverage-html/tests/test_renderer.py919 def test_regions_list_drives_unauthed_totals(self):CODE
LOWtools/coverage-html/tests/test_renderer.py931 def test_auth_override_overrides_regions_list(self):CODE
LOWtools/coverage-html/tests/test_llvm_cov_json.py38 def test_summary_drives_totals(self):CODE
LOW⚡tools/coverage-html/tests/test_llvm_cov_json.py52 def test_zero_summary_zeros_out(self):CODE
LOW⚡tools/coverage-html/tests/test_llvm_cov_json.py60 def test_branches_dict_has_two_arms_per_branch(self):CODE
LOW⚡tools/coverage-html/tests/test_llvm_cov_json.py69 def test_functions_attached_to_primary_file(self):CODE
LOW⚡tools/coverage-html/tests/test_llvm_cov_json.py77 def test_regions_filter_to_code_kind(self):CODE
LOW⚡tools/coverage-html/tests/test_llvm_cov_json.py87 def test_segments_drive_per_line_hits(self):CODE
LOW⚡tools/coverage-html/tests/test_llvm_cov_json.py95 def test_lcov_specific_fields_unset(self):CODE
LOWtools/coverage-html/tests/test_llvm_cov_json.py113 def test_half_open_at_segment_boundary(self):CODE
LOWtools/coverage-html/tests/test_llvm_cov_json.py129 def test_final_segment_attributed_only_to_its_own_line(self):CODE
LOWtools/coverage-html/tests/test_llvm_cov_json.py138 def test_five_element_segments_accepted(self):CODE
LOWtools/coverage-html/tests/test_llvm_cov_json.py151 def test_deactivating_segment_skipped(self):CODE
LOWtools/coverage-html/tests/test_llvm_cov_json.py198 def test_gz_extension_auto_decompresses(self):CODE
LOWtools/coverage-html/tests/test_llvm_cov_json.py246 def test_last_block_wins_for_duplicate_filenames(self):CODE
LOW⚡tools/coverage-html/tests/test_merge.py56 def test_windows_backslashes_normalize_to_forward(self):CODE
LOW⚡tools/coverage-html/tests/test_merge.py63 def test_unmatched_path_passes_through(self):CODE
LOW⚡tools/coverage-html/tests/test_merge.py70 def test_no_prefixes_passes_through(self):CODE
LOW⚡tools/coverage-html/tests/test_merge.py160 def test_functions_first_line_fallback(self):CODE
LOW⚡tools/coverage-html/tests/test_merge.py170 def test_files_unique_per_input_are_preserved(self):CODE
LOW⚡tools/coverage-html/tests/test_merge.py227 def test_no_op_when_no_sibling_has_functions(self):CODE
LOW⚡tools/coverage-html/tests/test_merge.py236 def test_only_applies_to_files_with_no_functions(self):CODE
LOW⚡tools/coverage-html/tests/test_merge.py255 def test_round_trip_preserves_coverage(self):CODE
LOW⚡tools/coverage-html/tests/test_merge.py336 def test_rejects_json_input_with_exit_two(self):CODE
319 more matches not shown…
Cross-Language Confusion41 hits · 258 pts
SeverityFileLineSnippetContext
HIGHtools/compile-perf/breakdown.py436 var btn = ev.target.closest && ev.target.closest('button.copy');CODE
HIGHtools/compile-perf/breakdown.py457 if (navigator.clipboard && navigator.clipboard.writeText) {CODE
HIGHtools/compile-perf/sweep_report.py174 somewhere, where a log-log fit is undefined).STRING
HIGHtools/compile-perf/lib/workloads.py25# complexity_ladder is marked "Scaling reference (not a null)" because itCOMMENT
HIGHtools/compile-perf/lib/workloads.py291 Scaling reference (not a null): several axes co-scale, so the sweep's linear line means 'cost tracks code size' — a STRING
HIGHextras/ci-gpu-stress-loop.py206rm -f /usr/share/glvnd/egl_vendor.d/10_nvidia.json 2>/dev/null || trueCODE
HIGH⚡extras/ci-gpu-stress-loop.py218sudo nvidia-modprobe -m 2>/dev/null || trueCODE
HIGH⚡extras/ci-gpu-stress-loop.py227mkdir -p workspace/slang && cd workspace/slangCODE
HIGH⚡extras/ci-gpu-stress-loop.py230chmod +x {cmake_config}/bin/* 2>/dev/null || trueCODE
HIGH⚡extras/ci-gpu-stress-loop.py267nvidia-smi 2>&1 || echo 'NVIDIA-SMI FAILED'CODE
HIGH⚡extras/ci-gpu-stress-loop.py270nvidia-smi -q 2>&1 || echo 'NVIDIA-SMI QUERY FAILED'CODE
HIGH⚡extras/ci-gpu-stress-loop.py273nvidia-smi -q -d XID_ERRORS 2>&1 || echo 'XID QUERY FAILED'CODE
HIGH⚡extras/ci-gpu-stress-loop.py276lspci 2>/dev/null | grep -i nvidia || echo 'lspci not available'CODE
HIGH⚡extras/ci-gpu-stress-loop.py279sudo dmesg 2>/dev/null || echo '(dmesg not available)'CODE
HIGHextras/ci-gpu-stress-loop.py396 " lspci 2>/dev/null | grep -i nvidia || echo 'lspci not available'",CODE
HIGH⚡extras/ci/analytics/ci_visualization.py203 if (ctx.measureText(test).width > maxWidth && cur) {CODE
HIGH⚡extras/ci/analytics/ci_visualization.py204 lines.push(cur);CODE
HIGH⚡extras/ci/analytics/ci_visualization.py210 if (cur) lines.push(cur);CODE
HIGH⚡extras/ci/analytics/ci_visualization.py215 if (!canvas || !bg) return null;CODE
HIGHextras/ci/analytics/ci_visualization.py1177 charts.push({{chart: c, id, type, config}});CODE
HIGH⚡extras/ci/analytics/ci_visualization.py1532 const matchWf = !wf || el.dataset.wf === wf;CODE
HIGH⚡extras/ci/analytics/ci_visualization.py1533 const matchBr = !br || el.dataset.branch === br;CODE
HIGH⚡extras/ci/analytics/ci_visualization.py1534 el.style.display = (matchWf && matchBr) ? 'block' : 'none';CODE
HIGH⚡extras/ci/analytics/ci_health.py1099 if (hostedCanvas && hostedRunnerChart) {{CODE
HIGH⚡extras/ci/analytics/ci_health.py1103 hostedDatasets.push({{CODE
HIGH⚡extras/ci/analytics/ci_health.py1113 hostedDatasets.push({{CODE
HIGH⚡extras/ci/analytics/ci_health.py1476 if (!p.pr_number || p.title !== p.name || seenPrs[p.pr_number]) return;CODE
HIGH⚡extras/ci/analytics/ci_health.py1478 if (titleTargets.length < MAX_TITLE_LOOKUPS) titleTargets.push(p.pr_number);CODE
HIGH⚡extras/ci/analytics/ci_health.py1482 .then(function (r) { return r.ok ? r.json() : null; })CODE
HIGH⚡extras/ci/analytics/ci_health.py1486 if (p.pr_number === prNumber && p.title === p.name) p.title = pr.title;CODE
HIGHextras/ci/analytics/ci_health.py986 runnerDatasets.push({{CODE
HIGHextras/ci/analytics/ci_health.py1039 if (!gpuCanvas || Object.keys(quotaChart.regionData).length === 0) continue;CODE
HIGHextras/ci/analytics/ci_health.py1043 gpuDatasets.push({{CODE
HIGHextras/ci/analytics/ci_health.py1054 gpuDatasets.push({{CODE
HIGHextras/ci/analytics/ci_health.py1187 if (total == null) return '';CODE
HIGHextras/ci/analytics/ci_health.py1201 if (mqCanvas && hasMqSnapshots) {{CODE
HIGHextras/ci/analytics/ci_health.py1407 var prNumber = prs.length ? prs[0].number : null;CODE
HIGHextras/ci/analytics/ci_health.py1408 if (prNumber === null && r.event === "merge_group") {CODE
HIGHextras/ci/analytics/ci_health.py1423 title: r.display_title || String(r.id),CODE
HIGHextras/ci/analytics/ci_health.py1439 if (p.pr_number !== null || p.event !== "pull_request" || !p.head_owner) return;CODE
HIGHextras/ci/analytics/ci_health.py1443 if (uniqueTargets.length < MAX_HEAD_LOOKUPS) uniqueTargets.push(key);CODE
AI Slop Vocabulary39 hits · 115 pts
SeverityFileLineSnippetContext
MEDIUMtools/compile-perf/bench.py872 # here because the bench harness always builds valid invocations.COMMENT
MEDIUMtools/compile-perf/bench.py1074# otherwise have no test coverage (bench.py has no pytest/GPU harness; theCOMMENT
MEDIUMtools/compile-perf/lib/manifest.py107 # / holistic first, then the API-path workloads, then the compilerCOMMENT
MEDIUMtools/compile-perf/lib/manifest.py123 # Sweep this to see the holistic compile-time curve as a representativeCOMMENT
MEDIUM…/slang-unit-test/unit-precompiled-module-attribute.cpp18// This test checks a nuanced case:COMMENT
MEDIUMtools/slang-unit-test/unit-test-persistent-cache.cpp312// Tests the cache to be robust against various corruptions.COMMENT
MEDIUMtools/gfx/renderer-shared.h83// This setup is robust to any destruction ordering. If user releases reference to `device` first,COMMENT
MEDIUMsource/slang/slang-ir-autodiff-primal-hoist.cpp344 // Essentially we want to split the uses dominated by the true block and the false block of theCOMMENT
MEDIUMsource/slang/slang-ir-eliminate-phis.cpp421 // In an attempt to make this code as robust as possible, weCOMMENT
MEDIUMsource/slang/slang-check-overload.cpp2324 // structural/type concerns, but a more nuanced approach may beCOMMENT
MEDIUMsource/slang/slang-check-inheritance.cpp1531 // compared to C3 so that it is robust to such ordering issues.COMMENT
MEDIUMsource/slang/slang-ir-restructure.cpp540 // The logic here isn't going to be robust in edge casesCOMMENT
MEDIUMsource/slang/slang-parser.cpp7360 // TODO(tfoley): this wouldn't be robust for moreCOMMENT
MEDIUMsource/slang/slang-ir.cpp248 // this more robust.COMMENT
MEDIUMsource/slang/slang-ir-typeflow-specialize.cpp512// In the future, we may want to extend this check to something more nuanced,COMMENT
MEDIUMsource/slang/slang-ir-synthesize-active-mask.cpp228 // TODO: The logic here isn't robust against cases where weCOMMENT
MEDIUMsource/slang/slang-lower-to-ir.cpp6864 // Check the AST type (robust to generic instantiations whoseCOMMENT
MEDIUMsource/slang/slang-lower-to-ir.cpp7762 // TODO: We might want to have a more robust checkCOMMENT
MEDIUMsource/slang/slang-lower-to-ir.cpp15082 // TODO: This isn't a robust strategy if we ever have to dealCOMMENT
MEDIUMsource/slang/slang-ir-collect-global-uniforms.cpp260 // TODO: It would be more consistent and robust to *always* wrap upCOMMENT
MEDIUMsource/slang/slang-ir-ssa.cpp1603 // robust to the presence of nested functions in general.COMMENT
MEDIUMsource/slang/slang-ir-specialize.cpp2206 // TODO: We probably need/want a more robust test here.COMMENT
MEDIUMsource/slang/slang-parameter-binding.cpp3554 // TODO: Ideally we should make the layout process more robust to empty/voidCOMMENT
MEDIUMsource/slang/slang-emit-c-like.h783 // Source language (based on the more nuanced m_target)COMMENT
MEDIUMsource/slang/slang-check-decl.cpp2268 // applies to such types. A more robust fix would involve a trulyCOMMENT
MEDIUMsource/slang/slang-check-decl.cpp2269 // recursive walk of the AST declarations, and an even *more* robustCOMMENT
MEDIUMsource/slang/slang-check-decl.cpp11659 // The only robust solution long-term is probably to treat thisCOMMENT
MEDIUMsource/slang/slang-check-decl.cpp14623 // they are allowed to co-exist using these more nuanced rules.COMMENT
MEDIUMsource/slang/slang-check-constraint.cpp2392 // nodes. The visited set makes the walk robust and keeps one complexCOMMENT
MEDIUMsource/slang/slang-ir-autodiff-fwd.cpp1102 // role is robust to the order in which requirements (and the relocatedCOMMENT
MEDIUMsource/slang/slang-ir-autodiff-fwd.cpp3732 // rather than by operand position, so this is robust to the order in which the requirementsCOMMENT
MEDIUMsource/slang/slang-ir-entry-point-raw-ptr-params.cpp60 // that ranges are robust against changes to instructions outsideCOMMENT
MEDIUMexamples/gpu-printing/gpu-printing.cpp244 // TODO: This code isn't robust against strings withCOMMENT
MEDIUM.github/workflows/ci-slang-static-unit-test.yml164 # The suite above is written to pass, so passing does not prove the harnessCOMMENT
MEDIUM.github/actions/claude-code-runner/action.yml297 # Generate token with comprehensive error handling (using Basic auth)COMMENT
MEDIUMexternal/spirv-tools-generated/options-pinned.h39// Diamond dependency problems can be avoided if all packages utilize the sameCOMMENT
MEDIUMextras/ci-gpu-stress-loop.py326 # internal harness, e.g. `getBufferResourceHandleVulkan.internal`) resultCOMMENT
MEDIUMextras/ci/analyze-ci-parallelization.py67 """Perform comprehensive parallelization analysis."""STRING
MEDIUMextras/scaler/cmd/scaler/main.go400 // jobs to finish. This enables seamless binary updates:COMMENT
Empty Error Handlers22 hits · 110 pts
SeverityFileLineSnippetContext
HIGHtools/coverage-html/slang-coverage-merge.py109except OSError:CODE
HIGHtools/coverage-html/lcov_io.py590except ValueError:CODE
HIGHtools/coverage-html/lcov_io.py596except ValueError:CODE
HIGHtools/coverage-html/lcov_io.py643except ValueError:CODE
HIGHtools/coverage-html/lcov_io.py649except ValueError:CODE
HIGHtools/coverage-html/lcov_io.py702except ValueError:CODE
HIGHtools/coverage-html/lcov_io.py708except ValueError:CODE
HIGHtools/compile-perf/slack_status.py152except (TypeError, ValueError):CODE
HIGHtools/compile-perf/track.py61except OSError:CODE
HIGHtools/compile-perf/bench.py221except subprocess.SubprocessError:CODE
HIGHtools/compile-perf/bench.py549except Exception: # noqa: BLE001CODE
HIGHtools/compile-perf/fetch_releases.py323except SystemExit:CODE
HIGHtools/compile-perf/fetch_releases.py353except (SystemExit, tarfile.TarError, OSError):CODE
HIGHtools/compile-perf/fetch_releases.py384except (tarfile.TarError, OSError):CODE
HIGH…slang-review-post-github/scripts/post_github_review.py707except OSError:CODE
HIGHextras/extract-spirv-sources.py129except Exception:CODE
HIGHextras/extract-spirv-sources.py469except Exception:CODE
HIGHextras/ci/gh_api.py203except json.JSONDecodeError:CODE
HIGHextras/ci/analytics/ci_job_collector.py407except (ValueError, TypeError):CODE
HIGHextras/ci/analytics/ci_post_status.py85except (FileNotFoundError, subprocess.TimeoutExpired):CODE
HIGHextras/ci/analytics/ci_post_status.py243except EOFError:CODE
HIGHextras/ci/analytics/ci_visualization.py888except (ValueError, TypeError):CODE
Structural Annotation Overuse58 hits · 95 pts
SeverityFileLineSnippetContext
LOWREVIEW.md44## Step 1: Verify the pre-staged PR diffCOMMENT
LOWREVIEW.md76## Step 2: Determine applicable reviewers and dispatchCOMMENT
LOWREVIEW.md114## Step 3: Wait for all dispatched agents, then editorially filterCOMMENT
LOWREVIEW.md145## Step 4: Analyze changes for the reviewCOMMENT
LOWREVIEW.md160## Step 5: Post ONE review with inline commentsCOMMENT
LOW…s/slang-unit-test/unit-test-obfuscation-with-debug.cpp433 // Step 1: Compile slang modules with -g2 + Obfuscation ONCOMMENT
LOW…s/slang-unit-test/unit-test-obfuscation-with-debug.cpp455 // Step 2: Generate SPIR-V with separate debugCOMMENT
LOW…s/slang-unit-test/unit-test-obfuscation-with-debug.cpp540 // Step 3: VerificationCOMMENT
LOWsource/slang/slang-check-inheritance.cpp1166 // Step 1: Express the constraint in terms of the concrete lookup source.COMMENT
LOWsource/slang/slang-check-inheritance.cpp1179 // Step 2: Compare the constraint's endpoints with `selfType`. A directedCOMMENT
LOWsource/slang/slang-check-inheritance.cpp1211 // Step 3: Skip the constraint unless it applies to `selfType`. Only relevantCOMMENT
LOWsource/slang/slang-ir-typeflow-specialize.cpp3518 // Step 1: treat any non-concrete table (the explicit "none"COMMENT
LOWsource/slang/slang-ir-typeflow-specialize.cpp3532 // Step 2: it is safe to dereference `witnessTab` now.COMMENT
LOW.claude/skills/slangpy-debug/SKILL.md23## Step 1: Build SlangCOMMENT
LOW.claude/skills/slangpy-debug/SKILL.md31## Step 2: Clone slangpy RepositoryCOMMENT
LOW.claude/skills/slangpy-debug/SKILL.md42## Step 3: Build and Install slangpy with Local SlangCOMMENT
LOW.claude/skills/slangpy-debug/SKILL.md63## Step 4: Install Test DependenciesCOMMENT
LOW.claude/skills/slangpy-debug/SKILL.md71## Step 5: Run TestsCOMMENT
LOW.claude/skills/slang-release-process/SKILL.md18## Step 1: Trigger Release CICOMMENT
LOW.claude/skills/slang-release-process/SKILL.md57## Step 2: Determine the VersionCOMMENT
LOW.claude/skills/slang-release-process/SKILL.md93## Step 3: Generate Release NotesCOMMENT
LOW.claude/skills/slang-release-process/SKILL.md103## Step 4: Create and Push the TagCOMMENT
LOWdocs/vk-gl-cts.md67## Step 1: Build Slang the way the nightly doesCOMMENT
LOWdocs/vk-gl-cts.md90## Step 2: Get the test listsCOMMENT
LOWdocs/vk-gl-cts.md121## Step 3: Lay out the prebuilt CTSCOMMENT
LOWdocs/vk-gl-cts.md153## Step 4: RunCOMMENT
LOWdocs/vk-gl-cts.md209## Step 5: Triage a failureCOMMENT
LOWdocs/replays.md387### Step 1: Create or Update ProxyCOMMENT
LOWdocs/replays.md402### Step 2: Implement Methods with RecordingCOMMENT
LOW⚡docs/replays.md415### Step 3: Register Wrapping (if new interface)COMMENT
LOW⚡docs/replays.md423### Step 4: Register Replay HandlerCOMMENT
LOW⚡docs/replays.md431### Step 5: Add Type Serialization (if needed)COMMENT
LOWexamples/stacktrace-windows/common.cpp72// NOTE: This function is not thread-safe, due to usage of StackWalk64 and static buffers.COMMENT
LOW⚡extras/update-spirv-tools.sh41# Step 1: Synchronize and update submodulesCOMMENT
LOW⚡extras/update-spirv-tools.sh46# Step 2: Fetch and resolve the commit hashCOMMENT
LOW⚡extras/update-spirv-tools.sh65# Step 3: Create a branch for the updateCOMMENT
LOW⚡extras/update-spirv-tools.sh72# Step 4: Update the SPIRV-Tools submodule to the specified versionCOMMENT
LOW⚡extras/update-spirv-tools.sh76# Step 5: Build spirv-tools to generate filesCOMMENT
LOWextras/update-spirv-tools.sh97# Step 6: Update SPIRV-Headers to what SPIRV-Tools usesCOMMENT
LOWextras/update-spirv-tools.sh114# Step 7: Copy the generated files from spirv-tools/build-generated/ to spirv-tools-generated/COMMENT
LOWextras/update-spirv-tools.sh136# Step 8: Stage the changesCOMMENT
LOW⚡extras/repro-remix.sh81# Step 1: Verify Slang Debug BuildCOMMENT
LOW⚡extras/repro-remix.sh101# Step 2: Clone dxvk-remixCOMMENT
LOW⚡extras/repro-remix.sh127# Step 3: Comment out Slang in packman-external.xmlCOMMENT
LOW⚡extras/repro-remix.sh163# Step 4: Download packman dependencies (excluding Slang)COMMENT
LOW⚡extras/repro-remix.sh175# Step 5: Create Slang directory with our Debug buildCOMMENT
LOW⚡extras/repro-remix.sh220# Step 6: Build shadersCOMMENT
LOW⚡extras/repro-remix.sh253# Step 7: Verify shader compilation outputCOMMENT
LOWextras/scaler/deploy/setup-scaler-host.sh57# Step 1: Create VM if it doesn't existCOMMENT
LOW⚡extras/scaler/deploy/setup-scaler-host.sh78# Step 2: Create scaler user and directories on VMCOMMENT
LOW⚡extras/scaler/deploy/setup-scaler-host.sh87# Step 3: Upload binary and configCOMMENT
LOWextras/scaler/deploy/setup-scaler-host.sh104# Step 4: Upload and install systemd servicesCOMMENT
LOWextras/scaler/deploy/setup-scaler-host.sh130# Step 5: Start Windows scaler (Linux scaler needs its image first)COMMENT
LOWextras/scaler/internal/gcp/startup.sh102# Step 0: Remove any pre-existing runner service from the base image.COMMENT
LOWextras/scaler/internal/gcp/startup.sh301# Step 1: Read JIT config from GCP instance metadataCOMMENT
LOW⚡extras/scaler/internal/gcp/startup.sh321# Step 2: Log GPU and system infoCOMMENT
LOW⚡extras/scaler/internal/gcp/startup.sh326# Step 3: Run the GitHub Actions runner as the correct userCOMMENT
LOW⚡extras/scaler/internal/gcp/startup.sh335# Step 4: Shut down the VMCOMMENT
Excessive Try-Catch Wrapping43 hits · 74 pts
SeverityFileLineSnippetContext
LOWtools/compile-perf/breakdown.py532 except Exception as e: # noqa: BLE001 — the table must never sink page renderingCODE
LOWtools/compile-perf/breakdown.py580 except Exception as e: # noqa: BLE001CODE
LOWtools/compile-perf/bench.py549 except Exception: # noqa: BLE001CODE
LOWtools/compile-perf/bench.py862 except Exception as exc: # Keep other workloads running after an execution failure.CODE
LOWtools/compile-perf/bench.py991 except Exception as exc: # A missing corpus or setup failure costs only this case.CODE
LOWtools/compile-perf/fetch_releases.py235 except Exception as e: # noqa: BLE001CODE
MEDIUMtools/compile-perf/fetch_releases.py231def verify(slangc):CODE
LOWtools/compile-perf/report.py326 except Exception as e: # noqa: BLE001 — movers must never sink the reportCODE
LOWtools/compile-perf/confirm.py149 except Exception as exc:CODE
LOWtools/compile-perf/confirm.py213 except Exception as exc:CODE
LOW.claude/hooks/stop.py56 except Exception:CODE
LOW.claude/hooks/stop.py114 except Exception:CODE
MEDIUM.claude/hooks/stop.py61def main():CODE
LOW.github/workflows/nightly-mdl-perf-test.yml544 except Exception as e:CODE
LOWextras/insttrace.py80 except Exception as e:CODE
LOWextras/ci-gpu-stress-loop.py66 except Exception as e:CODE
MEDIUMextras/split-ir-dump.py168 print(f"Error: Dump file '{dump_file}' not found")CODE
MEDIUMextras/split-ir-dump.py177 print("Error: Too many arguments")CODE
LOWextras/extract-spirv-sources.py58 except Exception:CODE
LOWextras/extract-spirv-sources.py124 except Exception:CODE
LOWextras/extract-spirv-sources.py129 except Exception:CODE
LOW⚡extras/extract-spirv-sources.py469 except Exception:CODE
MEDIUMextras/ci/analyze-ci-parallelization.py69 print("Error: No jobs to analyze")CODE
MEDIUM⚡extras/ci/analyze-ci-parallelization.py309 print(f"Error: File not found: {sys.argv[1]}", file=sys.stderr)CODE
MEDIUM⚡extras/ci/analyze-ci-parallelization.py312 print(f"Error: Permission denied: {sys.argv[1]}", file=sys.stderr)CODE
MEDIUM⚡extras/ci/analyze-ci-parallelization.py315 print(f"Error: Invalid JSON in {sys.argv[1]}: {e}", file=sys.stderr)CODE
MEDIUM⚡extras/ci/analyze-ci-parallelization.py320 print("Error: Invalid or empty JSON input", file=sys.stderr)CODE
MEDIUMextras/ci/analyze-ci-parallelization.py338 print("Error: Expected JSON with 'jobs' array or array of jobs", file=sys.stderr)CODE
MEDIUMextras/ci/analyze-ci-parallelization.py345 print("Error: No valid jobs found in input", file=sys.stderr)CODE
MEDIUMextras/ci/analytics/ci_job_collector.py531 print("Error: --migrate requires --output-dir", file=sys.stderr)CODE
MEDIUMextras/ci/analytics/ci_job_collector.py574 print(f"Error: {e}", file=sys.stderr)CODE
MEDIUMextras/ci/analytics/ci_post_status.py125 print(f"Error: could not read {STATUS_FILE}: {e}", file=sys.stderr)CODE
MEDIUMextras/ci/analytics/ci_post_status.py186 print(f"Error: commit failed:\n{result.stderr}", file=sys.stderr)CODE
MEDIUMextras/ci/analytics/ci_post_status.py201 print(f"Error: pull --rebase failed:\n{pull.stderr}", file=sys.stderr)CODE
MEDIUMextras/ci/analytics/ci_post_status.py248 print("Error: body cannot be empty.", file=sys.stderr)CODE
MEDIUMextras/ci/analytics/ci_visualization.py105 print(f"Error: invalid runner config at {config_path}: {e}", file=sys.stderr)CODE
MEDIUMextras/ci/analytics/ci_visualization.py1578 print(f"Error: no ci_jobs_*.json files found in {input_dir}", file=sys.stderr)CODE
MEDIUMextras/ci/analytics/ci_visualization.py1593 print(f"Error: failed reading {path}: {e}", file=sys.stderr)CODE
MEDIUM⚡extras/ci/analytics/ci_visualization.py1615 print(f"Error: input JSON not found: {args.input}", file=sys.stderr)CODE
MEDIUM⚡extras/ci/analytics/ci_visualization.py1618 print(f"Error: invalid JSON in {args.input}: {e}", file=sys.stderr)CODE
MEDIUM⚡extras/ci/analytics/ci_visualization.py1621 print(f"Error: failed reading {args.input}: {e}", file=sys.stderr)CODE
LOWextras/ci/analytics/ci_health.py1854 except Exception as e: # noqa: BLE001 — sampler must never break the health runSTRING
MEDIUMextras/ci/analytics/pr_collector.py215 print(f"Error: {e}", file=sys.stderr)CODE
Verbosity Indicators43 hits · 72 pts
SeverityFileLineSnippetContext
LOW…s/slang-unit-test/unit-test-obfuscation-with-debug.cpp433 // Step 1: Compile slang modules with -g2 + Obfuscation ONCOMMENT
LOW…s/slang-unit-test/unit-test-obfuscation-with-debug.cpp455 // Step 2: Generate SPIR-V with separate debugCOMMENT
LOW…s/slang-unit-test/unit-test-obfuscation-with-debug.cpp540 // Step 3: VerificationCOMMENT
LOWsource/slang/slang-check-inheritance.cpp1166 // Step 1: Express the constraint in terms of the concrete lookup source.COMMENT
LOWsource/slang/slang-check-inheritance.cpp1179 // Step 2: Compare the constraint's endpoints with `selfType`. A directedCOMMENT
LOWsource/slang/slang-check-inheritance.cpp1211 // Step 3: Skip the constraint unless it applies to `selfType`. Only relevantCOMMENT
LOWsource/slang/slang-ir-glsl-legalize.cpp4918 // Specifically, we need to check if the function hasCOMMENT
LOWsource/slang/slang-ir-typeflow-specialize.cpp3518 // Step 1: treat any non-concrete table (the explicit "none"COMMENT
LOWsource/slang/slang-ir-typeflow-specialize.cpp3532 // Step 2: it is safe to dereference `witnessTab` now.COMMENT
LOWsource/slang/slang-ir-liveness.cpp466 // We need to check if we are in the live start block, as we then need to processCOMMENT
LOWsource/slang/slang-ir-constexpr.cpp707 // In the forward direction we need to check if all of the operandsCOMMENT
LOWsource/slang/slang-ir-legalize-matrix-types.cpp620 // lowered (e.g. uint4x4), so we need to check if we should lower the operand even if weCOMMENT
LOWsource/slang/slang-check-expr.cpp784 // We need to check if the lookup should resolve to a definition in an implementation typeCOMMENT
LOWsource/slang/slang-check-constraint.cpp3953 // If they refer to different declarations, we need to check if one type's super typeCOMMENT
LOWsource/slang/slang-serialize-fossil.cpp1268 // Now we need to check if we've previously read inCOMMENT
LOWsource/slang/slang-emit-spirv.cpp6218 // we need to check if we actually write to it.COMMENT
LOWsource/slang/slang-emit-spirv.cpp11134 // First we need to check if the debug variable has a backing ordinaryCOMMENT
LOWsource/slang/slang-ir-entry-point-uniforms.cpp203 // If the base cases above failed, we need to check if we are dealing withCOMMENT
LOW⚡extras/update-spirv-tools.sh41# Step 1: Synchronize and update submodulesCOMMENT
LOW⚡extras/update-spirv-tools.sh46# Step 2: Fetch and resolve the commit hashCOMMENT
LOW⚡extras/update-spirv-tools.sh65# Step 3: Create a branch for the updateCOMMENT
LOW⚡extras/update-spirv-tools.sh72# Step 4: Update the SPIRV-Tools submodule to the specified versionCOMMENT
LOW⚡extras/update-spirv-tools.sh76# Step 5: Build spirv-tools to generate filesCOMMENT
LOWextras/update-spirv-tools.sh97# Step 6: Update SPIRV-Headers to what SPIRV-Tools usesCOMMENT
LOWextras/update-spirv-tools.sh114# Step 7: Copy the generated files from spirv-tools/build-generated/ to spirv-tools-generated/COMMENT
LOWextras/update-spirv-tools.sh136# Step 8: Stage the changesCOMMENT
LOW⚡extras/repro-remix.sh81# Step 1: Verify Slang Debug BuildCOMMENT
LOW⚡extras/repro-remix.sh101# Step 2: Clone dxvk-remixCOMMENT
LOW⚡extras/repro-remix.sh127# Step 3: Comment out Slang in packman-external.xmlCOMMENT
LOW⚡extras/repro-remix.sh163# Step 4: Download packman dependencies (excluding Slang)COMMENT
LOW⚡extras/repro-remix.sh175# Step 5: Create Slang directory with our Debug buildCOMMENT
LOW⚡extras/repro-remix.sh220# Step 6: Build shadersCOMMENT
LOW⚡extras/repro-remix.sh253# Step 7: Verify shader compilation outputCOMMENT
LOWextras/scaler/deploy/setup-scaler-host.sh57# Step 1: Create VM if it doesn't existCOMMENT
LOW⚡extras/scaler/deploy/setup-scaler-host.sh78# Step 2: Create scaler user and directories on VMCOMMENT
LOW⚡extras/scaler/deploy/setup-scaler-host.sh87# Step 3: Upload binary and configCOMMENT
LOWextras/scaler/deploy/setup-scaler-host.sh104# Step 4: Upload and install systemd servicesCOMMENT
LOWextras/scaler/deploy/setup-scaler-host.sh130# Step 5: Start Windows scaler (Linux scaler needs its image first)COMMENT
LOWextras/scaler/internal/gcp/startup.sh102# Step 0: Remove any pre-existing runner service from the base image.COMMENT
LOWextras/scaler/internal/gcp/startup.sh301# Step 1: Read JIT config from GCP instance metadataCOMMENT
LOW⚡extras/scaler/internal/gcp/startup.sh321# Step 2: Log GPU and system infoCOMMENT
LOW⚡extras/scaler/internal/gcp/startup.sh326# Step 3: Run the GitHub Actions runner as the correct userCOMMENT
LOW⚡extras/scaler/internal/gcp/startup.sh335# Step 4: Shut down the VMCOMMENT
Deep Nesting50 hits · 48 pts
SeverityFileLineSnippetContext
LOWtools/coverage-html/slang-coverage-merge.py177CODE
LOWtools/coverage-html/slang-coverage-html.py1033CODE
LOWtools/coverage-html/lcov_io.py523CODE
LOWtools/shader-coverage/slang-coverage-to-lcov.py160CODE
LOWtools/shader-coverage/slang-coverage-to-lcov.py203CODE
LOWtools/compile-perf/breakdown.py259CODE
LOWtools/compile-perf/track.py44CODE
LOWtools/compile-perf/track.py170CODE
LOWtools/compile-perf/trend.py694CODE
LOWtools/compile-perf/trend.py951CODE
LOWtools/compile-perf/bench.py85CODE
LOWtools/compile-perf/fetch_releases.py105CODE
LOWtools/compile-perf/daily_movers.py59CODE
LOWtools/compile-perf/sweep.py62CODE
LOWtools/compile-perf/test_sampling.py227CODE
LOWtools/compile-perf/report.py174CODE
LOWtools/compile-perf/report.py270CODE
LOWtools/compile-perf/lib/analyze.py271CODE
LOWtools/compile-perf/lib/analyze.py332CODE
LOW.claude/hooks/stop.py9CODE
LOW.claude/hooks/stop.py61CODE
LOW…slang-review-post-github/scripts/post_github_review.py175CODE
LOW…slang-review-post-github/scripts/post_github_review.py424CODE
LOWextras/verify-user-skills-package.py247CODE
LOWextras/insttrace.py20CODE
LOWextras/ci-gpu-stress-loop.py284CODE
LOWextras/ci-gpu-stress-loop.py351CODE
LOWextras/ci-gpu-stress-loop.py627CODE
LOWextras/split-ir-dump.py55CODE
LOWextras/extract-spirv-sources.py452CODE
LOWextras/extract-spirv-sources.py165CODE
LOWextras/extract-spirv-sources.py323CODE
LOWextras/extract-spirv-sources.py167CODE
LOWextras/ci/gh_api.py91CODE
LOWextras/ci/ci-queue-status.py108CODE
LOWextras/ci/ci-queue-status.py266CODE
LOWextras/ci/ci-queue-status.py404CODE
LOWextras/ci/ci-queue-status.py460CODE
LOWextras/ci/analytics/ci_job_collector.py205CODE
LOWextras/ci/analytics/ci_job_collector.py435CODE
LOWextras/ci/analytics/ci_post_status.py228CODE
LOWextras/ci/analytics/ci_visualization.py341CODE
LOWextras/ci/analytics/ci_visualization.py653CODE
LOWextras/ci/analytics/ci_visualization.py663CODE
LOWextras/ci/analytics/ci_health.py485CODE
LOWextras/ci/analytics/ci_health.py1302CODE
LOWextras/ci/analytics/ci_health.py1547CODE
LOWextras/ci/analytics/ci_hosted_runner_usage.py124CODE
LOWextras/ci/analytics/pr_collector.py80CODE
LOWextras/ci/analytics/tests/test_ci_analytics.py290CODE
Redundant / Tautological Comments28 hits · 41 pts
SeverityFileLineSnippetContext
LOWsource/core/core_lldb.py34# Check if a pointer is nullptrCOMMENT
LOW.claude/hooks/stop.py24 # Check if this is an assistant message with TodoWrite tool useCOMMENT
LOW.claude/hooks/stop.py48 # Check if all todos are completedCOMMENT
LOW.claude/hooks/stop.py84 # Check if validation returned a tuple (incomplete todos found)COMMENT
LOWdocs/scripts/release-note.sh101 # Check if the PR is marked as a breaking changeCOMMENT
LOW.github/workflows/release.yml204 # Check if symlink existsCOMMENT
LOW.github/workflows/release.yml218 # Check if resolved file existsCOMMENT
LOW.github/workflows/ci-slang-sanitizer.yml347 # Check if all findings in this log are expected.COMMENT
LOW.github/workflows/ci-slang-sanitizer.yml369 # Check if any Direct leak block matches an expected pattern.COMMENT
LOW.github/workflows/ci-materialx-regression-test.yml211 # Check if shader was createdCOMMENT
LOW.github/actions/common-test-setup/action.yml102 # Check if the output contains "llvm" (case-insensitive)COMMENT
LOWextras/verify-documented-compiler-version.sh9# Check if required files existCOMMENT
LOWextras/verify-documented-compiler-version.sh124# Check if current version matches any expected versionCOMMENT
LOWextras/split-ir-dump.py138 # Check if we're reading from stdin or a fileCOMMENT
LOWextras/install-git-hooks.sh40 # Check if hook already existsCOMMENT
LOWextras/update-spirv-tools.sh30# Check if we're in the repository rootCOMMENT
LOW⚡extras/repro-remix.sh135# Check if file existsCOMMENT
LOW⚡extras/repro-remix.sh145# Check if Slang section is already commented outCOMMENT
LOWextras/check-inst-version-changes.sh14# Check if running in GitHub ActionsCOMMENT
LOWextras/check-inst-version-changes.sh32 # Check if slang-ir.h was modified and if the version constants were changedCOMMENT
LOWextras/check-inst-version-changes.sh34 # Check if either version constant was modifiedCOMMENT
LOWextras/check-inst-version-changes.sh49 # Check if the serialization version constant was modifiedCOMMENT
LOWextras/check-inst-version-changes.sh108# Check if we need to add warningsCOMMENT
LOWextras/check-inst-version-changes.sh110 # Check if the version constants have already been updatedCOMMENT
LOWextras/check-inst-version-changes.sh134 # Check if the serialization version has already been updatedCOMMENT
LOWextras/check-inst-version-changes.sh175 # Set output to indicate artifact was createdCOMMENT
LOWextras/check-inst-version-changes.sh184 # Set output to indicate no artifact was createdCOMMENT
LOWextras/ci/analytics/ci_post_status.py178 # Check if there are changesCOMMENT
Modern AI Meta-Vocabulary10 hits · 30 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/check-doc-gaps.yml3# Reports the doc gaps the agentic test suite has found in the generatedCOMMENT
MEDIUM.github/workflows/check-doc-gaps.yml21# agentic-tests nightly, which needs a full slang build and would make theCOMMENT
MEDIUM.github/workflows/check-doc-gaps.yml27 # 05:00 UTC, an hour after ci-agentic-tests-nightly's 04:00 slot, so theCOMMENT
MEDIUM.github/workflows/pr-board-sync.yml8# on the event-driven happy path,COMMENT
MEDIUM.github/workflows/pr-board-sync.yml42# This is the event-driven half of the PR maintenance state machine; sweep modeCOMMENT
MEDIUM.github/workflows/nightly-slang-test.yml5# This is Phase B2 of the agentic-tests framework — the suite isCOMMENT
MEDIUM.github/workflows/nightly-slang-test.yml144 # `OpSource Unknown`. The agentic suite was generated againstCOMMENT
MEDIUM.github/workflows/nightly-slang-test.yml245 # than in-job steps) is required because the agentic-tests job ends withCOMMENT
MEDIUM.github/workflows/ci-slang-coverage-test.yml303 # --with-agentic-tests rolls the doc-anchored bundles underCOMMENT
MEDIUM.github/workflows/ci-slang-coverage-test.yml307 # agentic pass uses the same gate as nightly-slang-test.ymlCOMMENT
Self-Referential Comments6 hits · 21 pts
SeverityFileLineSnippetContext
MEDIUM.claude/hooks/stop.py88 # Create a detailed message about incomplete todosCOMMENT
MEDIUM.github/workflows/ci-slang-build.yml322 # Create a staging directory for artifacts with config-specific subdirectoryCOMMENT
MEDIUM.github/workflows/ci-slang-build-container.yml173 # Create a staging directory for artifacts with config-specific subdirectoryCOMMENT
MEDIUMextras/split-ir-dump.py115 # Create an index fileCOMMENT
MEDIUM⚡extras/repro-remix.sh182# Create the directory (packman didn't create it since we commented it out)COMMENT
MEDIUM⚡extras/ci/analytics/tests/test_ci_analytics.py1372 # Create a monthly file and a non-monthly fileCOMMENT
Unused Imports21 hits · 20 pts
SeverityFileLineSnippetContext
LOWtools/coverage-html/slang-coverage-merge.py38CODE
LOWtools/coverage-html/slang-coverage-html.py38CODE
LOWtools/coverage-html/lcov_io.py20CODE
LOWtools/coverage-html/tests/test_merge.py11CODE
LOWtools/compile-perf/breakdown.py33CODE
LOWtools/compile-perf/breakdown.py42CODE
LOWtools/compile-perf/breakdown.py42CODE
LOWtools/compile-perf/breakdown.py42CODE
LOWtools/compile-perf/breakdown.py42CODE
LOWtools/compile-perf/sweep_report.py17CODE
LOWtools/compile-perf/ladder_scaling.py16CODE
LOWtools/compile-perf/daily_movers.py25CODE
LOWtools/compile-perf/compare_repro.py15CODE
LOW…slang-review-post-github/scripts/post_github_review.py8CODE
LOW…-review-post-github/scripts/test_post_github_review.py4CODE
LOWextras/verify-user-skills-package.py4CODE
LOWextras/split-ir-dump.py25CODE
LOWextras/extract-spirv-sources.py21CODE
LOWextras/ci/analyze-ci-parallelization.py32CODE
LOWextras/ci/ci-queue-status.py26CODE
LOWextras/tests/test_verify_user_skills_package.py4CODE
TODO Padding11 hits · 16 pts
SeverityFileLineSnippetContext
LOWtools/gfx-unit-test/gfx-test-texture-util.cpp165 // TODO: Add testing support for BC formatsCOMMENT
LOWtools/slang-fiddle/slang-fiddle-template.cpp417 // TODO: implement the important stuff...COMMENT
LOWtools/gfx/immediate-renderer-base.cpp708 // TODO: implement fence signal.COMMENT
LOWtools/gfx/cuda/cuda-command-queue.cpp45 // TODO: implement fence.COMMENT
LOWsource/slang/slang-parser.cpp112// TODO: implement two pass parsing for file reference and struct type recognitionCOMMENT
LOWsource/slang/slang-compile-request.cpp848 // TODO: implement the logic to output generated documents to target directory/zip file.COMMENT
LOWsource/slang/slang-ir-legalize-types.cpp359 // TODO: implement legalization of non-simple return typesCOMMENT
LOWsource/slang/slang-ir-legalize-types.cpp455 // TODO: implement legalization of non-simple return typesCOMMENT
LOWsource/slang/slang-ir-legalize-types.cpp555 // TODO: implement legalization of non-simple return typesCOMMENT
LOWsource/slang/slang-ir-legalize-types.cpp689 // TODO: implement legalization of non-simple return typesCOMMENT
LOWsource/slang/slang-reflection-api.cpp254 // TODO: implement more helpers hereCOMMENT
Synthetic Comment Markers2 hits · 15 pts
SeverityFileLineSnippetContext
HIGHsource/slang/slang-ast-decl.h308 // we have auto-generated code for things like dumping and serializationCOMMENT
HIGHsource/slang/slang-ir-insts.h3479 // Keep the 1,2,3,4 parameter helper methods as requestedCOMMENT
Slop Phrases6 hits · 12 pts
SeverityFileLineSnippetContext
LOWsource/compiler-core/slang-spirv-core-grammar.h70 // Adding to this? Don't forget to update the embedding generatorCOMMENT
LOWsource/compiler-core/slang-perfect-hash.cpp42 // If you change this, don't forget to also sync the version below inCOMMENT
MEDIUMsource/slang/slang-ir-legalize-varying-params.cpp805 // As discussed above, sometimes `varLayout` will refer to anCOMMENT
MEDIUMsource/slang/slang-ir-synthesize-active-mask.cpp1567 // As discussed above, we only process the first `case` withCOMMENT
LOWsource/slang/slang-lower-to-ir.cpp15761 // that if we have obfuscation enabled we don't forget to obfuscate.COMMENT
LOWexternal/bump-glslang.sh234echo "Please also don't forget to push the new commits in external/glslang and"CODE
Fake / Example Data8 hits · 10 pts
SeverityFileLineSnippetContext
LOWtools/coverage-html/tests/test_renderer.py501 out_dir = os.path.join(self.tmp, "placeholder")CODE
LOW⚡tools/slang-unit-test/unit-test-crypto.cpp50 const String str("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod "CODE
LOW⚡tools/slang-unit-test/unit-test-crypto.cpp50 const String str("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod "CODE
LOW⚡tools/slang-unit-test/unit-test-crypto.cpp60 const String str1("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod "CODE
LOW⚡tools/slang-unit-test/unit-test-crypto.cpp60 const String str1("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod "CODE
LOWtools/slang-unit-test/unit-test-crypto.cpp74 const String str("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod "CODE
LOWtools/slang-unit-test/unit-test-crypto.cpp74 const String str("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod "CODE
LOWtests/spvdb/tests/unit/test_module.cpp38 SUCCEED("placeholder");CODE
Example Usage Blocks6 hits · 8 pts
SeverityFileLineSnippetContext
LOWexamples/shader-coverage-tutorial/run-tutorial.sh11# Usage:COMMENT
LOWextras/falcor.sh38# Usage:COMMENT
LOWextras/compile-sascha-willems-shaders.sh11# Usage:COMMENT
LOWextras/repro-remix.sh10# Usage:COMMENT
LOWextras/scaler/deploy/update-scaler.sh6# Usage:COMMENT
LOWextras/scaler/deploy/setup-scaler-host.sh12# Usage:COMMENT
AI Response Leakage1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHdocs/user-guide/06-interfaces-generics.md21Slang's syntax for defining interfaces is similar to `interface`s in C# and `protocol`s in Swift. In this example, the `CODE
AI Structural Patterns1 hit · 0 pts
SeverityFileLineSnippetContext
LOW…-review-post-github/scripts/test_post_github_review.py23CODE