Sample
pyint-663ee6babdaa-I13
Lower every eligible synchronous for loop to a while loop
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0.65 | 0–1; higher is more readable |
| Dorn | 0.86 | 0–1; higher is more readable |
| Mi | 0.307 | 0–1; higher is more readable |
| LLOC | 6 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 17.67 | 0–20; mean of three runs |
| GPT-6.1 Sol | 17.33 | 0–20; mean of three runs |
| BTTF | 0.789 | 0–1; higher is more readable |
Views
Loading feature diagnosis…
Source regions
Feature contributions
Feature contributions
| Feature | Value | Contribution (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.692 | −7.039 |
| Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones. | 157.891 | −5.21 |
| Source linesThe number of non-empty source lines. | 10 | +4 |
Intercept 8.87 + feature contributions = 0.621 (log-odds).
Score = sigmoid(0.621) = 0.65.
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.019 | +0.761 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 11 | +0.647 |
| 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. | 74 | +0.531 |
| 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. | 9.88 | −0.272 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 60.636 | +0.174 |
Intercept 0.07 + feature contributions = 1.813 (log-odds).
Score = sigmoid(1.813) = 0.86.
| Score | 0.307 |
|---|
| Score | 6 |
|---|
Run 1
The code is highly readable and well-structured. It uses clear imports with future annotations for modern type hinting. The exception class `ConnectTimeout` inherits logically from `ConnectionError` and `Timeout`, accurately reflecting its purpose. The docstring concisely explains when the error occurs and explicitly notes that retrying is safe, which is crucial for error handling. Nesting is nonexistent, and each import is on its own line, following clean action granularity. The code length is minimal and avoids unnecessary complexity. Reading flow is natural: imports first, then class definition with documentation. Minor deductions only because the docstring could include a period after the first sentence, and the class body contains only a docstring, which is acceptable for an exception class.
Run 2
The code is highly readable. It has clear, logical structure with minimal, appropriate imports. It defines a single exception class with a clear name and a concise docstring explaining the error condition and retry safety. Nesting is flat, intent is evident, and length is minimal. Each action sits on its own line. The only minor issue is ambiguity around why urllib3's HTTPError is imported, though this could be for re-export or compatibility.
Run 3
The code is highly readable. It begins with standard future import and typing imports, followed by a specific third-party exception import with a clear alias to avoid naming conflicts, and a local compatibility import with a descriptive alias. The class definition is concise, with a clear name and multiple inheritance from standard exception types that accurately describes its purpose. The docstring succinctly explains the error and includes a practical note about retry safety, which adds valuable context for users. The structure is logical, with no unnecessary nesting or length. Each line performs a single action, and the reading flow is natural from imports to class definition. Minor deductions: the unused `Any` and `TYPE_CHECKING` imports slightly reduce cleanliness, and there is no explicit `pass` or code body, but it's valid for an exception class.
Run 1
Code Structure: Imports followed by a single exception class provide straightforward organization, though several imports are unused in this snippet. Nesting: There is no unnecessary nesting. Clarity of intent: The descriptive class name and docstring clearly explain the timeout condition and retry safety; the base classes are not defined or imported in the excerpt. Code length: The implementation is concise, with minor import clutter. Action granularity: Each import and declaration occupies its own line. Reading flow: The progression from imports to class declaration to documentation is natural, although an additional blank line before the top-level class would improve formatting.
Run 2
Code Structure: Imports followed by a focused exception class provide logical organization, although several imports are unused in this snippet. Nesting: Only a class-level docstring is nested, keeping the code easy to scan. Clarity of intent: The descriptive class name and docstring clearly explain the connection timeout and retry safety; however, ConnectionError and Timeout are not defined or explicitly imported here, leaving their origins unclear. Code length: The snippet is concise, with no unnecessary implementation. Action granularity: Each import and declaration occupies its own line. Reading flow: The progression from imports to the exception definition is natural, though additional blank-line separation between imports and the class would improve formatting.
Run 3
Code Structure: Simple, logically organized imports followed by a focused exception class, though several imports appear unused in this snippet. Nesting: Flat, with no complex nesting. Clarity of intent: The class name and docstring clearly explain the connection timeout and retry behavior; however, ConnectionError and Timeout are not defined or imported here, leaving their origins unclear. Code length: Concise, with no unnecessary implementation. Action granularity: Each import and declaration occupies its own line. Reading flow: Natural top-to-bottom progression, although an additional blank line before the top-level class would improve conventional Python formatting.