A small, fast, and embeddable programming language based on Lua with a gradual type system.
This report summarizes scanner evidence for luau-lang/luau, a C++ project with 6,047 GitHub stars. SynthScan examined 504,084 lines of code across 846 source files, recording 722 pattern matches distributed across 13 syntactic categories. The legacy adjusted pattern signal is 1.8 (Low 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.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 642 finding(s).
Are imports declared and package/API names verified? 48 finding(s).
Are wrappers, guards, and repeated structures necessary? 139 finding(s).
Which changes need focused human review? 722 finding(s).
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.
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.
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.
The scanner identified 722 distinct pattern matches across 13 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.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/flag-bisect.py | 381 | is_pass_hot, is_fail_hot = await all_tasks | COMMENT |
| LOW | tools/lldb_formatters.py | 801 | return f.GetSummary() | COMMENT |
| LOW | tools/stack-usage-reporter.py | 1 | #!/usr/bin/python3 | COMMENT |
| LOW | Analysis/include/Luau/Type.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/ConstraintSolver.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/Error.h | 581 | bool operator==(const TypeInstantiationCountMismatch&) const; | COMMENT |
| LOW | Analysis/include/Luau/JsonEmitter.h | 21 | COMMENT | |
| LOW | Analysis/include/Luau/JsonEmitter.h | 41 | COMMENT | |
| LOW | Analysis/include/Luau/JsonEmitter.h | 61 | COMMENT | |
| LOW | Analysis/include/Luau/JsonEmitter.h | 101 | COMMENT | |
| LOW | Analysis/include/Luau/TypePath.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/TypePath.h | 121 | bool operator==(const GenericPackMapping& other) const; | COMMENT |
| LOW | Analysis/include/Luau/TypePath.h | 161 | /// Creates a new Path by appending another Path to this one. | COMMENT |
| LOW | Analysis/include/Luau/TypePath.h | 301 | /// @param arena a TypeArena, required if path has a PackSlice component | COMMENT |
| LOW | Analysis/include/Luau/ConstraintGenerator.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/TypeFwd.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/Substitution.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/Substitution.h | 21 | // TypeId clean(TypeId ty) override { ... } | COMMENT |
| LOW | Analysis/include/Luau/Substitution.h | 41 | // If X is dirty, and is being replaced by X' then the result should be: | COMMENT |
| LOW | Analysis/include/Luau/TypePack.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/TypeFunctionRuntime.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/Normalize.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/Normalize.h | 181 | // Resource limits were hit, invalidating all normalized types. | COMMENT |
| LOW | Analysis/include/Luau/OverloadResolver.h | 21 | COMMENT | |
| LOW | Analysis/include/Luau/Unifier2.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/TxnLog.h | 101 | COMMENT | |
| LOW | Analysis/include/Luau/TxnLog.h | 141 | PendingTypePack* queue(TypePackId tp); | COMMENT |
| LOW | Analysis/include/Luau/TxnLog.h | 161 | // The pointer returned lives until `commit` or `clear` is called. | COMMENT |
| LOW | Analysis/include/Luau/TxnLog.h | 181 | // Queues a replacement of a type pack with a level with a duplicate of that | COMMENT |
| LOW | Analysis/include/Luau/Frontend.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/ExpectedTypeVisitor.h | 21 | NotNull<BuiltinTypes> builtinTypes, | COMMENT |
| LOW | Analysis/include/Luau/ExpectedTypeVisitor.h | 41 | COMMENT | |
| LOW | Analysis/include/Luau/Constraint.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/Constraint.h | 121 | { | COMMENT |
| LOW | Analysis/include/Luau/Constraint.h | 141 | struct HasPropConstraint | COMMENT |
| LOW | Analysis/include/Luau/Constraint.h | 161 | // For example, in the following code fragment, we want the lookup of the | COMMENT |
| LOW | Analysis/include/Luau/TypeFunction.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/TypeFunction.h | 101 | { | COMMENT |
| LOW | Analysis/include/Luau/ControlFlowGraph.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/TypeChecker2.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/TypeStateMap.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/DcrLogger.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/DataFlowGraph.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/TypeInfer.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/Unifier.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/Subtyping.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/Module.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/Scope.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/include/Luau/TypeFunctionReductionGuesser.h | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/src/TypeFunctionRuntimeBuilder.cpp | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/src/Subtyping.cpp | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/src/Subtyping.cpp | 2101 | // This is an unfortunately complicated state machine. Consider something like: | COMMENT |
| LOW | Analysis/src/Subtyping.cpp | 2301 | // local ItemContainer = {} | COMMENT |
| LOW | Analysis/src/Subtyping.cpp | 2321 | // `container.removeItem`. `container` has a metatable with the | COMMENT |
| LOW | Analysis/src/Subtyping.cpp | 2421 | // not, claim this isn't a subtype. For example: | COMMENT |
| LOW | Analysis/src/AutocompleteCore.cpp | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/src/TypeFunctionRuntime.cpp | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/src/Unifier.cpp | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/src/TableLiteralInference.cpp | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| LOW | Analysis/src/Frontend.cpp | 1 | // This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| 415 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | tools/svg.py | 147 | if (e.attributes["_orig_" + attr] != undefined) return; | CODE |
| HIGH⚡ | tools/svg.py | 148 | if (e.attributes[attr] == undefined) return; | CODE |
| HIGH⚡ | tools/svg.py | 149 | if (val == undefined) val = e.attributes[attr].value; | CODE |
| HIGH⚡ | tools/svg.py | 153 | if (e.attributes["_orig_"+attr] == undefined) return; | CODE |
| HIGH⚡ | tools/svg.py | 163 | return child ? child.textContent : null; | CODE |
| HIGH⚡ | tools/svg.py | 194 | if (e.attributes != undefined) { | CODE |
| HIGH⚡ | tools/svg.py | 198 | if (e.childNodes == undefined) return; | CODE |
| HIGH⚡ | tools/svg.py | 204 | if (e.attributes != undefined) { | CODE |
| HIGH⚡ | tools/svg.py | 205 | if (e.attributes.x != undefined) { | CODE |
| HIGH⚡ | tools/svg.py | 211 | if (e.attributes.width != undefined) { | CODE |
| HIGH⚡ | tools/svg.py | 217 | if (e.childNodes == undefined) return; | CODE |
| HIGH⚡ | tools/svg.py | 224 | if (e.attributes.x != undefined) { | CODE |
| HIGH⚡ | tools/svg.py | 228 | if (e.attributes.width != undefined) { | CODE |
| HIGH⚡ | tools/svg.py | 233 | if (e.childNodes == undefined) return; | CODE |
| HIGH⚡ | tools/svg.py | 324 | if (term != null) { | CODE |
| HIGH⚡ | tools/svg.py | 331 | currentSearchTerm = null; | CODE |
| HIGH⚡ | tools/svg.py | 339 | if (currentSearchTerm === null) return; | CODE |
| HIGH | tools/svg.py | 87 | currentSearchTerm = null; | CODE |
| HIGH | tools/svg.py | 120 | if (e.keyCode === 114 || (e.ctrlKey && e.keyCode === 70)) { | CODE |
| HIGH | tools/svg.py | 128 | if (e.ctrlKey && e.keyCode === 73) { | CODE |
| HIGH | tools/svg.py | 278 | if (ex < xmin || ex + fudge >= xmax) { | CODE |
| HIGH | tools/svg.py | 350 | if (func == null || rect == null) | CODE |
| HIGH | tools/svg.py | 350 | if (func == null || rect == null) | CODE |
| HIGH | tools/svg.py | 365 | if (matches[x] == undefined) { | CODE |
| HIGH | tools/svg.py | 389 | keys.push(k); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bench/tabulate.py | 19 | def _convert_field_dict_to_ordered_list(self, fields:Dict[str, object]): | CODE |
| LOW | bench/tabulate.py | 45 | def _print_horizontal_separator(self): | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 334 | local function bodyGetTransformedVertices(body) | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 346 | local function bodyGetTransformedNormals(body) | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 531 | local function findPolygonPolygonContacts(bodyA, bodyB) | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 722 | local function findCirclePolygonContacts(circleBody, polyBody) | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 2378 | function createWreckingBallScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 2722 | function createRubeGoldbergScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 2931 | function createBreakableChainScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 3025 | function createRaycastTestScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 3163 | function createParticleRopeScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 3193 | function createParticleClothScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 3467 | function createLargePyramidScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 3672 | function createElasticChainScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 3744 | function createMaterialTestScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 3834 | function createComplexPolygonScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 4399 | function createDetailedVehicleScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 4658 | function createSpringLatticeScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 4771 | function createWreckingYardScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 4982 | function createRollerCoasterScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 5031 | function createDestructionDerbyScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 5095 | function createAssemblyLineScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 5160 | function createSuspensionBridgeScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 5285 | function createObstacleCourseScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 5448 | function createHillTerrainScenario() | CODE |
| LOW | bench/tests/vibemark67/physics.lua | 5479 | function createStepTerrainScenario() | CODE |
| LOW | bench/tests/zefbench/air.lua | 2125 | function createPayloadGbemuExecuteIteration() | CODE |
| LOW | bench/tests/zefbench/air.lua | 5109 | function createPayloadImagingGaussianBlurGaussianBlur() | CODE |
| LOW | bench/tests/zefbench/air.lua | 8129 | function createPayloadTypescriptScanIdentifier() | CODE |
| LOW | bench/tests/zefbench/basic.lua | 818 | local function parseRelationalExpression() | CODE |
| LOW | tools/flag-bisect.py | 41 | def get_paragraphs_and_indent(string): | CODE |
| LOW⚡ | tools/lldb_formatters.py | 8 | def read_non_cstring_from_data(data): | CODE |
| LOW⚡ | tools/lldb_formatters.py | 15 | def create_quoted_escaped_c_str(s): | CODE |
| LOW | tools/lldb_formatters.py | 391 | def luau_typepath_property_summary(valobj, internal_dict): | CODE |
| LOW | tools/lldb_formatters.py | 589 | def convert_ptr_size_to_array(name, ptr, num_elem): | CODE |
| LOW | tools/lldb_formatters.py | 601 | def read_from_pointer_to_array(ptr, index): | CODE |
| LOW | tools/golden/discovery.py | 109 | def _normalize_test_selectors( | CODE |
| LOW⚡ | tools/golden/selftest.py | 128 | def test_regex_allows_comma_escaped_slash_and_inline_flags(self) -> None: | CODE |
| LOW⚡ | tools/golden/selftest.py | 137 | def test_repeated_regexes_are_preserved(self) -> None: | CODE |
| LOW⚡ | tools/golden/selftest.py | 144 | def test_fflags_preserve_luau_cli_format(self) -> None: | CODE |
| LOW⚡ | tools/golden/selftest.py | 150 | def test_rejects_invalid_directives(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 101 | def test_bare_directive_has_no_status(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 107 | def test_status_precedence_and_regex_scoping(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 165 | def test_rejects_duplicate_fflags(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 172 | def test_rejects_malformed_directive_markers(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 183 | def test_status_is_optional_with_exact_output_for_each_configuration(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 198 | def test_directiveless_standalone_without_output_errors(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 205 | def test_targeted_update_bootstraps_directiveless_test(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 220 | def test_targeted_update_does_not_hide_other_incomplete_tests(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 235 | def test_unknown_selector_precedes_incomplete_test_validation(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 244 | def test_targeted_update_must_cover_every_incomplete_configuration(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 258 | def test_rejects_root_level_init(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 267 | def test_discovers_single_and_multifile_tests(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 289 | def test_selects_test_groups_transitively(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 314 | def test_normalizes_source_file_paths(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 331 | def test_multifile_helper_paths_select_the_owning_test(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 350 | def test_rejects_explicit_paths_outside_the_test_root(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 361 | def test_rejects_non_source_files_inside_multifile_tests(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 371 | def test_rejects_misplaced_directive_and_absorbs_nested_init(self) -> None: | CODE |
| LOW | tools/golden/selftest.py | 388 | def test_rejects_duplicate_ids_orphan_exact_and_regex_conflict(self) -> None: | CODE |
| 46 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | bench/color.py | 1 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | bench/tabulate.py | 1 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | bench/bench.py | 3 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | bench/influxbench.py | 1 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | bench/measure_time.py | 1 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/heuristicstat.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/gdb_printers.py | 1 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/patchtests.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/codesizeprediction.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/heapgraph.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/heapstat.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/numprint.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/flag-bisect.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/perfgraph.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/heapsnapshot.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/svg.py | 1 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/codegenstat.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/test_dcr.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM⚡ | tools/lldb_formatters.py | 1 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/stack-usage-reporter.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/tracegraph.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/perfstat.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/fuzz/fuzzer-postprocess.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| MEDIUM | tools/fuzz/fuzzfilter.py | 2 | # This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bench/influxbench.py | 48 | except Exception as e: | CODE |
| MEDIUM | bench/measure_time.py | 23 | print("Error: Cycles to run argument must be an integer. Using default value of {}".format(DEFAULT_CYCLES_TO_RUN)) | CODE |
| MEDIUM | tools/lldb_formatters.py | 441 | print("Error initializing type map:", e) | CODE |
| MEDIUM | tools/lldb_formatters.py | 25 | def wrapper(valobj, internal_dict): | CODE |
| MEDIUM | tools/lldb_formatters.py | 89 | def get_child_index(self, name): | CODE |
| MEDIUM | tools/lldb_formatters.py | 214 | def get_child_index(self, name): | CODE |
| MEDIUM | tools/lldb_formatters.py | 224 | def get_child_at_index(self, index): | CODE |
| MEDIUM | tools/lldb_formatters.py | 260 | def update(self): | CODE |
| MEDIUM | tools/lldb_formatters.py | 286 | def get_child_index(self, name): | CODE |
| MEDIUM | tools/lldb_formatters.py | 296 | def get_child_at_index(self, index): | CODE |
| MEDIUM | tools/lldb_formatters.py | 331 | def update(self): | CODE |
| MEDIUM | tools/lldb_formatters.py | 364 | def get_child_index(self, name): | CODE |
| MEDIUM | tools/lldb_formatters.py | 373 | def get_child_at_index(self, index): | CODE |
| LOW | tools/lldb_formatters.py | 28 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 169 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 186 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 220 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 257 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 266 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 292 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 328 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 337 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 370 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 380 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 401 | except Exception as e: | CODE |
| LOW | tools/lldb_formatters.py | 440 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | bench/bench.py | 431 | except: | CODE |
| HIGH | bench/bench.py | 1201 | except ImportError: | CODE |
| HIGH | bench/bench.py | 229 | except (IndexError, ValueError): | CODE |
| HIGH | bench/bench.py | 167 | except: | CODE |
| HIGH | bench/bench.py | 190 | except: | CODE |
| HIGH | bench/measure_time.py | 19 | except IndexError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | bench/tests/vibemark67/xz.lua | 1847 | local nBodyC = "/* The Computer Language Benchmarks Game\n * https://salsa.debian.org/benchmarksgame-team/benchmarksgame | CODE |
| MEDIUM | bench/tests/vibemark67/xz.lua | 1847 | local nBodyC = "/* The Computer Language Benchmarks Game\n * https://salsa.debian.org/benchmarksgame-team/benchmarksgame | CODE |
| MEDIUM | tools/flag-bisect.py | 389 | # However, this can be ambiguous in the opposite of the aforementioned outcome! | STRING |
| MEDIUM | tools/golden/selftest.py | 802 | # A harness failure captured nothing worth dumping. | COMMENT |
| MEDIUM | tests/TypeInfer.aliases.test.cpp | 68 | // Essentially we've "stolen" the alias's type out from under it. | COMMENT |
| MEDIUM | tests/TypeInfer.tables.test.cpp | 206 | // TODO: better, more robust comparison of type vars | COMMENT |
| MEDIUM | CodeGen/src/IrLoweringX64.cpp | 65 | // We might introduce explicit operand types in the future to make this more robust | COMMENT |
| MEDIUM | CodeGen/src/IrLoweringX64.cpp | 79 | // We might introduce explicit operand types in the future to make this more robust | COMMENT |
| MEDIUM | Common/include/Luau/DenseHash.h | 453 | // We can leverage the structure of the bitvector here to skip contiguous chunks of empty elements | COMMENT |
| MEDIUM | VM/src/ldebug.cpp | 433 | // this can be changed, but if requires making patching a bit more nuanced so that we don't patch AUX words | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bench/bench.py | 108 | CODE | |
| LOW | bench/bench.py | 151 | CODE | |
| LOW | bench/bench.py | 424 | CODE | |
| LOW | bench/bench.py | 471 | CODE | |
| LOW | bench/bench.py | 631 | CODE | |
| LOW | bench/bench.py | 991 | CODE | |
| LOW | tools/flag-bisect.py | 38 | CODE | |
| LOW | tools/flag-bisect.py | 261 | CODE | |
| LOW | tools/flag-bisect.py | 41 | CODE | |
| LOW | tools/heapsnapshot.py | 62 | CODE | |
| LOW | tools/test_dcr.py | 56 | CODE | |
| LOW | tools/lldb_formatters.py | 32 | CODE | |
| LOW | tools/lldb_formatters.py | 423 | CODE | |
| LOW | tools/lldb_formatters.py | 452 | CODE | |
| LOW | tools/lldb_formatters.py | 95 | CODE | |
| LOW | tools/stack-usage-reporter.py | 131 | CODE | |
| LOW | tools/golden/directives.py | 17 | CODE | |
| LOW | tools/golden/directives.py | 179 | CODE | |
| LOW | tools/golden/cli.py | 61 | CODE | |
| LOW | tools/golden/executables.py | 79 | CODE | |
| LOW | tools/golden/text.py | 60 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bench/bench.py | 25 | CODE | |
| LOW | bench/influxbench.py | 4 | CODE | |
| LOW | bench/measure_time.py | 5 | CODE | |
| LOW | tools/heuristicstat.py | 9 | CODE | |
| LOW | tools/stackdbg.py | 29 | CODE | |
| LOW | tools/heapgraph.py | 12 | CODE | |
| LOW | tools/heapstat.py | 9 | CODE | |
| LOW | tools/flag-bisect.py | 7 | CODE | |
| LOW | tools/golden/execution.py | 3 | CODE | |
| LOW | tools/golden/suite.py | 3 | CODE | |
| LOW | tools/golden/models.py | 3 | CODE | |
| LOW | tools/golden/discovery.py | 3 | CODE | |
| LOW | tools/golden/selftest.py | 4 | CODE | |
| LOW | tools/golden/directives.py | 3 | CODE | |
| LOW | tools/golden/cli.py | 3 | CODE | |
| LOW | tools/golden/expectations.py | 3 | CODE | |
| LOW | tools/golden/executables.py | 3 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bench/tests/vibemark67/typeset.lua | 3644 | sample_texts[1] = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore e | CODE |
| LOW | bench/tests/vibemark67/typeset.lua | 3644 | sample_texts[1] = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore e | CODE |
| LOW | bench/tests/vibemark67/regex.lua | 940 | tests[#tests+1] = {pattern="(\\d\\d\\d)-(\\d\\d\\d\\d)", text="555-1234", shouldMatch=true, captures={"555","1234"}} | CODE |
| LOW | bench/tests/vibemark67/regex.lua | 1035 | tests[#tests+1] = {pattern="[a-z]+@[a-z]+\\.[a-z]+", text="user@example.com", shouldMatch=true, captures={}} | CODE |
| LOW | bench/tests/vibemark67/http.lua | 2722 | { body = '{"email":"test@test.com"}', headers = create_headers(), query = {} }, | CODE |
| LOW | tests/Parser.test.cpp | 3895 | local player = PlayerStats("John Doe") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | VM/src/lgc.cpp | 1302 | // don't forget to visit main thread, it's the only object not allocated in GCO pages | COMMENT |
| LOW | VM/src/lgc.cpp | 1339 | // don't forget to visit main thread, it's the only object not allocated in GCO pages | COMMENT |
| LOW | Compiler/include/Luau/Compiler.h | 28 | // Note: this structure is duplicated in luacode.h, don't forget to change these in sync! | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Analysis/src/TypeFunctionReductionGuesser.cpp | 272 | // If ty is a generic, we need to check if we inferred a substitution | COMMENT |
| LOW | Analysis/src/TypeChecker2.cpp | 4462 | // We need to check if the type of the index expression foo (x[foo]) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/lldb_formatters.py | 587 | CODE |