repowiserepowise
Sign in
juliusbrussee/caveman
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowisejuliusbrussee/caveman
CA
CA

juliusbrussee / caveman

javascriptpythonmain0d95a8112.2K linessynced 2mo ago

Code health

6.4out of 10Fair

This codebase scores 6.4 out of 10 for code health, which we rate fair. It also scores maintainability 8.1 and static performance 9.4 out of 10. The three are scored separately and never blended into one number. Risk is concentrated, as it usually is: 9 of 143 files are git hotspots, and they average 3.8 — which is where the fixes pay off most.

Full health report →
Documentation84pages0 with model-written prose, 84 built from the indexScore validation17/203.4× baselineTop-ranked files that did go on to need a bug fixDead code13exportsUnused exports that nothing in the graph reaches

Do next

2 things worth doing this quarter.

Worth planning

  • Break up installOpencode (CCN 48, 155 lines)

    bin/install.js:783

    installOpencode nests its control flow deeply, and part of it is duplicated, so splitting it also removes a copy; changed 20 times in 90 days.

    gain
    up to +0.5 health on this file(inferred)
    finding
    Nested complexity
    size
    CCN 48, 155 lines, nests 7 deep
    severity
    critical
    Medium effort, worth a check
  • Delete 5 unused symbols and files (52 lines)

    Nothing in the graph reaches them, across 2 files; every reader and agent pays to skip them.

    symbols
    5
    lines
    52
    safe to delete
    Yes(inferred)
    Small effort

Improve what Repowise can see

  • Add a test coverage report

    Without one, Repowise cannot tell tested code from untested code, so every test-related action says “unknown”.

    line coverage
    Unknown, no report
    Small effort
  • Review the 46 proposed decisions

    None is accepted yet, so nothing can drift from one and agents get no enforced guidance from them.

    proposed
    46
    accepted
    0
    Medium effort
Lines of code
12.2K
Files
143
Symbols
464
Modules
8
Languages
3

Recent activity

All commits →

Commits

  • 0d95a81dchore: sync SKILL.md copies [skip ci]3mo ago
  • e2c09c9adocs: flatten savings claim to a flat 65% across all surfaces; bump PINNED_REF to v1.9.13mo ago
  • dc95e915Caveman Updated Skill + Readme3mo ago
  • 686c0cceTeaser; Caveman 23mo ago
  • e9cb8435fix(#601): attribute session tokens to the mode active when each message happened3mo ago
  • a8846964fix(#597): ship spawn-options.js in caveman-shrink npm package3mo ago

Decisions

  • Export spawn options so behavior is unit-testable without rerunning CLIproposed · 2mo ago
  • Use shell:false for POSIX spawn to avoid argv quoting surprisesproposed · 2mo ago
  • fix(hooks): /caveman arg whitelist + symlinked-parent ~/.claude supportproposed · 2mo ago
  • fix(#565): install.ps1 works when piped to iexproposed · 2mo ago
  • fix(opencode): real lifecycle hooks + ship caveman-compress commandproposed · 2mo ago
  • fix(#601): attribute session tokens to the mode active when each message happenedproposed · 2mo ago
▸

Everything we found

367 open

Every detector's open count by area, each with its worst example. An inventory, not a to-do list: the actions above are the part worth doing.

  • worst item is critical severity. Code health231Nested complexity · bin/install.js66 findings · 8.0 deducted→
  • worst item is medium severity. Refactoring27compress_file+1.2 health, S effort · plugins/caveman/skills/caveman-compress/scripts/compress.py→
  • worst item is medium severity. Decisions55bin/install.js46 awaiting review · 9 hotspots ungoverned→
  • worst item is medium severity. Ownership46bin/install.js92% single-owner concentration, 20 commits in 90d→
  • worst item is low severity. Dead code8evals/measure.pyUnreachable symbol (60 lines)→

Composition

Open the graph →
javascript 52%python 41%
shell 7%

Explore this codebase

  • Docs84 pages across 8 modules→
  • ChatAsk this codebase a question and get an answer with its sources.→
  • Files143 files with per-file docs, health and history→
  • ArchitectureDependency graph, layers, and 4 entry points→
  • Code healthPer-file scores, 277 open findings, coverage and refactoring targets→
  • Knowledge graphEntities, communities, and the paths between them→
  • Change couplingFiles that keep changing together, mined from commit history→
  • CommitsChange-risk ranked history with agent provenance→
  • ContributorsBus factor, per-file maintainers, and the human/agent split→
  • StatsSize class, origin, lifetime churn, rhythm and records→
  • CostsWhat indexing this snapshot cost, by model and by run.→