Sample

Scalabrio177

Human rating uses the original dataset scale.

DatasetScalabrino
Human2.89
Lines40

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett00–1; higher is more readable
0.5Δ 11.3
Scalabrino0.0170–1; higher is more readable
0.0Δ 11.8
Dorn0.2440–1; higher is more readable
30.7Δ 18.8
Mi0.3040–1; higher is more readable
57.8Δ 46.0
LLOC37Logical lines; fewer is more readable
0.0Δ 11.8
DeepSeek V4 Pro140–20; mean of three runs
49.2Δ 37.4
GPT-6.1 Sol170–20; mean of three runs
58.5Δ 46.7
BTTF0.350–1; higher is more readable
6.0Δ 5.8
Human2.891–5; original rating
11.8

Views

Download official ZIP ↗

Select the downloaded ZIP or its extracted folder. Files stay in your browser.

Loading feature diagnosis…

Source regions

Feature contributions

Feature contributions

FeatureValueContribution
(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.2959.236−97.655
Source linesThe number of non-empty source lines.40+16
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.889−7.334

Intercept 8.87 + feature contributions = -80.118 (log-odds).
Score = sigmoid(-80.118) = 0.

Score0.017

Feature contributions

FeatureValueContribution
(log-odds)
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.1+1.001
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.0−0.804
Indentation frequencyHow rapidly indentation changes from line to line.1−0.703
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.158−0.592
Number layout frequencyHow rapidly the number of numeric values per line changes through the code.40−0.497
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.79.9+0.281
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.37.358+0.112

Intercept 0.07 + feature contributions = -1.132 (log-odds).
Score = sigmoid(-1.132) = 0.244.

Score0.304
Score37
Run 1

The code is structured logically with a clear test flow: setup, annotation assertions, then detailed attribute verification. It is flat with no nesting, which aids readability. Intent is clear—testing ORM mapping overrides—and each assertion typically occupies one line, aligning with action granularity. However, the method is lengthy due to numerous repetitive assertions, which reduces conciseness. The reading flow is natural but somewhat monotonous. Variable names like 'overridesAnno' and 'overrides' are descriptive, but the sheer volume of similar assertions makes scanning harder. Overall, readable but would benefit from helper methods or data-driven testing to reduce repetition.

Run 2

The code has a clear, linear structure and each assertion is on its own line, which aids readability. It is not deeply nested and the intent is straightforward: verifying annotation overrides. However, it is unnecessarily long due to repetitive assertions that could be grouped or refactored. The repeated `overrides[0].column()` and `overrides[1].column()` calls create visual noise and reduce clarity. The reading flow is natural but becomes monotonous. Overall, it is readable but verbose, with room for improvement in conciseness and abstraction.

Run 3

The code is a straightforward unit test with clear intent and logical structure, following a setup-assert-verify pattern. Nesting is minimal, and each line generally contains one assertion. However, readability is impacted by repetitive, verbose assertions on deeply nested properties (e.g., overrides[0].column().name()), which lengthens the code and reduces scanning efficiency. While the sequence is predictable, the granularity of assertions makes it harder to see the test's overall purpose at a glance. Some minor inconsistencies in spacing and line breaks (e.g., the reader assignment and annotation retrieval) slightly disrupt the reading flow.

Run 1

Code Structure: Logically ordered into setup, annotation checks, and verification of two overrides, though blank lines would better separate these phases. Nesting: Completely flat, making execution easy to follow. Clarity of intent: The descriptive test name and explicit assertions clearly communicate the expected behavior; numeric array indices slightly weaken identification of each override. Code length: Reasonable for comprehensive verification, but repeated column access and parallel assertion blocks add verbosity. Action granularity: Each statement performs one clear action, with one assertion per line. Reading flow: Consistent assertion ordering makes the two override configurations easy to compare, although the uninterrupted block and split annotation lookup mildly hinder scanning.

Run 2

Code Structure: Logically organized into setup, annotation checks, and validation of two overrides, though blank lines would better separate these phases. Nesting: Completely flat, making execution easy to follow. Clarity of intent: The descriptive test name and explicit assertions clearly communicate the expected behavior; indexed overrides and repeated column access add minor cognitive overhead. Code length: Somewhat lengthy and repetitive, but most assertions serve distinct validation purposes. Action granularity: Each statement performs one clear action, with no compressed multi-action lines. Reading flow: Assertions proceed naturally from annotation presence to override count and individual properties, using the same property order for both overrides. Repeated expressions and the awkwardly wrapped annotation retrieval slightly interrupt an otherwise straightforward flow.

Run 3

Code Structure: Logically organized into setup, annotation checks, and assertions for each override, though blank lines would better distinguish these sections. Nesting: Completely flat, making execution easy to follow. Clarity of intent: The descriptive test name and explicit assertions clearly communicate the behavior being verified; repeated indexed access is slightly less expressive than named local variables. Code length: Reasonable for thorough validation, but repeated column access and similar assertion sequences add verbosity. Action granularity: Each statement performs one clear action, with no compressed multi-action lines. Reading flow: Follows a natural setup-to-verification progression, and both overrides are checked in a consistent order. The dense assertion block and awkwardly wrapped annotation retrieval slightly reduce scanability.