repowiserepowise
Sign in
emdash-cms/emdash
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowiseemdash-cms/emdash
EM
EM

emdash-cms / emdash

typescriptmaine8e8a2d454.5K linessynced 2mo ago

Code health

7.6out of 10Good

This codebase scores 7.6 out of 10 for code health, which we rate good. It also scores maintainability 8.6 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: 224 of 2,388 files are git hotspots, and they average 4.8 — which is where the fixes pay off most.

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

Do next

1 thing worth doing this quarter.

Worth planning

  • Delete 297 unused symbols and files (12,216 lines)

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

    symbols
    297
    lines
    12,216
    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 61 proposed decisions

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

    proposed
    61
    accepted
    0
    Medium effort
Lines of code
454.5K
Files
2,388
Symbols
16,869
Modules
12
Languages
4

Recent activity

All commits →

Commits

  • e8e8a2d9chore(flue-review): switch reviewer to GLM-5.2 with reduced reasoning (#2014)2mo ago
  • 6fb52b08feat(core): add media usage repair tooling (#2007)2mo ago
  • c24b7d3bfix(loader): seek taxonomy-filtered listings via a denormalized pivot (#1962)2mo ago
  • 44e26856fix(admin): center empty-state placeholder in Image/File/media picker fields (#1940)2mo ago
  • 6c96ac8bfix(visual-editing): flush unsaved inline edits on pagehide (#1945)2mo ago
  • d2fb7671chore: extract locale catalogs [skip ci]2mo ago

Decisions

  • Provide typed query wrappers and rely on ALS preview context implicitlyproposed · 2mo ago
  • Centralize bridge handler capability enforcement and maintain parity with Cloudflare PluginBridgeproposed · 2mo ago
  • Stamp nullable/generated denormalized columns explicitly in repositoriesproposed · 2mo ago
  • Do not denormalize updated_at on pivotproposed · 2mo ago
  • Denormalize filter+sort columns on pivot for taxonomy listingsproposed · 2mo ago
  • Audit and fix documentation for release (import paths, API endpoints, types, commands)proposed · 2mo ago
▸

Everything we found

5,790 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,087Untested hotspot · packages/core/src/emdash-runtime.ts72 findings · 10.0 deducted→
  • worst item is medium severity. Refactoring387handleSave+1.5 health, M effort · packages/admin/src/components/FieldEditor.tsx→
  • worst item is medium severity. Decisions285packages/core/src/emdash-runtime.ts61 awaiting review · 224 hotspots ungoverned→
  • worst item is medium severity. Ownership1,689packages/core/src/astro/middleware.ts83% single-owner concentration, 32 commits in 90d→
  • worst item is low severity. Dead code342routeUnreachable function (0 lines)→

Composition

Open the graph →
typescript 97%
javascript 3%shell 0%dockerfile 0%

Explore this codebase

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