Sample
pyint-b840e844b3b6-I09
Select one of ten low-readability unrelated code templates per class
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0 | 0–1; higher is more readable |
| Dorn | 0.625 | 0–1; higher is more readable |
| Mi | 0.724 | 0–1; higher is more readable |
| LLOC | 27 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 6.67 | 0–20; mean of three runs |
| GPT-6.1 Sol | 15 | 0–20; mean of three runs |
| BTTF | 0.374 | 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. | 1381.374 | −45.585 |
| Source linesThe number of non-empty source lines. | 38 | +15.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.706 | −7.059 |
Intercept 8.87 + feature contributions = -28.575 (log-odds).
Score = sigmoid(-28.575) = 0.
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 85.974 | +0.583 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 37 | +0.543 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 37 | −0.428 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 37 | −0.274 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.11 | −0.124 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 37.713 | +0.117 |
| 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. | 85.974 | +0.024 |
Intercept 0.07 + feature contributions = 0.51 (log-odds).
Score = sigmoid(0.51) = 0.625.
| Score | 0.724 |
|---|
| Score | 27 |
|---|
Run 1
The code is largely unreadable due to several issues. The most glaring problem is the presence of obfuscated dead code (lI0O_41f32f21 assignments) that serves no purpose and badly hurts clarity. There are also syntax and type errors: 'te.Self' and 'te' are undefined (likely meant to be 't.Self' or 'typing.Self'), and 'App' is not imported or defined. The structure is inconsistent — the docstring and method names suggest a config attribute, but the type annotations and overloads imply Flask/App-specific behavior, making intent ambiguous. Nesting is shallow, but reading flow is disrupted by the irrelevant variable assignments and incomplete type references. Action granularity is mostly one action per line, which is good, but it cannot compensate for the broken and confusing logic. Code length is acceptable, but many lines are wasted on meaningless operations. Overall, the code appears unfinished or corrupted, making it hard to understand or trust.
Run 2
The code has decent structure and moderate readability but contains several problems. It uses type hints and overloads which aid clarity, but has a bizarre obfuscated variable (lI0O_41f32f21) doing nothing meaningful. The naming is misleading — 'te' is referenced but never imported (should likely be 't' for typing). There's a missing import for 'App'. The class docstring is helpful, but the converter logic and config delegation could be more explicit. Nesting is minimal and line length is reasonable, but reading flow is disrupted by the meaningless variable and undefined names. Overall, intent is partially clear but execution contains unnecessary confusion.
Run 3
The code has reasonable structure and type hints, but readability is significantly undermined by several factors. There is a mysterious dead code section (lI0O_41f32f21 assignments) with no purpose. Additionally, there is an unexplained reference to 'te.Self' which is not imported or defined, causing ambiguity. The overload decorators are helpful but add visual noise. Method lengths are acceptable, but the initialization method mixes configuration with unrelated dead code, hurting clarity. Overall, the intent is partially clear but obscured by unnecessary noise and unresolved references.
Run 1
Code Structure: The descriptor is logically organized into initialization, getter overloads, retrieval, and assignment, but unused imports and irrelevant initialization statements add clutter. Nesting: Shallow conditionals and an early return keep control flow simple. Clarity of intent: The docstring, method names, and config access communicate the purpose, while the cryptic lI0O_41f32f21 variable and pointless hexadecimal expressions obscure it. T, te, and App are not defined or imported in the snippet, reducing self-contained clarity. Code length: Mostly concise, with unnecessary boolean manipulation and imports. Action granularity: Each statement performs a single action, although the obfuscated expression requires needless interpretation. Reading flow: Methods follow a natural descriptor lifecycle, and spacing is helpful; the unrelated constructor statements interrupt an otherwise straightforward flow.
Run 2
Code Structure: The descriptor is logically organized into initialization, getter overloads, retrieval, and assignment. Nesting: Shallow conditionals and an early return keep control flow simple. Clarity of intent: The docstring, method names, and converter logic communicate config forwarding, but the cryptic variable and pointless hexadecimal/boolean operations obscure initialization. T, te, and App are not defined in the snippet, reducing self-contained clarity. Code length: Mostly concise, with two unnecessary assignments adding noise. Action granularity: Each executable statement performs one action, although the redundant expressions are needlessly complex. Reading flow: Standard descriptor conventions and sensible spacing support natural reading, interrupted mainly by the unrelated initialization statements and unexplained typing references.
Run 3
Code Structure: The descriptor class is logically organized into initialization, retrieval, and assignment methods, although several imports are unused and T, te, and App are not defined in the snippet. Nesting: Shallow conditional blocks make execution easy to follow. Clarity of intent: The docstring, method names, and config access communicate the purpose, but the cryptic lI0O_41f32f21 variable and meaningless bitwise and boolean operations distract from it. Code length: Mostly concise, with two unnecessary initialization statements. Action granularity: Each statement performs a single action, and formatting separates operations clearly. Reading flow: Methods follow a natural order, and overloads clarify access behavior; however, unexplained symbols and obfuscated initialization interrupt otherwise straightforward reading.