Sample
pyint-04dc9b78b9d6-I02
Shorten method, parameter, and local names without collisions
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.67 | 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 concise and clearly structured. The import block is straightforward, with logical grouping: future import, typing, third-party, and local module. It correctly uses `TYPE_CHECKING` and `Any` for type hints. The class definition is flat, inheriting from two relevant exceptions, and includes a clear, purpose-driven docstring that explains when the error occurs and that retrying is safe. The action granularity is appropriate—one logical action per line—and the reading flow is natural from imports to class definition. Minor improvements could include adding a class body comment or a placeholder `pass` for clarity, and possibly reordering imports for PEP8 strictness, but overall readability is high.
Run 3
The code is well-structured and readable. It begins with standard future imports for type annotations, followed by necessary typing imports, and cleanly groups external and internal imports. Class hierarchy is clear, inheriting from both ConnectionError and Timeout, which accurately reflects intent. The docstring concisely explains when this exception occurs and whether retries are safe. Use of `from __future__ import annotations` demonstrates forward-thinking compatibility. Minor deductions: the import of `Any`, `TYPE_CHECKING`, `BaseHTTPError`, and `CompatJSONDecodeError` appear unused in this snippet, adding slight noise. Overall, the code is concise, flat, and follows Python conventions effectively.
Run 1
Code Structure: Imports followed by a focused exception class provide a logical organization, though several imports are unused in this snippet. Nesting: No nested control flow makes the code easy to scan. Clarity of intent: The class name and docstring clearly explain the connection timeout and retry safety; however, ConnectionError and Timeout are not defined or imported here, leaving their origins unclear. Code length: Short and appropriately concise. Action granularity: Each import and declaration occupies its own line, with no bundled operations. Reading flow: Natural top-to-bottom progression, although an additional blank line before the top-level class would improve visual separation.
Run 2
Code Structure: Imports precede a focused exception class, providing logical organization, though several imports appear unused and the base classes are not defined or imported in the snippet. Nesting: Minimal, with only a class-level docstring. Clarity of intent: The class name and docstring clearly describe a connection timeout and retry safety. Code length: Very concise, although unused imports add noise. Action granularity: Each import and declaration occupies its own line, with no packed statements. Reading flow: Natural top-to-bottom progression; an additional blank line before the class and visible definitions or imports for its bases would improve readability.
Run 3
Code Structure: Simple, logically organized imports followed by a single exception class, though some imports appear unused in this snippet. Nesting: Flat, with no nested control flow. Clarity of intent: The class name and docstring clearly describe a connection timeout and indicate that retries are safe; however, ConnectionError and Timeout are not defined or imported here, leaving their origins unclear. Code length: Concise, without unnecessary implementation. Action granularity: Each import and declaration occupies its own line. Reading flow: Natural top-to-bottom progression, although additional spacing between import groups and before the class would improve visual separation.