repowiserepowise
Sign in
coinbase/cb-mpc
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowisecoinbase/cb-mpc
CB
CB

coinbase / cb-mpc

cppmaster3a2f7c262.5K linessynced 2mo ago

Code health

7.8out of 10Good

This codebase scores 7.8 out of 10 for code health, which we rate good. It also scores maintainability 9.1 and static performance 10.0 out of 10. The three are scored separately and never blended into one number. Risk is concentrated, as it usually is: 4 of 380 files are git hotspots, and they average 4.7 — which is where the fixes pay off most.

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

Do next

1 thing worth doing this quarter.

Worth planning

  • Delete 496 unused symbols and files (8,841 lines)

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

    symbols
    496
    lines
    8,841
    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 65 proposed decisions

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

    proposed
    65
    accepted
    0
    Medium effort
Lines of code
62.5K
Files
380
Symbols
5,535
Modules
9
Languages
4

Recent activity

All commits →

Commits

  • 3a2f7c22fix: harden serialization validation and restrict supported platforms (#122)2mo ago
  • ba33d3dcfix: harden crypto helpers and add coverage tooling (#121)3mo ago
  • e97eec7bfix: bound modulus buffers and OpenSSL install paths (#117)4mo ago
  • a8ee24c6feat: add ML-KEM-768 and extend bn256_t/DRBG/RO primitives (#115)4mo ago
  • 0460152bfix: harden additive share reconstruction (#114)4mo ago
  • 270f9e96fix: Keep PVE decrypt searching after row failures (#109)4mo ago

Decisions

  • Add bounds/overflow checks in converter and remove unused bufs128 typesproposed
  • Buffer mutation helpers require full overwrite before readproposed
  • Centralize ABI/visibility and utility macros in a shared headerproposed
  • Crypto hardening: input validation, overflow fix, thread-safety improvements, and testsproposed
  • Crypto hardening: input validation, overflow fixes, thread-safety improvements, and testsproposed
  • Custom scoped ownership templateproposed
▸

Everything we found

1,749 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 health462Untested hotspot · src/cbmpc/protocol/ec_dkg.cpp29 findings · 10.2 deducted→
  • worst item is low severity. Refactoring12cycle[2]: mpc_job_session.h->mpc_job_session.cpp+0.0 health, S effort · demo-cpp/common/mpc_job_session.cpp→
  • worst item is medium severity. Decisions69tests/unit/crypto/test_base_ecc.cpp65 awaiting review · 4 hotspots ungoverned→
  • worst item is medium severity. Ownership710src/cbmpc/crypto/base_ecc.cpp88% single-owner concentration, 3 commits in 90d→
  • worst item is low severity. Dead code496dkg_additiveUnreachable function (18 lines)→

Composition

Open the graph →
cpp 97%
shell 2%dockerfile 0%makefile 0%

Explore this codebase

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