Sample
pyint-1e82ee0019f6-SRC
Unmodified source class
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0 | 0–1; higher is more readable |
| Dorn | 0.815 | 0–1; higher is more readable |
| Mi | 0.382 | 0–1; higher is more readable |
| LLOC | 18 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 17 | 0–20; mean of three runs |
| GPT-6.1 Sol | 18 | 0–20; mean of three runs |
| BTTF | 0.569 | 0–1; higher is more readable |
Views
Loading feature diagnosis…
Source regions
Feature contributions
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones. | 782.526 | −25.823 |
| Source linesThe number of non-empty source lines. | 33 | +13.2 |
| 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.439 | −6.659 |
Intercept 8.87 + feature contributions = -10.412 (log-odds).
Score = sigmoid(-10.412) = 0.
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.038 | +0.577 |
| 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.912 | +0.492 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 1 | +0.398 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 31 | +0.335 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 33.088 | −0.271 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 34 | −0.167 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 32.934 | +0.051 |
Intercept 0.07 + feature contributions = 1.485 (log-odds).
Score = sigmoid(1.485) = 0.815.
| Score | 0.382 |
|---|
| Score | 18 |
|---|
Run 1
The code is well-structured and readable. It uses clear imports, logical class definition, and a focused exception class with a single responsibility. The constructor builds an error message via a list of strings, which is a clean approach. Nesting is minimal (one conditional), and each line generally performs one logical action. The f-strings and multi-line string concatenation are readable, though the mixing of f-strings and plain string concatenation slightly interrupts flow. The class docstring explains intent clearly. Minor deductions: 'AssertionError' in the base classes is unusual and could confuse readers; 'form_matches' could be more descriptively named. Overall, the code is concise, well-organized, and easy to follow.
Run 2
The code is well-structured and readable. It has a clear single-purpose class with a focused responsibility: providing a better error message for a specific debugging scenario. The nesting is minimal, with only one conditional block, keeping the logic flat and easy to follow. Variable and method names are descriptive, and the error message construction is logical. The code is concise—no unnecessary lines or complex abstractions. Each action (checking form matches, building strings, joining) is on its own line, improving readability. The reading flow is natural: from the class docstring, to the constructor's error message building, to the string representation. Minor potential improvements could include slightly better grouping of the f-strings, but overall the code is highly readable.
Run 3
The code is well-structured and readable. It uses clear naming, docstrings, and typing. The exception class has a single responsibility and constructs a useful error message logically. Line length is managed with string concatenation, and nesting is minimal with only one conditional. The reading flow is natural: initialization, message building, conditional addition, string rendering. Minor drawbacks: string assembly via list and join is slightly verbose for the simple case, and the triple-purpose inheritance (KeyError, AssertionError) may be non-obvious without context. Overall intent is clear and the code is maintainable.
Run 1
Code Structure: The exception class is logically organized, with message construction in __init__ and string representation in __str__. Several unused imports add clutter, and Request is not imported in the snippet. Nesting: Only one shallow conditional keeps the code easy to follow. Clarity of intent: The descriptive class name, docstring, and explicit error message clearly explain its purpose; buf is slightly generic. Code length: The implementation is concise, with most length devoted to useful diagnostic text. Action granularity: Each statement performs one clear operation, and multiline strings improve readability without combining unrelated actions. Reading flow: The sequence naturally progresses from checking submitted form values to building the message and exposing it through __str__.
Run 2
Code Structure: The exception class cleanly separates message construction from string representation. Nesting: Only one shallow conditional keeps control flow simple. Clarity of intent: Descriptive names, type annotations, and a helpful docstring make the purpose clear, although Request is not imported in the snippet and several imports are unused. Code length: The implementation is concise; most of its length supports a detailed diagnostic message. Action granularity: Each statement performs a distinct operation, with no crowded multi-action lines. Reading flow: The sequence from inspecting form data to constructing and returning the message is natural. Minor distractions include unused imports, limited spacing around top-level declarations, and the long message split across several string literals.
Run 3
Code Structure: The exception class is logically organized, with message construction in __init__ and rendering in __str__. Nesting: A single conditional keeps the code flat and easy to follow. Clarity of intent: The descriptive class name, docstring, and explicit error message clearly explain its purpose; however, Request is not imported in the snippet, and several imports appear unused. Code length: The implementation is compact, although the lengthy message dominates the code. Action granularity: Statements generally perform one action each, with readable multiline formatting for strings. Reading flow: Execution flows naturally from retrieving form values to building the message and optionally adding filenames. Minor spacing issues between imports and the class, along with unused imports, slightly reduce readability.