repowiserepowise
Sign in
cyanfish/naps2
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowisecyanfish/naps2
NA
NA

cyanfish / naps2

csharpmaster391e72a71.0K linessynced 1mo ago

Code health

8.8out of 10Excellent

This codebase scores 8.8 out of 10 for code health, which we rate excellent. It also scores maintainability 9.1 and static performance 9.9 out of 10. The three are scored separately and never blended into one number. Risk is concentrated, as it usually is: 6 of 1,078 files are git hotspots, and they average 4.9 — which is where the fixes pay off most.

Full health report →
Documentation1,678pages0 with model-written prose, 1,678 built from the indexScore validation5/2011.7× baselineTop-ranked files that did go on to need a bug fixDead code203exportsUnused exports that nothing in the graph reaches

Do next

1 thing worth doing this quarter.

Worth planning

  • Delete 195 unused symbols and files (13,563 lines)

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

    symbols
    195
    lines
    13,563
    safe to delete
    Yes(inferred)
    Medium 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 7 proposed decisions

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

    proposed
    7
    accepted
    0
    Medium effort
Lines of code
71.0K
Files
1,078
Symbols
11,679
Modules
30
Languages
2

Recent activity

All commits →

Commits

  • c2fdf175Preserve KeyValueOptions when editing a profile1mo ago
  • a8b447c2Mac: Use Cmd instead of Ctrl for crop shortcut2mo ago
  • 9cd32546Update NAPS2.Sane.Binaries2mo ago
  • f2ba523aMac: Add manual duplex to menu2mo ago
  • 57063b74Add manual duplex icon in menu2mo ago
  • 702549f7Mac: Use macos help icon2mo ago

Decisions

  • Upgrade Eto.Forms to 2.8.3proposed · 1mo ago
  • Remove ImageContext from IMemoryImage constructorsproposed · 1mo ago
  • Remove 32-bit worker dependency on NAPS2.Lib.WinFormsproposed · 1mo ago
  • Use WorkerFactory for operations requiring worker processproposed · 1mo ago
  • Persist ProcessedImage data on disk when FileStorageManager is providedproposed · 1mo ago
  • Dispose ScanningContext disposes generated ProcessedImage objectsproposed · 1mo ago
▸

Everything we found

2,049 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 health546Nested complexity · NAPS2.Sdk/Scan/Internal/Escl/EsclScanDriver.cs15 findings · 8.0 deducted→
  • worst item is low severity. Refactoring45cycle[2]: JobInfo.cs->EsclServerState.cs+0.0 health, S effort · NAPS2.Escl.Server/EsclServerState.cs→
  • worst item is medium severity. Decisions13NAPS2.Lib/Lang/Resources/UiStrings.Designer.cs7 awaiting review · 6 hotspots ungoverned→
  • worst item is medium severity. Ownership1,072NAPS2.Lib.Mac/EtoForms/Mac/MacEtoPlatform.cs100% single-owner concentration, 5 commits in 90d→
  • worst item is low severity. Dead code373NAPS2.Images/FileStorageManager.csUnreachable symbol (100 lines)→

Composition

Open the graph →
csharp 100%
python 0%

Explore this codebase

  • Docs1,678 pages across 30 modules→
  • ChatAsk this codebase a question and get an answer with its sources.→
  • Files1,078 files with per-file docs, health and history→
  • ArchitectureDependency graph, layers, and 8 entry points→
  • Code healthPer-file scores, 581 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.→