Sample
pyint-b7b217e3dc2d-I06
Invert eligible conditions and exchange their branches
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 | 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 clean and readable. It starts with standard imports (`__future__`, typing, urllib3, local compat), logically grouped. The class `ConnectTimeout` inherits from both `ConnectionError` and `Timeout`, and its purpose is immediately clear from the name and docstring. The docstring is concise and explains both the cause and whether retries are safe. There is no unnecessary nesting, no long methods, and each line performs a single action. The only minor deductions are the unused `TYPE_CHECKING` and `Any` imports, and the alias `BaseHTTPError`/`CompatJSONDecodeError` are imported but not used in this snippet, which slightly reduces clarity of intent.
Run 3
The code is highly readable. It uses clear imports with aliases and proper type-checking guards. The class definition is concise with a single, well-written docstring that explains both purpose and retry safety. Structure is clean and flat with no nesting or unnecessary code. The only minor deductions are due to the slightly indirect import structure and the fact that BaseHTTPError is imported but unused in this snippet, which could slightly obscure intent.
Run 1
Code Structure: Imports followed by a single exception class provide straightforward organization, although ConnectionError and Timeout are not defined or imported in the snippet. Nesting: Minimal, with only the class body indented. Clarity of intent: The descriptive class name and docstring clearly explain the connection timeout and retry safety. Code length: Concise, but several unused imports add noise in this isolated snippet. Action granularity: Each import and declaration occupies its own line, making individual elements easy to identify. Reading flow: Natural top-to-bottom progression, though grouping imports and adding another blank line before the class would improve visual separation.
Run 2
Code Structure: Imports precede a focused exception class, giving the snippet a logical organization. Nesting: There is no unnecessary nesting. Clarity of intent: The descriptive class name and docstring clearly explain the connection timeout and retry safety, although ConnectionError and Timeout are not explicitly defined or imported in this snippet. Code length: The class is concise, but several imports appear unused in the shown code. Action granularity: Each import and declaration occupies its own line, with no compressed operations. Reading flow: The progression from imports to declaration to documentation is natural; an additional blank line before the top-level class would improve conventional Python formatting.
Run 3
Code Structure: Imports followed by a single exception class provide a simple, logical organization. Nesting: No unnecessary nesting; only the class and its docstring. Clarity of intent: The class name, inheritance, and docstring clearly convey a connection timeout and retry safety, although ConnectionError and Timeout are not defined or imported in the snippet. Code length: Very concise, but several imports appear unused in the provided code. Action granularity: Each statement occupies its own line, with no bundled actions. Reading flow: Straightforward top-to-bottom flow; an additional blank line before the top-level class and clearer import grouping would improve formatting.