repowiserepowise
Sign in
dundee/gdu
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowisedundee/gdu
GD
GD

dundee / gdu

gomaster02225e418.8K linessynced 4mo ago

Code health

6.7out of 10Fair

This codebase scores 6.7 out of 10 for code health, which we rate fair. Risk is concentrated, as it usually is: 28 of 158 files are git hotspots, and they average 5.6 — which is where the fixes pay off most.

Full health report →
Score validation15/202.3× baselineTop-ranked files that did go on to need a bug fixDead code14exportsUnused exports that nothing in the graph reaches

Do next

1 thing worth doing this quarter.

Worth planning

  • Delete 11 unused symbols and files (63 lines)

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

    symbols
    11
    lines
    63
    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 19 proposed decisions

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

    proposed
    19
    accepted
    0
    Medium effort
Lines of code
18.8K
Files
158
Symbols
1,371
Modules
7
Languages
3

Recent activity

All commits →

Commits

  • 02225e4cfix: implement IsDir and GetPath for SimpleDir (#583)4mo ago
  • a7cfa26fchore(deps): bump modernc.org/sqlite from 1.49.1 to 1.51.0 (#582)4mo ago
  • 5196bac5chore(deps): bump github.com/mattn/go-isatty from 0.0.21 to 0.0.22 (#559)4mo ago
  • 4498c3e8fix: import panic on wrong name (#581)4mo ago
  • 9207ec93chore(deps): bump github.com/gdamore/tcell/v2 from 2.13.9 to 2.13.10 (#579)4mo ago
  • 5aa3aab9fix: import panic for empty array (#578)4mo ago

Decisions

  • Support relative paths in ignore-dirs and ignore patterns (then revert path conversion)proposed
  • Show size of absent git-annex'ed files by extracting apparent size from broken symlinksproposed
  • Add --no-spawn-shell flag to restrict shell/external program accessproposed
  • Add SQLite analyzer and refactor fs file iteration/sortingproposed
  • Provide embedded pprof profiling via HTTPproposed
  • Persist analysis data using SQLite or BadgerDBproposed
▸

Everything we found

374 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 health214Untested hotspot · pkg/analyze/parallel_stable.go12 findings · 8.5 deducted→
  • worst item is medium severity. Decisions47pkg/analyze/sqlite.go19 awaiting review · 28 hotspots ungoverned→
  • worst item is medium severity. Ownership99pkg/analyze/parallel_top_dir.go100% single-owner concentration, 7 commits in 90d→
  • worst item is low severity. Dead code14SqliteAnalyzerUnreachable struct (4 lines)→

Composition

Open the graph →
go 98%
dockerfile 1%makefile 1%

Explore this codebase

  • Docs0 pages across 7 modules→
  • ChatAsk this codebase a question and get an answer with its sources.→
  • Files158 files with per-file docs, health and history→
  • ArchitectureDependency graph, layers, and 4 entry points→
  • Code healthPer-file scores, 273 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.→