Sample
int-8ddb9e7945f7-I06
Invert eligible conditions and exchange their branches
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0.885 | 0–1; higher is more readable |
| Scalabrino | 0.825 | 0–1; higher is more readable |
| Dorn | 0.578 | 0–1; higher is more readable |
| Mi | 0.116 | 0–1; higher is more readable |
| LLOC | 5 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 18.67 | 0–20; mean of three runs |
| GPT-6.1 Sol | 18 | 0–20; mean of three runs |
| BTTF | 0.726 | 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. | 60 | +24 |
| Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones. | 724.925 | −23.923 |
| 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.604 | −6.907 |
Intercept 8.87 + feature contributions = 2.041 (log-odds).
Score = sigmoid(2.041) = 0.885.
| Score | 0.825 |
|---|
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| 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. | 123.967 | −1.586 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 121.951 | +1.163 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 61 | −1.123 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.021 | +0.734 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 59.864 | +0.427 |
| 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. | 28 | +0.231 |
Intercept 0.07 + feature contributions = 0.315 (log-odds).
Score = sigmoid(0.315) = 0.578.
| Score | 0.116 |
|---|
| Score | 5 |
|---|
Run 1
The code is highly readable. Structure is logical, with clear package, imports, and interface definition. Nesting is nonexistent; methods are flat and concise. Intent is well-documented with Javadoc explaining purpose, usage, and discovery mechanism. Code length is appropriate for an interface with clear contracts. Each method signature is on one line, maintaining action granularity. Reading flow is natural, progressing from class-level docs to method declarations. Minor deductions: a Javadoc line slightly exceeds 80 characters and the return type description in the validate() method contains a line break, slightly disrupting flow. Overall, it exemplifies clean API design.
Run 2
The code is an interface with excellent readability. Structure is logical: package, imports, interface declaration, then methods in a natural order (validate, config, version). Nesting is nonexistent. Intent is clearly documented with comprehensive Javadoc explaining the purpose, use cases, and implementation requirements. The code is concise, containing only necessary methods with sensible default implementations. Each line performs a single logical action. Reading flow is natural—documentation precedes methods, and method ordering follows typical Java conventions. Minor deductions: the long Javadoc could be slightly condensed, and the @return doc for validate() has awkward line wrapping. Otherwise, it is nearly ideal as an API definition.
Run 3
The code is highly readable due to its clear structure: package declaration, imports, comprehensive Javadoc, and interface definition. Nesting is nonexistent (flat interface). The intent is unambiguous—the policy enforcement API is well-documented with examples and usage context. Code length is appropriate for a public interface with rich documentation. Action granularity is fine: each method or field is on its own line. Reading flow is natural: Javadoc precedes methods, and method order follows Java conventions (validate, config, version). Minor deductions: long Javadoc lines could be wrapped for narrower views, and the interface extends several types, which requires some navigation effort. Overall, near-exemplary readability.
Run 1
Code Structure: The interface is logically organized, with imports, interface documentation, validation, configuration, and version methods clearly separated. Nesting: Minimal nesting makes the code easy to scan. Clarity of intent: Descriptive names and detailed Javadocs explain the policy purpose, validation behavior, and return contracts. Code length: The implementation is concise, although documentation dominates and contains some wordy phrasing. Action granularity: Each declaration and return statement occupies its own line, with no bundled actions. Reading flow: The progression from interface purpose to individual methods is natural. Minor readability issues include missing spacing between package and imports, extra blank lines before validate, and inconsistent indentation in the @return documentation.
Run 2
Code Structure: The interface is logically organized, with imports, interface documentation, validation contract, and default methods. Nesting: Minimal nesting makes it easy to scan. Clarity of intent: Descriptive names and detailed Javadoc clearly explain policy validation, discovery, and configuration; the default version value "undefined" is slightly less informative. Code length: The implementation is concise, though documentation is somewhat wordy and extra blank lines add minor clutter. Action granularity: Each declaration and return statement occupies its own line, with no bundled actions. Reading flow: Methods follow a natural sequence and consistent formatting overall, but tightly packed imports and inconsistent indentation in the return documentation slightly interrupt readability.
Run 3
Code Structure: Logically organized interface with validation followed by configuration and version defaults. Nesting: Minimal, with no nested control flow. Clarity of intent: Descriptive names and comprehensive Javadoc clearly explain the policy's purpose and validation contract. Code length: Implementation is concise; documentation is useful but somewhat verbose. Action granularity: Each declaration and return occupies its own line, making individual operations easy to identify. Reading flow: Natural progression from interface documentation to method contracts and implementations. Minor readability issues include excess blank lines, imports without grouping, long documentation lines, and inconsistent indentation in the @return continuation.