repowiserepowise
Sign in
chunkhound/chunkhound
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowisechunkhound/chunkhound
CH
CH

chunkhound / chunkhound

pythonmainf57f383206.4K linessynced 2mo ago

Code health

6.3out of 10Fair

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

Full health report →
Documentation1,239pages
0 with model-written prose, 1,239 built from the index
Score validation17/205.4× baselineTop-ranked files that did go on to need a bug fixDead code45exportsUnused exports that nothing in the graph reaches

Do next

5 things worth doing this quarter.

Worth planning

  • Update the decision “Fix reasoning model output token budget for single-pass synthesis”: the code it governs has moved on

    Agents and reviewers still follow it, so they are steered by a rule the code no longer keeps.

    status
    Accepted, drifting
    Small effort, worth a check
  • Update the decision “Allocate utility operation reasoning token budgets”: the code it governs has moved on

    Agents and reviewers still follow it, so they are steered by a rule the code no longer keeps.

    status
    Accepted, drifting
    Small effort, worth a check
  • Delete 38 unused symbols and files (509 lines)

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

    symbols
    38
    lines
    509
    safe to delete
    Yes(inferred)
    Medium effort
  • Update the decision “Set follow-up output token budget for reasoning models”: the code it governs has moved on

    Agents and reviewers still follow it, so they are steered by a rule the code no longer keeps.

    status
    Accepted, drifting
    Small effort, worth a check
  • Update the decision “Default language detection to MATLAB for .m files lacking Objective-C markers”: the code it governs has moved on

    Agents and reviewers still follow it, so they are steered by a rule the code no longer keeps.

    status
    Accepted, drifting
    Small effort, worth a check
Lines of code
206.4K
Files
875
Symbols
10,945
Modules
8
Languages
6

Recent activity

All commits →

Commits

  • f57f383afeat(embedding): add 'voyage' rerank format for native VoyageAI endpoints (#383)2mo ago
  • 69eff807refactor(config): remove unused custom pydantic settings sources (YAML/TOML/JSON/CLI) (#389)2mo ago
  • bd4c97f7Fetchurl MCP tool and MCP command (#386)2mo ago
  • fa781e5eProvider-managed synthesis output (#384)2mo ago
  • e18a1c72feat(research): single-hop `previous_query` chaining for websearch and code_research (#364)2mo ago
  • 9cdfe7a1feat(site): add enterprise architecture proposal, configurable social meta, and canonical URL support (#379)2mo ago

Decisions

  • Shared, picklable file pattern matching helpersactive · 2mo ago
  • Fix reasoning model output token budget for single-pass synthesisactive · 2mo ago
  • Allocate utility operation reasoning token budgetsactive · 2mo ago
  • Set follow-up output token budget for reasoning modelsactive · 2mo ago
  • Checkpoint embedding writes for semantic search visibilityactive · 2mo ago
  • Create asyncio.Lock inside the event loopactive · 2mo ago
▸

Everything we found

4,812 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 health3,500Untested hotspot · chunkhound/services/indexing_coordinator.py176 findings · 10.0 deducted→
  • worst item is medium severity. Refactoring437add_map_subparser+1.5 health, L effort · chunkhound/api/cli/parsers/code_mapper_parser.py→
  • worst item is high severity. Decisions98Fix reasoning model output token budget for single-pass synthesis4 drifting from the code · 36 awaiting review · 58 hotspots ungoverned→
  • worst item is medium severity. Ownership735chunkhound/utils/websearch_core.py99% single-owner concentration, 9 commits in 90d→
  • worst item is low severity. Dead code42LocalEmbeddingProviderUnreachable class (23 lines)→

Composition

Open the graph →
  • python96%
  • shell1%
  • typescript<1%
  • javascript<1%
  • rust<1%
  • Other<1%

Explore this codebase

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