Sample
int-4a5d5b04e6df-I07
Insert deterministic runtime-dead branches into callable bodies
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0.993 | 0–1; higher is more readable |
| Dorn | 0.687 | 0–1; higher is more readable |
| Mi | 0.471 | 0–1; higher is more readable |
| LLOC | 1 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 18.33 | 0–20; mean of three runs |
| GPT-6.1 Sol | 19 | 0–20; mean of three runs |
| BTTF | 0.686 | 0–1; higher is more readable |
Views
Loading feature diagnosis…
Source regions
Feature contributions
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Source linesThe number of non-empty source lines. | 45 | +18 |
| Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones. | 445 | −14.685 |
| 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.832 | −7.247 |
Intercept 8.87 + feature contributions = 4.938 (log-odds).
Score = sigmoid(4.938) = 0.993.
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.028 | +0.667 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 88.957 | +0.631 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 46 | −0.592 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 44.933 | +0.218 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 18 | −0.115 |
| 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. | 88.935 | −0.102 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 18 | +0.008 |
Intercept 0.07 + feature contributions = 0.786 (log-odds).
Score = sigmoid(0.786) = 0.687.
| Score | 0.471 |
|---|
| Score | 1 |
|---|
Run 1
The code demonstrates excellent readability. The package and imports are logically ordered. Javadoc is thorough yet clearly formatted with paragraph breaks and links. Annotations like @Target and @Retention are placed cleanly above the interface declaration. The single method 'millis()' is documented concisely, and the code is flat—no nesting or complex conditionals. Structure is minimal and purposeful, reflecting the nature of a simple annotation definition. Names are self-explanatory. While concise, the deprecation note is slightly long, but overall the code is very clear and easy to scan.
Run 2
This code is highly readable. The structure is logical, with imports, Javadoc, annotations, and the interface declaration clearly separated. Nesting is minimal, consisting only of the annotation declaration and its single method. The intent is unambiguous: it defines a deprecated test timing annotation with a required millis() attribute. Code length is appropriate, with concise imports and a single abstract method without unnecessary boilerplate. Each action—imports, target declaration, retention, deprecation, and method—appears on its own line. Reading flow is natural, moving from external dependencies through documentation to the declaration. The Javadoc is thorough but not excessive, explaining usage, deprecation, and related classes effectively.
Run 3
The code is a well-structured Java annotation definition with clear organization. It begins with necessary imports, followed by comprehensive Javadoc documentation explaining the annotation's purpose, constraints, and deprecation. The annotation target and retention policies are clearly specified using standard annotations. The single method 'millis()' is documented and has a clear purpose. The code is flat with no nesting, demonstrates clear intent through descriptive naming and documentation, and maintains concise length without unnecessary complexity. The reading flow is natural, with documentation smoothly leading into the annotation definition. The only minor consideration is the deprecation warning which adds slight complexity but is appropriately documented.
Run 1
Code Structure: Standard Java organization cleanly separates imports, documentation, annotation metadata, and the declaration. Nesting: Essentially flat, with only one member inside the annotation. Clarity of intent: Timed and millis() clearly express a test timeout, while Javadoc explains units, scope, and deprecation. Code length: Implementation is minimal; documentation is longer but relevant rather than redundant. Action granularity: Each import, metadata annotation, and member declaration occupies its own line, making individual elements easy to scan. Reading flow: The progression from purpose and usage details to metadata and the timeout member is natural. Minor formatting issues, such as the lack of a blank line after the package declaration and an extra blank line before the closing brace, slightly reduce polish.
Run 2
Code Structure: Logically organized into imports, documentation, annotation metadata, and a single member. Nesting: Essentially flat, with only the annotation declaration enclosing millis(). Clarity of intent: Timed and millis() communicate purpose clearly; Javadoc explains timing scope, failure behavior, and deprecation. Code length: The implementation is minimal, while the longer documentation provides useful context rather than unnecessary complexity. Action granularity: Each import, annotation, and member declaration occupies its own line. Reading flow: Natural top-to-bottom progression with consistent formatting. A blank line between the package declaration and imports would slightly improve visual separation.
Run 3
Code Structure: Logically organized into imports, documentation, annotation metadata, and a single member. Nesting: Essentially flat, with only the annotation declaration enclosing millis(). Clarity of intent: The Timed name, millis() member, and detailed documentation clearly explain timeout behavior, scope, and deprecation. Code length: The implementation is minimal; documentation is longer but useful rather than unnecessary. Action granularity: Each import, annotation, and declaration occupies its own line. Reading flow: Follows conventional Java ordering and reads naturally. Minor formatting issues, including no blank line after the package declaration and an extra blank line before the closing brace, slightly reduce polish.