repowiserepowise
Sign in
99designs/gqlgen
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowise99designs/gqlgen
GQ
GQ

99designs / gqlgen

gomaster8a12bb644.9K linessynced 4mo ago

Code health

7.3out of 10Good

This codebase scores 7.3 out of 10 for code health, which we rate good. Risk is concentrated, as it usually is: 140 of 883 files are git hotspots, and they average 5.5 — which is where the fixes pay off most.

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

Do next

1 thing worth doing this quarter.

Worth planning

  • Delete 181 unused symbols and files (1,107 lines)

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

    symbols
    181
    lines
    1,107
    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 67 proposed decisions

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

    proposed
    67
    accepted
    0
    Medium effort
Lines of code
44.9K
Files
883
Symbols
3,354
Modules
15
Languages
6

Recent activity

All commits →

Commits

  • 8a12bb6dAdd SSE min event interval (#4196)4mo ago
  • c57f69d9fix: CoerceList drops elements from typed slices past the first (#4194)4mo ago
  • 4cd73c1eAdd global batch resolver config under resolver.batch (issue #4044) (#4195)4mo ago
  • c1067cb9Fix batch resolvers reusing a single `_federationRequires` for all parents (#4192) (#4193)4mo ago
  • 258c0dd3chore(deps-dev): bump @graphql-codegen/cli from 6.3.1 to 7.0.0 in /integration (#4162)4mo ago
  • a1709b81chore(deps): bump golang.org/x/tools from 0.44.0 to 0.45.0 (#4173)4mo ago

Decisions

  • Enforce websocket payload read limit with configurable default and disable optionproposed
  • Prefer Implementation field over Upgrader for websocket backendproposed
  • Use graphql.OneShot in OperationInterceptor error path to prevent infinite loopproposed
  • Update GQLgen test client for multipart form data (fileupload support)proposed
  • Add ReplacePlugin option to replace a specific pluginproposed
  • Optimize packages load/validation with light/full modes and lazy type loadingproposed
▸

Everything we found

1,154 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 health377Nested complexity · codegen/templates/templates.go21 findings · 7.5 deducted→
  • worst item is medium severity. Decisions207codegen/testserver/singlefile/generated.go67 awaiting review · 140 hotspots ungoverned→
  • worst item is medium severity. Ownership375plugin/federation/testdata/usefunctionsyntaxforexecutioncontext/entity.resolvers.go98% single-owner concentration, 6 commits in 90d→
  • worst item is low severity. Dead code195UserUnreachable struct (4 lines)→

Composition

Open the graph →
go 94%
shell 3%typescript 2%javascript 1%dockerfile 0%Other 0%

Explore this codebase

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