Repository Analysis

facebook/pyrefly

A fast type checker and language server for Python

7.5 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of facebook/pyrefly, a Rust project with 6,911 GitHub stars. SynthScan v2.0 examined 635,730 lines of code across 1816 source files, recording 2917 pattern matches distributed across 24 syntactic categories. The overall adjusted score of 7.5 places this repository in the Low AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

7.5
Adjusted Score
7.5
Raw Score
100%
Time Factor
2026-08-29
Last Push
6.9K
Stars
Rust
Language
635.7K
Lines of Code
1.8K
Files
2.9K
Pattern Hits
2026-08-29
Scan Date
0.05
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 1HIGH 87MEDIUM 734LOW 2095

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 2917 distinct pattern matches across 24 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Decorative Section Separators677 hits · 2066 pts
SeverityFileLineSnippetContext
MEDIUMpyrefly/lib/test/shape_dsl.rs6763// ── Recursion-safety tests ────────────────────────────────────────────────────COMMENT
MEDIUM…apes/pyrefly-torch-stubs/test/test_nn_module_proper.py21# ============================================================================COMMENT
MEDIUM…apes/pyrefly-torch-stubs/test/test_nn_module_proper.py23# ============================================================================COMMENT
MEDIUM…apes/pyrefly-torch-stubs/test/test_nn_module_proper.py64# ============================================================================COMMENT
MEDIUM…apes/pyrefly-torch-stubs/test/test_nn_module_proper.py66# ============================================================================COMMENT
MEDIUM…apes/pyrefly-torch-stubs/test/test_nn_module_proper.py113# ============================================================================COMMENT
MEDIUM…apes/pyrefly-torch-stubs/test/test_nn_module_proper.py115# ============================================================================COMMENT
MEDIUM…apes/pyrefly-torch-stubs/test/test_nn_module_proper.py145# ============================================================================COMMENT
MEDIUM…apes/pyrefly-torch-stubs/test/test_nn_module_proper.py147# ============================================================================COMMENT
MEDIUM…apes/pyrefly-torch-stubs/test/test_nn_module_proper.py183# ============================================================================COMMENT
MEDIUM…apes/pyrefly-torch-stubs/test/test_nn_module_proper.py185# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py170# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py172# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py203# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py205# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py30# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py32# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py65# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py67# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py102# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py104# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py137# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py139# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py238# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py240# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py270# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py272# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py300# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py302# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py331# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py333# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py363# ============================================================================COMMENT
MEDIUM…sor-shapes/pyrefly-torch-stubs/test/test_nn_modules.py365# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_overload_narrowing.py21# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_overload_narrowing.py23# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_overload_narrowing.py47# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_overload_narrowing.py49# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py21# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py23# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py56# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py58# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py87# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py89# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py132# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py134# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py179# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py181# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py236# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py238# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py274# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py276# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py310# ============================================================================COMMENT
MEDIUM…es/pyrefly-torch-stubs/test/test_parameters_buffers.py312# ============================================================================COMMENT
MEDIUM…pyrefly-torch-stubs/test/test_sequential_modulelist.py23# ============================================================================COMMENT
MEDIUM…pyrefly-torch-stubs/test/test_sequential_modulelist.py25# ============================================================================COMMENT
MEDIUM…pyrefly-torch-stubs/test/test_sequential_modulelist.py50# ============================================================================COMMENT
MEDIUM…pyrefly-torch-stubs/test/test_sequential_modulelist.py52# ============================================================================COMMENT
MEDIUM…pyrefly-torch-stubs/test/test_sequential_modulelist.py71# ============================================================================COMMENT
MEDIUM…pyrefly-torch-stubs/test/test_sequential_modulelist.py73# ============================================================================COMMENT
MEDIUM…pyrefly-torch-stubs/test/test_sequential_modulelist.py150# ============================================================================COMMENT
617 more matches not shown…
Hyper-Verbose Identifiers927 hits · 919 pts
SeverityFileLineSnippetContext
LOWpyrefly/lib/test/typing_self.rs270def person_create_with_name_trampoline(cls, *args, **kwargs):CODE
LOWpyrefly/lib/test/typing_self.rs277def person_create_with_name_orig(cls, name: str) -> Self: # E: `Self` must appear within a classCODE
LOWpyrefly/lib/test/yields.rs205async def async_coroutine_of_async_generator() -> AsyncGenerator[int, None]:CODE
LOWpyrefly/lib/test/yields.rs571def generator_with_only_yield_from() -> Iterator[int]:CODE
LOWpyrefly/lib/test/returns.rs789def uninitialized_local_logic(value: int | str | float) -> str:CODE
LOWpyrefly/lib/test/shape_dsl.rs2322def defaulted_helper_mismatch(n: Int, k: int) -> Int:CODE
LOWpyrefly/lib/test/shape_dsl.rs2331def inconsistent_helper_branches(n: Int, k: int, first: bool) -> Int:CODE
LOWpyrefly/lib/test/shape_dsl.rs2338def conflicting_branch_return_dimension_first(CODE
LOWpyrefly/lib/test/shape_dsl.rs2923def subtract_overflow_reversed() -> Tensor[[flag_subtract(9223372036854775807, -1)]]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs2925def multiply_overflow_reversed() -> Tensor[[flag_multiply(2, 9223372036854775807)]]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs2927def modulo_min_by_negative_one() -> Tensor[[flag_modulo(-9223372036854775808, -1)]]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs7732def check_overflow_floor_divide(x: Tensor[[2, 3]]) -> Tensor[overflow_floor_divide(IntTuple[2, 3])]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs7733def check_overflow_negative_literal(x: Tensor[[2, 3]]) -> Tensor[overflow_negative_literal(IntTuple[2, 3])]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs7736def check_invalid_right_operand(x: Tensor[[2, 3]]) -> Tensor[invalid_right_operand_after_overflow(IntTuple[2, 3])]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs7737def check_unknown_modulo_zero(x: Tensor[[2, 3]]) -> Tensor[unknown_modulo_zero(IntTuple[2, 3], int)]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs7743def check_unknown_before_invalid(x: Tensor[[2, 3]]) -> Tensor[unknown_before_invalid(IntTuple[2, 3], int)]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs7744def check_known_before_invalid(x: Tensor[[2, 3]]) -> Tensor[known_before_invalid(IntTuple[2, 3])]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs7745def check_invalid_before_unknown(x: Tensor[[2, 3]]) -> Tensor[invalid_before_unknown(IntTuple[2, 3], int)]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs7746def check_false_before_invalid(x: Tensor[[2, 3]]) -> Tensor[false_before_invalid(IntTuple[2, 3], IntTuple[1])]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs9413def narrowed_optional_to_required(shape: IntTuple, mode: str | None) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs9419def narrowed_value_to_optional(shape: IntTuple, mode: str | None) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs9425def inferred_optional_to_required(CODE
LOWpyrefly/lib/test/shape_dsl.rs1237def explicit_class_non_shape_arg(bad: Box[list[int]]) -> None: # E: Tensor shape dimensions must be positive integer liCODE
LOWpyrefly/lib/test/shape_dsl.rs1335def nested_concrete_tuple_carrier(CODE
LOWpyrefly/lib/test/shape_dsl.rs1340def nested_unbounded_tuple_carrier(CODE
LOWpyrefly/lib/test/shape_dsl.rs1387def shapeful_unbounded_middle(CODE
LOWpyrefly/lib/test/shape_dsl.rs1985def same_spelling_is_not_intrinsic(x: Int) -> Int:CODE
LOWpyrefly/lib/test/shape_dsl.rs2058def not_equal_concrete_different() -> Tensor[[choose_not_equal(Int[2], Int[3], Int[7], Int[8])]]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs2149def positive_unrepresentable_threshold() -> Tensor[[above_maximum_threshold(Int[3], 0)]]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs2150def negative_unrepresentable_threshold() -> Tensor[[below_minimum_threshold(Int[3], 0)]]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs2350def conflicting_branch_return_flag_first(CODE
LOWpyrefly/lib/test/shape_dsl.rs2362def conflicting_branch_int_helper_dimension_first(CODE
LOWpyrefly/lib/test/shape_dsl.rs2374def conflicting_branch_int_helper_flag_first(CODE
LOWpyrefly/lib/test/shape_dsl.rs2386def conflicting_branch_flag_helper_dimension_first(CODE
LOWpyrefly/lib/test/shape_dsl.rs2398def conflicting_branch_flag_helper_flag_first(CODE
LOWpyrefly/lib/test/shape_dsl.rs2682def resolved_dimension_branches(CODE
LOWpyrefly/lib/test/shape_dsl.rs2706def inherited_dimension_branch(CODE
LOWpyrefly/lib/test/shape_dsl.rs2737def boundary_reverse_subtract(n: Int) -> Int:CODE
LOWpyrefly/lib/test/shape_dsl.rs2799def call_chained_local_helper(n: Int, k: int, offset: int) -> Int:CODE
LOWpyrefly/lib/test/shape_dsl.rs3454def takes_legacy_literal_pair(x: tuple[Literal[2], Literal[3]]) -> None: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs6024def check_nontrivial_shape_syntax(CODE
LOWpyrefly/lib/test/shape_dsl.rs7208def incompatible_branch_alias(left: Int, right: IntTuple, choose: int) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs7252def indexed_dimension_compare(CODE
LOWpyrefly/lib/test/shape_dsl.rs7646def overflow_negative_literal(shape: IntTuple) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs7651def exact_min_modulo_negative_one(shape: IntTuple) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs7665def invalid_right_operand_after_overflow(shape: IntTuple) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs7857def unknown_then_out_of_bounds(unknown: Int, shape: IntTuple) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs8002def optional_bool_to_required(shape: IntTuple, keep: bool | None) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs8266def compare_optional_not_equal(CODE
LOWpyrefly/lib/test/shape_dsl.rs8300def narrowed_none_literal_comparisons(shape: IntTuple, mode: str | None) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs8646def truncated_partial_unknown(shape: IntTuple) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs8693def zipped_empty_later_invalid(shape: IntTuple, divisor: int) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs8701def zipped_empty_skips_iteration(shape: IntTuple, divisor: int) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs8728def zipped_flag_and_fixed_shape(shape: IntTuple) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs8994def apply_beyond_budget_error() -> Tensor[beyond_budget_error(IntTuple[2])]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs9081def unknown_filter_guards_error(shape: IntTuple, axis: int) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs9127def budget_after_possible_error(shape: IntTuple, axis: int) -> IntTuple:CODE
LOWpyrefly/lib/test/shape_dsl.rs9152def broad_nested_guarded_error() -> Tensor[nested_guarded_error(IntTuple[2, 3], int)]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs9461def apply_narrowed_optional_to_required() -> Tensor[narrowed_optional_to_required(IntTuple[2, 3], "keep")]: ...CODE
LOWpyrefly/lib/test/shape_dsl.rs9462def apply_narrowed_value_to_optional() -> Tensor[narrowed_value_to_optional(IntTuple[2, 3], "keep")]: ...CODE
867 more matches not shown…
Over-Commented Block542 hits · 530 pts
SeverityFileLineSnippetContext
LOWpyrefly/bin/main.rs21// fbcode likes to set its own allocator in fbcode.default_allocatorCOMMENT
LOWpyrefly/lib/lib.rs1/*COMMENT
LOWpyrefly/lib/query.rs201/// already carries a value-shape property.COMMENT
LOWpyrefly/lib/test/yields.rs181"#,COMMENT
LOWpyrefly/lib/test/contextual.rs941// *narrowest* one. Previously `get_new_bound`'s absorb logic kept the widerCOMMENT
LOWpyrefly/lib/test/natural.rs1/*COMMENT
LOWpyrefly/lib/test/perf.rs141COMMENT
LOWpyrefly/lib/test/perf.rs241// 2. `A <: P1` inserts InProgress(A, P1). Method `foo` return type: `ATD <: TD1`.COMMENT
LOWpyrefly/lib/test/incremental.rs1041 );COMMENT
LOWpyrefly/lib/test/incremental.rs1101COMMENT
LOWpyrefly/lib/test/incremental.rs1161}COMMENT
LOWpyrefly/lib/test/incremental.rs1201///COMMENT
LOWpyrefly/lib/test/incremental.rs2241COMMENT
LOWpyrefly/lib/test/state.rs1241/// `TypeAliasRef` and the current module's config cannot find the defining module.COMMENT
LOWpyrefly/lib/test/descriptors.rs421T = TypeVar("T", bound=SelfCallable)COMMENT
LOWpyrefly/lib/test/class_subtyping.rs241 r#"COMMENT
LOWpyrefly/lib/test/attrs/third-party/attr/_compat.py81# This is needed because there is no other (thread-safe) way to pass infoCOMMENT
LOW…refly/lib/test/tsp/tsp_interaction/get_type_queries.rs1461// `get_type_at` path coerces callees (substitutes the chosen-overload traceCOMMENT
LOW…refly/lib/test/tsp/tsp_interaction/get_type_queries.rs1601 uri,COMMENT
LOW…refly/lib/test/tsp/tsp_interaction/get_type_queries.rs1861//COMMENT
LOWpyrefly/lib/test/lsp/code_actions.rs681## Before:COMMENT
LOWpyrefly/lib/test/lsp/code_actions.rs761# Title: Insert import: `from _io import BytesIO`COMMENT
LOWpyrefly/lib/test/lsp/code_actions.rs861# ^COMMENT
LOWpyrefly/lib/test/lsp/code_actions.rs981## Before:COMMENT
LOWpyrefly/lib/test/lsp/code_actions.rs1001# ^COMMENT
LOWpyrefly/lib/test/lsp/code_actions.rs1921# ^COMMENT
LOWpyrefly/lib/test/lsp/document_symbols.rs1821 get_batched_lsp_operations_report_no_cursor(&[("main", code)], get_combined_report);COMMENT
LOW…ly/lib/test/lsp/lsp_interaction/open_file_benchmark.rs1/*COMMENT
LOWpyrefly/lib/test/lsp/lsp_interaction/configuration.rs761 interaction.shutdown().expect("Failed to shutdown");COMMENT
LOW…/lib/test/lsp/lsp_interaction/workspace_diagnostics.rs161 return Some(Ok(()));COMMENT
LOWpyrefly/lib/test/lsp/lsp_interaction/definition.rs801 interaction.shutdown().unwrap();COMMENT
LOW…b/test/lsp/lsp_interaction/test_files/syntax_errors.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…p/lsp_interaction/test_files/no_config_syntax_error.py1# @nolintCOMMENT
LOW…/lsp_interaction/test_files/unused_ignore_no_config.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…lib/test/lsp/lsp_interaction/test_files/type_errors.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…b/test/lsp/lsp_interaction/test_files/text_document.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOWpyrefly/lib/test/lsp/lsp_interaction/test_files/utf.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…interaction/test_files/unused_type_ignore_no_config.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…es/diagnostics_file_in_excludes/type_errors_exclude.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…es/diagnostics_file_in_excludes/type_errors_include.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…on/test_files/imports_builtins/site-packages/typing.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…_party/lib/python3.12/site-packages/third_party_lib.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…n/test_files/safe_delete_file_relative/pkg/__init__.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…on/test_files/package_from_import_noop/pkg/__init__.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…eraction/test_files/baseline_unused_type_ignore/bad.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…eraction/test_files/deep_submodule_chain/a/__init__.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…action/test_files/deep_submodule_chain/a/b/__init__.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…_interpreter_config/bin/site-packages/custom_module.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…iles/filtering_stdlib_errors_with_default/pyrefly.toml1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…_errors_with_default/usr/lib/python3.12/stdlib_file.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…sp_interaction/test_files/duplicate_export_test/foo.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…p_interaction/test_files/unused_type_ignore/example.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…bad_interpreter_bin/bin/site-packages/custom_module.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…eraction/test_files/submodule_access/torch/__init__.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…p_interaction/test_files/untyped_import_django/test.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…untyped_import_django/site_packages/django/__init__.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…action/test_files/prefer_pyi_when_missing_in_py/foo.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…ction/test_files/autoimport_reexport_test/pyrefly.toml1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…interaction/test_files/autoimport_reexport_test/foo.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
LOW…est_files/autoimport_reexport_test/example/__init__.py1# Copyright (c) Meta Platforms, Inc. and affiliates.COMMENT
482 more matches not shown…
Cross-File Repetition59 hits · 295 pts
SeverityFileLineSnippetContext
HIGH…sor-shapes/pyrefly-torch-stubs/test/test_modulelist.py0transformer block with self-attention and mlp. generic over embedding dim, num heads, and block size.STRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0transformer block with self-attention and mlp. generic over embedding dim, num heads, and block size.STRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0transformer block with self-attention and mlp. generic over embedding dim, num heads, and block size.STRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0transformer block with self-attention and mlp. generic over embedding dim, num heads, and block size.STRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0transformer block with self-attention and mlp. generic over embedding dim, num heads, and block size.STRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0transformer block with self-attention and mlp. generic over embedding dim, num heads, and block size.STRING
HIGH…s/pyrefly-torch-stubs/test/test_symbolic_dimensions.py0identity function with symbolic dimension - preserves shapeSTRING
HIGH…ubs/test/negative_tests/test_check_symbolic_binding.py0identity function with symbolic dimension - preserves shapeSTRING
HIGH…s/test/negative_tests/test_typevar_substitution_bug.py0identity function with symbolic dimension - preserves shapeSTRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0layernorm but with an optional bias. generic over normalized dimension size.STRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0layernorm but with an optional bias. generic over normalized dimension size.STRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0layernorm but with an optional bias. generic over normalized dimension size.STRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0layernorm but with an optional bias. generic over normalized dimension size.STRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0layernorm but with an optional bias. generic over normalized dimension size.STRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0configuration for gpt model, generic over key dimensionsSTRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0configuration for gpt model, generic over key dimensionsSTRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0configuration for gpt model, generic over key dimensionsSTRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0configuration for gpt model, generic over key dimensionsSTRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0configuration for gpt model, generic over key dimensionsSTRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0multi-head causal self-attention. generic over embedding dim, num heads, and block size.STRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0multi-head causal self-attention. generic over embedding dim, num heads, and block size.STRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0multi-head causal self-attention. generic over embedding dim, num heads, and block size.STRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0multi-head causal self-attention. generic over embedding dim, num heads, and block size.STRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0multi-head causal self-attention. generic over embedding dim, num heads, and block size.STRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0multi-layer perceptron. generic over embedding dimension.STRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0multi-layer perceptron. generic over embedding dimension.STRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0multi-layer perceptron. generic over embedding dimension.STRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0multi-layer perceptron. generic over embedding dimension.STRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0multi-layer perceptron. generic over embedding dimension.STRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0typeddict for gptconfig constructor arguments, generic over key dimensionsSTRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0typeddict for gptconfig constructor arguments, generic over key dimensionsSTRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0typeddict for gptconfig constructor arguments, generic over key dimensionsSTRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0typeddict for gptconfig constructor arguments, generic over key dimensionsSTRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0typeddict for gptconfig constructor arguments, generic over key dimensionsSTRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0typeddict defining the structure of gpt transformer modules. generic over key dimensions.STRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0typeddict defining the structure of gpt transformer modules. generic over key dimensions.STRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0typeddict defining the structure of gpt transformer modules. generic over key dimensions.STRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0typeddict defining the structure of gpt transformer modules. generic over key dimensions.STRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0typeddict defining the structure of gpt transformer modules. generic over key dimensions.STRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0gpt language model. generic over vocabulary size, block size, embedding dim, num heads, and num layers.STRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0gpt language model. generic over vocabulary size, block size, embedding dim, num heads, and num layers.STRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0gpt language model. generic over vocabulary size, block size, embedding dim, num heads, and num layers.STRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0gpt language model. generic over vocabulary size, block size, embedding dim, num heads, and num layers.STRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0gpt language model. generic over vocabulary size, block size, embedding dim, num heads, and num layers.STRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0return the number of parameters in the model. for non-embedding count (default), the position embeddings get subtracted.STRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0return the number of parameters in the model. for non-embedding count (default), the position embeddings get subtracted.STRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0return the number of parameters in the model. for non-embedding count (default), the position embeddings get subtracted.STRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0return the number of parameters in the model. for non-embedding count (default), the position embeddings get subtracted.STRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0return the number of parameters in the model. for non-embedding count (default), the position embeddings get subtracted.STRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0estimate model flops utilization (mfu) in units of a100 bfloat16 peak flopsSTRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0estimate model flops utilization (mfu) in units of a100 bfloat16 peak flopsSTRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0estimate model flops utilization (mfu) in units of a100 bfloat16 peak flopsSTRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0estimate model flops utilization (mfu) in units of a100 bfloat16 peak flopsSTRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0estimate model flops utilization (mfu) in units of a100 bfloat16 peak flopsSTRING
HIGHtensor-shapes/pyrefly-torch-stubs/examples/nanogpt.py0take a conditioning sequence of indices idx (longtensor of shape (b,t)) and complete the sequence max_new_tokens times, STRING
HIGH…stubs/examples/runtime/nanogpt_sym_int_var_runnable.py0take a conditioning sequence of indices idx (longtensor of shape (b,t)) and complete the sequence max_new_tokens times, STRING
HIGH…h-stubs/examples/runtime/nanogpt_future_annotations.py0take a conditioning sequence of indices idx (longtensor of shape (b,t)) and complete the sequence max_new_tokens times, STRING
HIGH…xamples/runtime/nanogpt_future_annotations_runnable.py0take a conditioning sequence of indices idx (longtensor of shape (b,t)) and complete the sequence max_new_tokens times, STRING
HIGH…ly-torch-stubs/examples/runtime/nanogpt_sym_int_var.py0take a conditioning sequence of indices idx (longtensor of shape (b,t)) and complete the sequence max_new_tokens times, STRING
Unused Imports258 hits · 231 pts
SeverityFileLineSnippetContext
LOWtest.py12CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/setters.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/validators.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py25CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py26CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py26CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py26CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py28CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py28CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py28CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py28CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py28CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/exceptions.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/converters.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attrs/filters.py3CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py10CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py10CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py10CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py10CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py10CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py11CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py12CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py12CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py13CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py13CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py13CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py13CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py13CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py14CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py14CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py14CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py14CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py14CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py14CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py14CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py14CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py28CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py28CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py28CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py28CODE
LOWpyrefly/lib/test/attrs/third-party/attr/exceptions.py3CODE
198 more matches not shown…
Excessive Try-Catch Wrapping92 hits · 116 pts
SeverityFileLineSnippetContext
LOWpyrefly/lib/test/returns.rs162 except Exception:CODE
LOWpyrefly/lib/test/paramspec.rs461 except Exception:CODE
LOWpyrefly/lib/test/scope.rs917 except Exception as e1:CODE
LOWpyrefly/lib/test/scope.rs925 except Exception as e2:CODE
LOWpyrefly/lib/test/scope.rs937 except Exception:CODE
LOWpyrefly/lib/test/scope.rs947 except Exception:CODE
LOWpyrefly/lib/test/scope.rs963 except Exception:CODE
LOWpyrefly/lib/test/scope.rs975 except Exception:CODE
MEDIUMpyrefly/lib/test/scope.rs914def try_except():CODE
MEDIUMpyrefly/lib/test/scope.rs922def try_except_finally():CODE
MEDIUMpyrefly/lib/test/scope.rs932def try_except_twice():CODE
MEDIUMpyrefly/lib/test/scope.rs942def try_except_multiple_finally():CODE
MEDIUMpyrefly/lib/test/scope.rs958def try_except_else():CODE
MEDIUMpyrefly/lib/test/scope.rs970def try_except_else_finally():CODE
LOWpyrefly/lib/test/flow_branching.rs311except Exception as e2:CODE
LOWpyrefly/lib/test/flow_branching.rs2524 except Exception:CODE
LOWpyrefly/lib/test/flow_branching.rs2541 except Exception as exc:CODE
LOWpyrefly/lib/test/flow_branching.rs2546 except Exception:CODE
MEDIUMpyrefly/lib/test/flow_branching.rs1855def f() -> int:CODE
LOWpyrefly/lib/test/attrs/third-party/attr/validators.py713 except Exception: # noqa: BLE001, PERF203, S112STRING
LOWpyrefly/lib/test/lsp/folding_ranges.rs263except Exception:CODE
LOWpyrefly/lib/test/lsp/folding_ranges.rs354 except Exception:CODE
LOWpyrefly/lib/test/lsp/semantic_tokens.rs1087except Exception as e:CODE
LOWpyrefly/lib/test/lsp/semantic_tokens.rs1628except Exception as e:CODE
LOWpyrefly/lib/test/lsp/local_find_refs.rs308except Exception:CODE
LOWpyrefly/lib/test/lsp/definition.rs512 except Exception as e:CODE
LOW…iles/tests_requiring_config/with_synthetic_bindings.py10except Exception:CODE
LOWpyrefly/lib/report/glean.rs140except Exception as ex:CODE
LOW…ates/tsp_types/protocol_generator/generate_protocol.py240 except Exception as e:CODE
LOW…ates/tsp_types/protocol_generator/generate_protocol.py965 except Exception as e:CODE
LOWcrates/pyrefly_bundled/update.py67 except Exception as e:CODE
MEDIUMtest/sarif/validate_sarif.py45 print("Error: Required packages not installed.")CODE
MEDIUMschemas/validate_schemas.py30 print("Error: Required packages not installed.")CODE
LOWscripts/github_utils.py243 except Exception as e:CODE
LOWscripts/github_utils.py352 except Exception as e:CODE
LOWscripts/github_utils.py535 except Exception as e:CODE
LOWscripts/github_utils.py597 except Exception as e:CODE
MEDIUMscripts/github_utils.py726 print("Error: Repository must be in format owner/repo", file=sys.stderr)STRING
LOWscripts/github_utils.py771 except Exception as e:STRING
LOWscripts/github_utils.py915 except Exception as e:STRING
LOWscripts/compare_typecheckers.py801 except Exception as e:CODE
LOWscripts/generate_release_notes.py113 except Exception:CODE
LOWscripts/generate_release_notes.py135 except Exception as e:CODE
MEDIUMscripts/generate_release_notes.py559 print(f"Error: Unknown provider '{provider}'.", file=sys.stderr)CODE
MEDIUMscripts/generate_release_notes.py573 print(f"Error: Template file not found: {template_path}", file=sys.stderr)CODE
MEDIUMscripts/generate_release_notes.py579 print(f"Error: Prompt file not found: {prompt_path}", file=sys.stderr)CODE
MEDIUMscripts/generate_release_notes.py693 print("Error: Repository must be in 'owner/repo' format.", file=sys.stderr)CODE
LOWscripts/generate_release_notes.py731 except Exception as e:CODE
MEDIUMscripts/sandbox_links.py31 print("Error: lzstring package required. Install with: pip install lzstring")CODE
MEDIUMscripts/benchmark/typecheck_benchmark.py275 print(f"Error: {install_envs_file} not found")CODE
MEDIUMscripts/benchmark/typecheck_benchmark.py754 print("Error: No packages found in install_envs.json")CODE
LOWscripts/benchmark/typecheck_benchmark.py387 except Exception as e:CODE
MEDIUMscripts/benchmark/lsp_benchmark.py963 print(f"Error: {install_envs_file} not found")CODE
MEDIUMscripts/benchmark/lsp_benchmark.py1257 print("Error: No packages found in install_envs.json")CODE
MEDIUMscripts/benchmark/lsp_benchmark.py492def __exit__(self, exc_type, exc, tb) -> None:CODE
LOWscripts/benchmark/lsp_benchmark.py564 except Exception:CODE
LOWscripts/benchmark/lsp_benchmark.py568 except Exception:CODE
LOWscripts/benchmark/lsp_benchmark.py574 except Exception:CODE
LOWscripts/benchmark/lsp_benchmark.py579 except Exception:CODE
LOWscripts/benchmark/lsp_benchmark.py582 except Exception:CODE
32 more matches not shown…
Docstring Block Structure22 hits · 110 pts
SeverityFileLineSnippetContext
HIGHpyrefly/lib/test/attrs/third-party/attr/_make.py580 Create a new instance, based on the first positional argument with *changes* applied. .. tip:: On STRING
HIGHpyrefly/lib/test/attrs/third-party/attr/_make.py1886 Return the tuple of *attrs* attributes for a class. The tuple also allows accessing the fields by their names STRING
HIGHpyrefly/lib/test/attrs/third-party/attr/_make.py1932 Return an ordered dictionary of *attrs* attributes for a class, whose keys are the attribute names. Args: STRING
HIGHpyrefly/lib/test/attrs/third-party/attr/_next_gen.py652 Inspect the class and return its effective build parameters. Warning: This feature is currently **expeSTRING
HIGHpyrefly/lib/test/attrs/third-party/attr/_funcs.py36 Return the *attrs* attribute values of *inst* as a dict. Optionally recurse into other *attrs*-decorated classSTRING
HIGHpyrefly/lib/test/attrs/third-party/attr/_funcs.py239 Return the *attrs* attribute values of *inst* as a tuple. Optionally recurse into other *attrs*-decorated clasSTRING
HIGHpyrefly/lib/test/attrs/third-party/attr/_funcs.py355 Check whether *cls* is a class with *attrs* attributes. Args: cls (type): Class to introspect. RaSTRING
HIGHpyrefly/lib/test/attrs/third-party/attr/_funcs.py383 Copy *inst* and apply *changes*. This is different from `evolve` that applies the changes to the arguments STRING
HIGHpyrefly/lib/test/attrs/third-party/attr/_funcs.py428 Resolve any strings and forward annotations in type annotations. This is only required if you need concrete tySTRING
HIGH…refly/lib/test/pydantic/third-party/pydantic/fields.py293Create a new `FieldInfo` object with the `Field` function. Args: default: The default value for theSTRING
HIGH…refly/lib/test/pydantic/third-party/pydantic/fields.py638Return a new `FieldInfo` instance from a `dataclasses.Field` instance. Args: dc_field: The `dataclaSTRING
HIGH…refly/lib/test/pydantic/third-party/pydantic/fields.py1195!!! abstract "Usage Documentation" [Fields](../concepts/fields.md) Create a field for objects that can be cSTRING
HIGH…refly/lib/test/pydantic/third-party/pydantic/fields.py1487!!! abstract "Usage Documentation" [Private Model Attributes](../concepts/models.md#private-model-attributes) STRING
HIGH…refly/lib/test/pydantic/third-party/pydantic/fields.py1664!!! abstract "Usage Documentation" [The `computed_field` decorator](../concepts/fields.md#the-computed_field-decSTRING
HIGH…y/lib/test/pydantic/third-party/pydantic/root_model.py87Create a new model using the provided root object and update fields set. Args: root: The root objecSTRING
HIGH…/lib/test/pydantic/third-party/pydantic/dataclasses.py113!!! abstract "Usage Documentation" [`dataclasses`](../concepts/dataclasses.md) A decorator used to create aSTRING
HIGHpyrefly/lib/test/pydantic/third-party/pydantic/main.py608Compute the class name for parametrizations of generic classes. This method can be overridden to achieve a custSTRING
HIGHpyrefly/lib/test/pydantic/third-party/pydantic/main.py730Validate a pydantic model instance. Args: obj: The object to validate. strict: Whether STRING
HIGHpyrefly/lib/test/pydantic/third-party/pydantic/main.py774!!! abstract "Usage Documentation" [JSON Parsing](../concepts/json.md#json-parsing) Validate the giSTRING
HIGHpyrefly/lib/test/pydantic/third-party/pydantic/main.py1891!!! abstract "Usage Documentation" [Dynamic Model Creation](../concepts/models.md#dynamic-model-creation) DSTRING
HIGH…/third-party/pydantic/_internal/_model_construction.py481Iterate over the namespace and: * gather private attributes * check for items which look like fields but are notSTRING
HIGH…/third-party/pydantic/_internal/_model_construction.py705Finish building a model class. This logic must be called after class has been created since validation functions muSTRING
Structural Annotation Overuse57 hits · 97 pts
SeverityFileLineSnippetContext
LOWpyrefly/lib/test/lsp/lsp_interaction/notebook_sync.rs297 // Step 1: Delete cell 2COMMENT
LOWpyrefly/lib/test/lsp/lsp_interaction/notebook_sync.rs317 // Step 2: Insert cell 2 at position 0COMMENT
LOWpyrefly/lib/report/pysa/module_index.rs143 // Step 1: Build short_identifier_to_function_ref and short_identifier_to_setter_refCOMMENT
LOWpyrefly/lib/report/pysa/module_index.rs182 // Step 2: Build func_def_to_function_ref by iterating allCOMMENT
LOWpyrefly/lib/report/pysa/module_index.rs198 // Step 3: Build class field mappings.COMMENT
LOWpyrefly/lib/alt/overload.rs283 // Step 1: eliminate overloads that accept an incompatible number of arguments.COMMENT
LOWpyrefly/lib/alt/overload.rs315 // Step 2: evaluate each overload as a regular (non-overloaded) call.COMMENT
LOWpyrefly/lib/alt/overload.rs330 // Step 3: argument type expansion. When the mypy-compatibility flag is on, we alsoCOMMENT
LOWpyrefly/lib/alt/overload.rs803 // Step 4: if any arguments supply an unknown number of args and at least oneCOMMENT
LOWpyrefly/lib/alt/overload.rs975 // Step 6: if there are still multiple matches, pick the first one.COMMENT
LOWpyrefly/lib/alt/solve.rs1646 // Step 1: Expand non-recursive UntypedAlias(Ref(...)) nodes byCOMMENT
LOWpyrefly/lib/alt/solve.rs1656 // Step 2: Check for cyclic self-references after expansion.COMMENT
LOWpyrefly/lib/alt/solve.rs2369 // Step 1: Compute raw TypeInfo (Vars unpinned)COMMENT
LOWpyrefly/lib/alt/solve.rs2372 // Step 2: Check whether the type actually contains partial types thatCOMMENT
LOWpyrefly/lib/alt/solve.rs2391 // Step 3: Store partial answer that the first-use solve will read and potentially pin.COMMENT
LOWpyrefly/lib/alt/solve.rs2394 // Step 4: Evaluate the first-use; throw away both the result and errors, this isCOMMENT
LOWpyrefly/lib/alt/solve.rs2404 // Step 5: Remove the partial answer, we've finished with it, and proceed toCOMMENT
LOWpyrefly/lib/alt/solve.rs1669 // Step 3: Extract type parameters from the (now expanded) body.COMMENT
LOW…s/skills/add-shape-types-to-torch-model/style_guide.md93### Step 1: Identify the degrees of freedomCOMMENT
LOW…s/skills/add-shape-types-to-torch-model/style_guide.md116### Step 2: Type the constructorCOMMENT
LOW…s/skills/add-shape-types-to-torch-model/style_guide.md130### Step 3: Type the forward signatureCOMMENT
LOW…-shapes/skills/add-shape-types-to-torch-model/SKILL.md185## Step 1: Inventory parametersCOMMENT
LOW…-shapes/skills/add-shape-types-to-torch-model/SKILL.md273## Step 2: Type the constructorCOMMENT
LOW…-shapes/skills/add-shape-types-to-torch-model/SKILL.md364## Step 3: Probe the forwardCOMMENT
LOW…-shapes/skills/add-shape-types-to-torch-model/SKILL.md398## Step 4: Restructure for trackingCOMMENT
LOW…-shapes/skills/add-shape-types-to-torch-model/SKILL.md532## Step 5: Write forward and assert_typeCOMMENT
LOW…-shapes/skills/add-shape-types-to-torch-model/SKILL.md605## Step 6: Post-module checklistCOMMENT
LOW…s/test/negative_tests/test_typevar_substitution_bug.py26 # Step 1: Create concrete tensorCOMMENT
LOW…s/test/negative_tests/test_typevar_substitution_bug.py30 # Step 2: Call functionCOMMENT
LOW…s/test/negative_tests/test_typevar_substitution_bug.py34 # Step 3: The concrete shape is preserved, so mismatched first dimensions are rejected.COMMENT
LOWcrates/pyrefly_types/src/dimension.rs465 // Step 1: Recursively canonicalize operandsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs469 // Step 2: Flatten to list of termsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs474 // Step 3: Combine like terms by extracting coefficientsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs484 // Step 4: Rebuild terms, filtering out zero coefficientsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs504 // Step 5: Sort terms by canonical orderCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs507 // Step 6: Build resultCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs599 // Step 1: Recursively canonicalize operandsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs603 // Step 2: Flatten to list of factorsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs608 // Step 3: Check for zeroCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs616 // Step 4: Separate literals from non-literalsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs714 // Step 6: Sort factors by canonical orderCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs717 // Step 7: Add literal coefficient if not 1COMMENT
LOWcrates/pyrefly_types/src/dimension.rs724 // Step 8: Build resultCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs750 // Step 1: Canonicalize operandsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs754 // Step 2: Check if numerator is a division - if so, flatten only when theCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs920 // Step 1: Separate literals from non-literalsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs924 // Step 2: Apply GCD to literalsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs934 // Step 3: Find and remove structurally equal non-literal factorsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs947 // Step 4: Rebuild numeratorCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs953 // Step 5: Rebuild denominatorCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs676 // Step 5: Distributive law — coeff * (a + b) → coeff*a + coeff*bCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs765 // Step 4: Apply simplificationsCOMMENT
LOW…dbox-examples/tensor-shapes-tutorial-basics/sandbox.py17# Step 1: Use Int to capture dimensions at constructionCOMMENT
LOW…dbox-examples/tensor-shapes-tutorial-basics/sandbox.py23 # Step 2: Method-level type param B for batch sizeCOMMENT
LOW…dbox-examples/tensor-shapes-tutorial-basics/sandbox.py30# Step 3: Verify shapes with concrete dimensionsCOMMENT
LOWscripts/primer_classifier/formatter.py81 # Step 1: linkify full source file pathsCOMMENT
LOWscripts/primer_classifier/formatter.py93 # Step 2: linkify internal function names (must contain underscore)COMMENT
Verbosity Indicators50 hits · 87 pts
SeverityFileLineSnippetContext
LOWpyrefly/lib/test/lsp/lsp_interaction/notebook_sync.rs297 // Step 1: Delete cell 2COMMENT
LOWpyrefly/lib/test/lsp/lsp_interaction/notebook_sync.rs317 // Step 2: Insert cell 2 at position 0COMMENT
LOWpyrefly/lib/report/pysa/module_index.rs143 // Step 1: Build short_identifier_to_function_ref and short_identifier_to_setter_refCOMMENT
LOWpyrefly/lib/report/pysa/module_index.rs182 // Step 2: Build func_def_to_function_ref by iterating allCOMMENT
LOWpyrefly/lib/report/pysa/module_index.rs198 // Step 3: Build class field mappings.COMMENT
LOWpyrefly/lib/alt/attr.rs2221 // `module_name` could refer to a package, in which case we need to check ifCOMMENT
LOWpyrefly/lib/alt/overload.rs283 // Step 1: eliminate overloads that accept an incompatible number of arguments.COMMENT
LOWpyrefly/lib/alt/overload.rs315 // Step 2: evaluate each overload as a regular (non-overloaded) call.COMMENT
LOWpyrefly/lib/alt/overload.rs330 // Step 3: argument type expansion. When the mypy-compatibility flag is on, we alsoCOMMENT
LOWpyrefly/lib/alt/overload.rs803 // Step 4: if any arguments supply an unknown number of args and at least oneCOMMENT
LOWpyrefly/lib/alt/overload.rs975 // Step 6: if there are still multiple matches, pick the first one.COMMENT
LOWpyrefly/lib/alt/solve.rs1646 // Step 1: Expand non-recursive UntypedAlias(Ref(...)) nodes byCOMMENT
LOWpyrefly/lib/alt/solve.rs1656 // Step 2: Check for cyclic self-references after expansion.COMMENT
LOWpyrefly/lib/alt/solve.rs2369 // Step 1: Compute raw TypeInfo (Vars unpinned)COMMENT
LOWpyrefly/lib/alt/solve.rs2372 // Step 2: Check whether the type actually contains partial types thatCOMMENT
LOWpyrefly/lib/alt/solve.rs2391 // Step 3: Store partial answer that the first-use solve will read and potentially pin.COMMENT
LOWpyrefly/lib/alt/solve.rs2394 // Step 4: Evaluate the first-use; throw away both the result and errors, this isCOMMENT
LOWpyrefly/lib/alt/solve.rs2404 // Step 5: Remove the partial answer, we've finished with it, and proceed toCOMMENT
LOWpyrefly/lib/alt/solve.rs1669 // Step 3: Extract type parameters from the (now expanded) body.COMMENT
LOWpyrefly/lib/alt/special_calls.rs521 // We need to check if there is any field with unassignable types, since the `isinstance` check COMMENT
LOW…s/test/negative_tests/test_typevar_substitution_bug.py26 # Step 1: Create concrete tensorCOMMENT
LOW…s/test/negative_tests/test_typevar_substitution_bug.py30 # Step 2: Call functionCOMMENT
LOW…s/test/negative_tests/test_typevar_substitution_bug.py34 # Step 3: The concrete shape is preserved, so mismatched first dimensions are rejected.COMMENT
LOWcrates/pyrefly_types/src/dimension.rs465 // Step 1: Recursively canonicalize operandsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs469 // Step 2: Flatten to list of termsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs474 // Step 3: Combine like terms by extracting coefficientsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs484 // Step 4: Rebuild terms, filtering out zero coefficientsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs504 // Step 5: Sort terms by canonical orderCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs507 // Step 6: Build resultCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs599 // Step 1: Recursively canonicalize operandsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs603 // Step 2: Flatten to list of factorsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs608 // Step 3: Check for zeroCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs616 // Step 4: Separate literals from non-literalsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs714 // Step 6: Sort factors by canonical orderCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs717 // Step 7: Add literal coefficient if not 1COMMENT
LOWcrates/pyrefly_types/src/dimension.rs724 // Step 8: Build resultCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs750 // Step 1: Canonicalize operandsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs754 // Step 2: Check if numerator is a division - if so, flatten only when theCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs920 // Step 1: Separate literals from non-literalsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs924 // Step 2: Apply GCD to literalsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs934 // Step 3: Find and remove structurally equal non-literal factorsCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs947 // Step 4: Rebuild numeratorCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs953 // Step 5: Rebuild denominatorCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs676 // Step 5: Distributive law — coeff * (a + b) → coeff*a + coeff*bCOMMENT
LOWcrates/pyrefly_types/src/dimension.rs765 // Step 4: Apply simplificationsCOMMENT
LOW…dbox-examples/tensor-shapes-tutorial-basics/sandbox.py17# Step 1: Use Int to capture dimensions at constructionCOMMENT
LOW…dbox-examples/tensor-shapes-tutorial-basics/sandbox.py23 # Step 2: Method-level type param B for batch sizeCOMMENT
LOW…dbox-examples/tensor-shapes-tutorial-basics/sandbox.py30# Step 3: Verify shapes with concrete dimensionsCOMMENT
LOWscripts/primer_classifier/formatter.py81 # Step 1: linkify full source file pathsCOMMENT
LOWscripts/primer_classifier/formatter.py93 # Step 2: linkify internal function names (must contain underscore)COMMENT
Deep Nesting69 hits · 60 pts
SeverityFileLineSnippetContext
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py379CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py1319CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py2143CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py666CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py813CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py849CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py1435CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_funcs.py28CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_funcs.py154CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_funcs.py232CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py485CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py569CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py733CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py838CODE
LOWpyrefly/lib/test/pydantic/third-party/pydantic/types.py1017CODE
LOWpyrefly/lib/test/pydantic/third-party/pydantic/main.py335CODE
LOWpyrefly/lib/test/pydantic/third-party/pydantic/main.py424CODE
LOWpyrefly/lib/test/pydantic/third-party/pydantic/main.py1514CODE
LOWpyrefly/lib/test/pydantic/third-party/pydantic/main.py1134CODE
LOW…/third-party/pydantic/_internal/_model_construction.py474CODE
LOW…/third-party/pydantic/_internal/_model_construction.py108CODE
LOW…refly-shape-extensions/shape_extensions/torchscript.py47CODE
LOW…refly-shape-extensions/shape_extensions/torchscript.py69CODE
LOW…refly-shape-extensions/shape_extensions/torchscript.py87CODE
LOW…ates/tsp_types/protocol_generator/generate_protocol.py62CODE
LOW…ates/tsp_types/protocol_generator/generate_protocol.py299CODE
LOW…ates/tsp_types/protocol_generator/generate_protocol.py403CODE
LOW…ates/tsp_types/protocol_generator/generate_protocol.py547CODE
LOW…ates/tsp_types/protocol_generator/generate_protocol.py726CODE
LOWscripts/github_utils.py88CODE
LOWscripts/github_utils.py557CODE
LOWscripts/github_utils.py779CODE
LOWscripts/github_utils.py357CODE
LOWscripts/compare_typecheckers.py213CODE
LOWscripts/compare_typecheckers.py494CODE
LOWscripts/generate_release_notes.py366CODE
LOWscripts/llm_transport.py220CODE
LOWscripts/benchmark/typecheck_benchmark.py303CODE
LOWscripts/benchmark/typecheck_benchmark.py526CODE
LOWscripts/benchmark/typecheck_benchmark.py837CODE
LOWscripts/benchmark/lsp_benchmark.py190CODE
LOWscripts/benchmark/lsp_benchmark.py385CODE
LOWscripts/benchmark/lsp_benchmark.py1025CODE
LOWscripts/benchmark/lsp_benchmark.py1056CODE
LOWscripts/benchmark/lsp_benchmark.py1406CODE
LOWscripts/benchmark/lsp_benchmark.py524CODE
LOWscripts/benchmark/lsp_benchmark.py702CODE
LOWscripts/issue_ranker/report_formatter.py14CODE
LOWscripts/issue_ranker/issue_checker.py77CODE
LOWscripts/issue_ranker/__main__.py127CODE
LOWscripts/issue_ranker/__main__.py303CODE
LOWscripts/issue_ranker/passes/primer_impact.py171CODE
LOWscripts/issue_ranker/passes/rank.py134CODE
LOWscripts/issue_ranker/passes/rank.py305CODE
LOWscripts/primer_classifier/cross_checker.py314CODE
LOWscripts/primer_classifier/formatter.py189CODE
LOWscripts/primer_classifier/formatter.py246CODE
LOWscripts/primer_classifier/classifier.py199CODE
LOWscripts/primer_classifier/classifier.py812CODE
LOWscripts/primer_classifier/parser.py161CODE
9 more matches not shown…
Fake / Example Data43 hits · 48 pts
SeverityFileLineSnippetContext
LOWpyrefly/lib/test/literal.rs513Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs513Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs514Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs514Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs515Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs515Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs516Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs516Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs517Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs517Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs518Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs518Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs519Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs519Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs520Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs520Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs521Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs521Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs522Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs522Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs523Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs523Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs524Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs524Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs525Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs525Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs526Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs526Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs527Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOWpyrefly/lib/test/literal.rs527Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqCODE
LOW…refly/lib/test/pydantic/third-party/pydantic/config.py78 user = User(name='John Doe', age=20) # (2)!STRING
LOW…refly/lib/test/pydantic/third-party/pydantic/config.py80 #> name='John Doe'STRING
LOW…refly/lib/test/pydantic/third-party/pydantic/config.py260 user = User(name='John Doe') # (1)!STRING
LOW…refly/lib/test/pydantic/third-party/pydantic/config.py262 #> name='John Doe'STRING
LOW…refly/lib/test/pydantic/third-party/pydantic/config.py279 user = User(name='John Doe') # (2)!STRING
LOW…refly/lib/test/pydantic/third-party/pydantic/config.py281 #> name='John Doe'STRING
LOWcrates/pyrefly_types/src/types.rs1561 /// Collect "placeholder" vars - vars that are placeholders for a not-yet-solved type, likeCOMMENT
LOWscripts/primer_classifier/test_cross_checker.py168 mock_backend.return_value = ("anthropic", "fake-key")CODE
LOWscripts/primer_classifier/test_cross_checker.py193 mock_backend.return_value = ("anthropic", "fake-key")CODE
LOWscripts/primer_classifier/test_cross_checker.py209 mock_backend.return_value = ("anthropic", "fake-key")CODE
LOWscripts/primer_classifier/test_cross_checker.py234 mock_backend.return_value = ("anthropic", "fake-key")CODE
LOWscripts/primer_classifier/test_cross_checker.py259 mock_backend.return_value = ("anthropic", "fake-key")CODE
LOWscripts/primer_classifier/test_cross_checker.py271 mock_backend.return_value = ("anthropic", "fake-key")CODE
AI Structural Patterns40 hits · 38 pts
SeverityFileLineSnippetContext
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py106CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py1319CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py2483CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_next_gen.py23CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_next_gen.py437CODE
LOW…p_interaction/test_files/call_hierarchy_test/caller.py15CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py922CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py961CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py1000CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py1039CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py1078CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py1117CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py1154CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py1634CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py1649CODE
LOWpyrefly/lib/test/pydantic/third-party/pydantic/types.py1041CODE
LOW…y/lib/test/pydantic/third-party/pydantic/root_model.py137CODE
LOW…/lib/test/pydantic/third-party/pydantic/dataclasses.py99CODE
LOW…/lib/test/pydantic/third-party/pydantic/dataclasses.py33CODE
LOW…/lib/test/pydantic/third-party/pydantic/dataclasses.py50CODE
LOW…/lib/test/pydantic/third-party/pydantic/dataclasses.py69CODE
LOW…/lib/test/pydantic/third-party/pydantic/dataclasses.py84CODE
LOWpyrefly/lib/test/pydantic/third-party/pydantic/main.py460CODE
LOWpyrefly/lib/test/pydantic/third-party/pydantic/main.py518CODE
LOWpyrefly/lib/test/pydantic/third-party/pydantic/main.py1458CODE
LOW…s/pyrefly-torch-stubs/test/test_symbolic_dimensions.py222CODE
LOW…shapes/pyrefly-torch-stubs/test/test_recursive_skip.py957CODE
LOW…sor-shapes/pyrefly-torch-stubs/examples/super_slomo.py224CODE
LOWtensor-shapes/pyrefly-torch-stubs/examples/densenet.py82CODE
LOWtensor-shapes/pyrefly-torch-stubs/examples/stargan.py148CODE
LOWtensor-shapes/pyrefly-torch-stubs/examples/resnet.py54CODE
LOWtensor-shapes/pyrefly-torch-stubs/examples/resnet.py86CODE
LOWtensor-shapes/pyrefly-torch-stubs/examples/apg.py199CODE
LOWtensor-shapes/pyrefly-torch-stubs/examples/apg.py293CODE
LOWtensor-shapes/pyrefly-torch-stubs/examples/gptfast.py585CODE
LOW…stubs/examples/runtime/gptfast_sym_int_var_runnable.py535CODE
LOW…ly-torch-stubs/examples/runtime/gptfast_sym_int_var.py592CODE
LOW…xamples/runtime/gptfast_future_annotations_runnable.py548CODE
LOW…h-stubs/examples/runtime/gptfast_future_annotations.py590CODE
LOWscripts/benchmark/typecheck_benchmark.py718CODE
AI Slop Vocabulary12 hits · 32 pts
SeverityFileLineSnippetContext
MEDIUMpyrefly/lib/test/attrs/attributes.rs289// Checked via construction (not the inferred param type) to stay robust to the separateCOMMENT
LOWpyrefly/lib/test/pydantic/third-party/pydantic/types.py1745 # hence we just use `secret_display`COMMENT
LOWpyrefly/lib/test/pydantic/third-party/pydantic/main.py1288 # early if there are no keys to ignore (we would just return False later on anyway)COMMENT
MEDIUMpyrefly/lib/solver/subset.rs2875 // Pyrefly incremental more robust.COMMENT
MEDIUMpyrefly/lib/state/lsp.rs494 /// downstream logic can utilize the info.COMMENT
MEDIUMpyrefly/lib/alt/answers_solver.rs1562 /// (cycle_start), making it a robust anchor.COMMENT
MEDIUMpyrefly/lib/alt/answers_solver.rs1610 // (cycle_start), making it a more robust anchor.COMMENT
MEDIUMpyrefly/lib/alt/class/dataclass.rs524 // left to the stub, avoiding false positives and staying robust to new `Type` variants.COMMENT
LOW…pes/pyrefly-torch-stubs/examples/speech_transformer.py365# so we skip adding it and just pass through. The original adds it to src_seq.COMMENT
MEDIUMcrates/pyrefly_lsp_test/src/object_model.rs1337 #[expect(clippy::new_without_default, reason = "test harness constructor")]COMMENT
MEDIUMcrates/pyrefly_lsp_test/src/object_model.rs1407 #[expect(clippy::new_without_default, reason = "test harness constructor")]COMMENT
MEDIUMconformance/third_party/generics_variance.py10# > To facilitate the declaration of container types where covariant orCOMMENT
Self-Referential Comments12 hits · 30 pts
SeverityFileLineSnippetContext
MEDIUM…test/lsp/lsp_interaction/test_files/error_docs_test.py7# This file contains various error types to test that documentation links are properly includedCOMMENT
MEDIUMpyrefly/lib/test/pydantic/third-party/pydantic/types.py984 # Create an instanceSTRING
MEDIUM…y/lib/test/pydantic/third-party/pydantic/root_model.py152 """This method is included just to get a more accurate return type for type checkers.STRING
MEDIUM…/third-party/pydantic/_internal/_model_construction.py443 """This function is meant to behave like a BaseModel method to initialise private attributes.STRING
MEDIUM…fly-torch-stubs/test/test_general_unpacked_matching.py42 # Create a tensor with more complex unpacked shapeCOMMENT
MEDIUM…fly-torch-stubs/test/test_general_unpacked_matching.py64 # Create a tensor with more complex unpacked shapeCOMMENT
MEDIUMtensor-shapes/pyrefly-torch-stubs/examples/dlrm.py372 # Create a standard EmbeddingBag and prepare for quantizationCOMMENT
MEDIUM…ates/tsp_types/protocol_generator/generate_protocol.py508 # Create an alias for the result type that matches the response nameCOMMENT
MEDIUMschemas/test-pyrefly.toml2# This file contains examples of all configuration optionsCOMMENT
MEDIUMscripts/benchmark/lsp_benchmark.py847 # Create a small probe fileCOMMENT
MEDIUMscripts/primer_classifier/test_classifier.py916 # Create a source context large enough that the diff budget matters.COMMENT
MEDIUM.github/workflows/create_release.yml7# Creating the release will in turn trigger release_binaries.ymlCOMMENT
Modern Structural Boilerplate24 hits · 24 pts
SeverityFileLineSnippetContext
LOWpyrefly/lib/test/attrs/third-party/attrs/__init__.py31__all__ = [CODE
LOWpyrefly/lib/test/attrs/third-party/attr/validators.py19__all__ = [CODE
LOWpyrefly/lib/test/attrs/third-party/attr/__init__.py43__all__ = [CODE
LOWpyrefly/lib/test/attrs/third-party/attr/converters.py13__all__ = [CODE
LOWpyrefly/lib/test/attrs/third-party/attr/_config.py3__all__ = ["get_run_validators", "set_run_validators"]CODE
LOW…ction/test_files/prefer_pyi_when_missing_in_py/main.py8__all__ = ["bar"]CODE
LOW…p_interaction/test_files/unused_import_all/__init__.py8__all__ = ["Foo", "Baz"]CODE
LOW…rt_outside_search_path/site_packages/mypkg/__init__.py3__all__ = ["MyClass"]CODE
LOW…ng_config/workspace_symbol_prefer_non_init/__init__.py8__all__ = ["workspace_symbol_prefers_non_init_over_init_reexport"]CODE
LOW…equiring_config/workspace_symbol_multibyte/__init__.py12__all__ = ["workspace_symbol_multibyte_repro"]CODE
LOW…action/test_files/dunder_all_submodule/pkg/__init__.py6__all__ = ["sub"]CODE
LOW…est/pydantic/third-party/pydantic_settings/__init__.py7__all__ = ["BaseSettings"]CODE
LOW…refly/lib/test/pydantic/third-party/pydantic/fields.py1564 def _update_from_config(self, config_wrapper: ConfigWrapper, name: str) -> None:CODE
LOWpyrefly/lib/test/pydantic/third-party/pydantic/main.py1777 def update_forward_refs(cls, **localns: Any) -> None: # noqa: D102CODE
LOW…/third-party/pydantic/_internal/_model_construction.py627def set_default_hash_func(cls: type[BaseModel], bases: tuple[type[Any], ...]) -> None:CODE
LOW…/third-party/pydantic/_internal/_model_construction.py818def set_deprecated_descriptors(cls: type[BaseModel]) -> None:CODE
LOWpyrefly/lib/test/stubgen/dunder_all/input.py8__all__ = ["public_func", "PublicClass", "PUBLIC_VAR", "Vector"]CODE
LOWpyrefly/lib/test/stubgen/dunder_all_reexport/input.py8__all__ = ["op"]CODE
LOW…/pyrefly-shape-extensions/shape_extensions/__init__.py18__all__ = [CODE
LOW…refly-shape-extensions/shape_extensions/torchscript.py33__all__ = [*_shape_extensions_all, "remove_shape_types_from_torch_sources"]CODE
LOWtensor-shapes/pyrefly-torch-stubs/examples/bert.py282 def set_mask(self, mask: Tensor) -> None:CODE
LOWconformance/conformance_output.py48def update_file(file_path: str, content: str) -> None:CODE
LOWconformance/third_party/typeddicts_readonly_update.py33def update_a(a: A, b: B) -> None:CODE
LOWconformance/third_party/generics_variance_inference.py145 def set_value(self, value: T) -> None:CODE
Cross-Language Confusion4 hits · 18 pts
SeverityFileLineSnippetContext
HIGHscripts/issue_ranker/llm_tests/run_tests.py12 cd scripts && python3 -m issue_ranker.llm_tests.run_testsSTRING
HIGHscripts/issue_ranker/passes/primer_impact.py98 '{"match": null} if no match.'CODE
HIGHconformance/third_party/directives_version_platform.py66 this_raises = val10 # E?: `val10` is undefined, but support for `os.name` is optionalCODE
HIGHconformance/third_party/directives_version_platform.py75 this_raises = val13 # E?: `val13` is undefined, but support for `os.name` is optionalCODE
Modern AI Meta-Vocabulary4 hits · 13 pts
SeverityFileLineSnippetContext
MEDIUMrelease_notes/release-notes-v1.0.0.md103- **Pyrefly \+ AI agents** — Pyrefly's speed makes it a natural verification step in agentic workflows. See our guide onCODE
MEDIUMwebsite/blog/2026-05-12-v1.0.md143We have already published a guide on [adding Pyrefly to your agentic loop](https://pyrefly.org/blog/pyrefly-agentic-loopCODE
MEDIUMscripts/benchmark/typecheck_benchmark.py714# Main benchmark orchestrationCOMMENT
MEDIUMscripts/benchmark/lsp_benchmark.py951# Multi-package orchestration helpersCOMMENT
Redundant / Tautological Comments8 hits · 12 pts
SeverityFileLineSnippetContext
LOWpyrefly/lib/test/attrs/third-party/attr/_make.py698 # Check if the pre init method has more arguments than just `self`COMMENT
LOW…s/skills/add-shape-types-to-torch-model/verify_port.sh97 # Check if the line has a comment explaining the root causeCOMMENT
LOW…ates/tsp_types/protocol_generator/generate_protocol.py51 # Check if it's a version string like "0.1.0"COMMENT
LOWwebsite/scripts/audit_and_fix_vulnerabilities.sh20# Check if there are vulnerabilitiesCOMMENT
LOWscripts/github_utils.py54 # Check if username ends with [bot]COMMENT
LOWscripts/benchmark/lsp_benchmark.py1465 # Open the file on each serverCOMMENT
LOWscripts/issue_ranker/passes/score.py118 # Check if this issue is in any duplicate clusterCOMMENT
LOWscripts/primer_classifier/llm_client.py328 # Check if the LLM is requesting additional filesCOMMENT
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippetContext
CRITICALpyrefly/lib/state/state.rs3180 if self.transaction.data.state.run_count.load(Ordering::SeqCst) <= 1 {CODE
Slop Phrases4 hits · 9 pts
SeverityFileLineSnippetContext
LOWpyrefly/lib/test/generic_restrictions.rs2652# The below is a real error that we need to make sure to catch.COMMENT
LOWpyrefly/lib/test/flow_branching.rs223// Regression test to ensure we don't forget to create loop recursionCOMMENT
MEDIUMpyrefly/lib/test/attrs/third-party/attr/_funcs.py496 # Return the class so you can use it as a decorator too.COMMENT
MEDIUMconformance/third_party/generics_type_erasure.py25# > you can use an annotation to force the type of the variable, e.g.:COMMENT
Synthetic Comment Markers1 hit · 8 pts
SeverityFileLineSnippetContext
HIGHpyrefly/lib/alt/call.rs2526 // log a name-not-found error, but we also assert/reveal the type as requested.COMMENT
Overly Generic Function Names7 hits · 7 pts
SeverityFileLineSnippetContext
LOW…lsp_interaction/test_files/code_lens/main_and_tests.py9def helper():CODE
LOW…action/test_files/prefixed_with_underscore/_private.py7def my_function():CODE
LOW…p_interaction/test_files/call_hierarchy_test/callee.py7def my_function():CODE
LOW…components/landing-page/PerformanceComparisonChart.tsx128function getData(project: ProjectValue): TypeCheckerData[] {CODE
LOWconformance/third_party/literals_parameterizations.py56def my_function(x: Literal[1 + 2]) -> int: # ECODE
LOWconformance/third_party/literals_literalstring.py23def my_function(literal_string: LiteralString) -> LiteralString:CODE
LOWconformance/third_party/generics_scoping.py67 def do_something(self, x: S) -> S: # OKCODE
Dead Code3 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMconformance/third_party/annotations_generators.py140CODE
MEDIUMconformance/third_party/annotations_generators.py145CODE
MEDIUMconformance/third_party/annotations_generators.py190CODE
Cross-Language Confusion (JS/TS)1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHwebsite/src/sandbox/generateSandboxUrl.ts33 'def function(value: object | None = None) -> object:\n if value is None:\n return None\n eCODE