Sample

pyint-0b47fc781739-I03

Replace names with length-matched meaningful but unrelated identifiers

Matched original source

Lines12

Scores

MethodScoreScale
Posnett0.8240–1; higher is more readable
Dorn0.9160–1; higher is more readable
Mi0.4720–1; higher is more readable
LLOC6Logical lines; fewer is more readable
DeepSeek V4 Pro16.330–20; mean of three runs
GPT-6.1 Sol170–20; mean of three runs
BTTF0.850–1; higher is more readable

Views

Source code

from __future__ import annotations from typing import TYPE_CHECKING, Any from urllib3.exceptions import HTTPError as BaseHTTPError from .compat import JSONDecodeError as CompatJSONDecodeError class Timeout(RequestException): """The request timed out. Catching this error will catch both :exc:`~requests.exceptions.ConnectTimeout` and :exc:`~requests.exceptions.ReadTimeout` errors. """

Loading feature diagnosis…

Source regions

Feature contributions

Feature contributions

FeatureValueContribution
(log-odds)
Byte entropyHow varied the bytes in the source text are. Repeated bytes give a lower value; a more even mixture gives a higher value.4.855−7.282
Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones.146.719−4.842
Source linesThe number of non-empty source lines.12+4.8

Intercept 8.87 + feature contributions = 1.546 (log-odds).
Score = sigmoid(1.546) = 0.824.

Feature contributions

FeatureValueContribution
(log-odds)
Identifier layout (horizontal)How rapidly the visual pattern of identifier characters changes from left to right. It measures spatial frequency, not the meaning of the names.60+1.124
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.015+0.797
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.13+0.576
Indentation frequencyHow rapidly indentation changes from line to line.7−0.495
Number layout frequencyHow rapidly the number of numeric values per line changes through the code.1+0.398
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.11.639−0.247
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.59.923+0.162

Intercept 0.07 + feature contributions = 2.385 (log-odds).
Score = sigmoid(2.385) = 0.916.

Score0.472
Score6
Run 1

The code is highly readable with a clear, logical structure. It imports only necessary components, groups them logically (standard typing, third-party, local), and defines a single, well-named exception class. Nesting is non-existent, and the class purpose is explicit through a descriptive name and a succinct docstring that explains what the error represents and how to catch it. Code length is minimal and appropriate, with one action per line where applicable. Reading flow is natural: imports, then class definition, then documentation. Minor points deducted only because the class body is entirely documentation with no custom logic, which might initially confuse some readers about its necessity, though this is common for exception classes. Overall, it adheres well to clean-code principles.

Run 2

The code is generally clear and readable, but it appears to be an incomplete snippet, which limits its structural and contextual evaluation. The class definition is straightforward, with a concise docstring explaining its purpose. The imports are minimal and logically organized. However, the class Timeout inherits from RequestException, which is not defined or imported in the provided snippet, making the code ambiguous and potentially broken. The docstring is helpful but could be more concise. The code length is appropriate for a class definition, and each line represents a single action. The reading flow is natural, but the missing import or definition of RequestException disrupts clarity. Overall, it is readable but incomplete, preventing a higher score.

Run 3

The code is highly readable. It starts with standard future/typing imports, uses a clear module import alias, and defines a single, well-documented exception class with a concise docstring that clearly states its purpose and relationship to other errors. The structure is flat, avoiding unnecessary nesting, and each line performs a distinct action. The class definition is minimal and the docstring follows best practices, maintaining a natural reading flow from imports to definition.

Run 1

Code Structure: Imports followed by a single exception class provide straightforward organization, though RequestException is not defined or imported in the snippet and several imports are unused. Nesting: No nested control flow; only the class body. Clarity of intent: The class name and docstring clearly describe a timeout exception and its intended scope. Code length: Short and focused, with minor clutter from unused imports. Action granularity: Each import and declaration occupies its own line, avoiding compressed operations. Reading flow: Natural top-to-bottom progression, although the unexplained base class and unrelated imports slightly interrupt understanding.

Run 2

Code Structure: Imports precede a clearly defined exception class, providing logical organization, though RequestException is not defined or imported in the snippet. Nesting: Minimal nesting makes the code easy to scan. Clarity of intent: The class name and docstring clearly explain its purpose and which timeout subclasses it covers. Code length: Concise, although several imports appear unused in this excerpt. Action granularity: Each import and declaration occupies its own line, with no bundled actions. Reading flow: Natural top-to-bottom flow; an additional blank line before the top-level class would improve conventional Python formatting.

Run 3

Code Structure: Imports followed by an exception class provide a straightforward organization, though RequestException is not defined or imported in the snippet. Nesting: No unnecessary nesting. Clarity of intent: The Timeout name and docstring clearly explain its purpose and the exceptions it covers. Code length: Very concise, but several imports appear unused within the provided code. Action granularity: Each import and declaration occupies its own line, with no combined actions. Reading flow: Natural top-to-bottom progression; import grouping and an additional blank line before the class would improve presentation.