guardian/scala-school-json-workshop Sample repo showing JSON parsing & encoding in Scala |
for people* (4/10)
for AI* (4/9)
Rule-of-thumb estimates
Rebuild value
Maintenance effort
analysis.maintainabilityScores.- Volume10.0×15 lines of main code
For people: More code is more to learn, search and keep in mind; onboarding and judging a change's impact slow down as it grows.
For AI agents: An agent sees only a slice at a time: the bigger the code base, the more it searches, and the likelier it misses relevant code or rewrites an existing helper.
- Duplication10.0×10% of main code duplicated
For people: A fix in one copy must be repeated in all the others; a missed copy becomes a bug.
For AI agents: Agents copy the patterns they find, so duplicates multiply; a change to one copy misses the others, and every copy costs context.
- File size10.0×0.750% of main code in files > 500 lines
For people: Large files are hard to navigate, mix responsibilities and attract merge conflicts.
For AI agents: Agents read whole files into their context: every change to a large file costs many tokens and crowds out other relevant code.
- Tests presence10.0×0.75300 test lines per 100 main lines
For people: A test suite documents the intended behaviour and makes changes safe. Counted is whether there is one of reasonable size, not its coverage.
For AI agents: Tests let an agent check its own work; without them its mistakes surface later, in review or in production.
- Volume10.0×0.755 lines of main code
For AI agents: An agent sees only a slice at a time: the bigger the code base, the more it searches, and the likelier it misses relevant code or rewrites an existing helper.
For people: More code is more to learn, search and keep in mind; onboarding and judging a change's impact slow down as it grows.
- Duplication10.0×1.50% of main code duplicated
For AI agents: Agents copy the patterns they find, so duplicates multiply; a change to one copy misses the others, and every copy costs context.
For people: A fix in one copy must be repeated in all the others; a missed copy becomes a bug.
- File size10.0×1.750% of main code in files > 500 lines
For AI agents: Agents read whole files into their context: every change to a large file costs many tokens and crowds out other relevant code.
For people: Large files are hard to navigate, mix responsibilities and attract merge conflicts.
- Tests presence10.0×1.5300 test lines per 100 main lines
For AI agents: Tests let an agent check its own work; without them its mistakes surface later, in review or in production.
For people: A test suite documents the intended behaviour and makes changes safe. Counted is whether there is one of reasonable size, not its coverage.
- 1Article.scalasrc/main/scala/example/model/3 LOC
- 2Tag.scalasrc/main/scala/example/model/2 LOC
| Standard analyses: | Main Code: 5 LOC (2 files) = SCALA (100%) Secondary code: Test: 15 LOC (1); Generated: 0 LOC (0); Build & Deploy: 48 LOC (3); Other: 15 LOC (2); |
||
| Duplication: 0% | |||
| File Size: 0% long (>1000 LOC), 100% short (<= 200 LOC) | |||
|
|
Logical Component Decomposition: primary (1 component) | ||
| Goals: Keep the system simple and easy to change (4) | |||
| Experimental analyses (less reliable heuristic analyses): | |||
|
|
Static Component Dependencies: primary (1 component) | ||
No commit history found.
Visual Code Explorers
| MAIN (2) | Circles | Sunburst | |
| TEST (1) | Circles | Sunburst | |
| BUILD AND DEPLOYMENT (3) | Circles | Sunburst | |
| GENERATED (0) |
Circles
|
Sunburst
|
|
| OTHER (2) | Circles | Sunburst |
File Visualizations
File size views:
File age views:
File change frequency views:
Contributors per file views:
Contributor Visualizations
Contributor dependency views:
Components and Dependencies Visualizations
| Components | Temporal Dependencies | Duplication | Commits Racing Charts | ||||||||||
| 30 days | 3 months | 6 months | |||||||||||
| PRIMARY (1) | Bubble Chart | Tree Map |
2D
|
3D
|
2D
|
3D
|
2D
|
3D
|
All Time | 12 Months | |||
File Dependencies Visualizations
Temporal dependencies among files:
|
Units Visualizations
Unit size and conditional complexity views:
Lists of Files Per Scope
- MAIN (2 files)
- TEST (1 file)
- BUILD AND DEPLOYMENT (3 files)
-
GENERATED
- OTHER (2 files)
- FILES: History Data
- IGNORED FILES: By Extension | By Rule
Analysis Results
- CONFIGURATION: JSON
- ALL ANALYSIS RESULTS: JSON
- DUPLICATES: TXT | JSON
- UNITS: TXT | JSON
- CONTRIBUTORS: TXT | JSON
- LOGICAL DECOMPOSITIONS: JSON
- CONCERNS: JSON
- CONTROLS: TXT
- ALL METRICS: TXT