AI Slop Code Risk Monitor

cosmos/cosmos-sdk

SlopCodeMonitor badge for cosmos/cosmos-sdk Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

Framework for building performant, customizable blockchains with native interoperability

1.7 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for cosmos/cosmos-sdk, a Go project with 7,081 GitHub stars. SynthScan examined 1,208,167 lines of code across 2797 source files, recording 2147 pattern matches distributed across 9 syntactic categories. The legacy adjusted pattern signal is 1.7 (Low pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

1.7
Adjusted Signal
1.7
Raw Pattern Score
100%
Time Factor
2026-10-29
Last Push
7.1K
Stars
Go
Language
1.2M
Lines of Code
2.8K
Files
2.1K
Pattern Hits
2026-10-31
Scan Date
0.00
HC Hit Rate

Risk Review · Payload v1

Use each vector to guide manual verification of the underlying findings.

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 8.0/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 2132 finding(s).

Hallucinated Dependency & Supply Chain Risk 0.4/100 · LOW

Are imports declared and package/API names verified? 15 finding(s).

Agent Over-Engineering Ratio 0.0/100 · LOW

Are wrappers, guards, and repeated structures necessary? 0 finding(s).

PR Review Velocity Impact 8.9/100 · LOW

Which changes need focused human review? 2147 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 10HIGH 1MEDIUM 10LOW 2126

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 2147 distinct pattern matches across 9 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Over-Commented Block2108 hits · 1946 pts
SeverityFileLineSnippetContext
LOWiavl/internal/unsafe_bytes.go1package internalCOMMENT
LOWiavl/internal/mem_node_balance_test.go301 ),COMMENT
LOWiavl/internal/mem_node_balance_test.go341 // [X.1.4] Z.1.5COMMENT
LOWiavl/internal/mem_node_balance_test.go361 newTestBranchNode(1, 3,COMMENT
LOWiavl/internal/leaf_layout.go21type LeafLayout struct {COMMENT
LOWiavl/internal/pin.go1package internalCOMMENT
LOWiavl/internal/mem_node_balance.go1package internalCOMMENT
LOWiavl/internal/mem_node_balance.go21// to restore the AVL balance invariant.COMMENT
LOWiavl/internal/mem_node_balance.go41// The four cases handled:COMMENT
LOWiavl/internal/mem_node_balance.go61// [W] R copy of Q [Y] [W] [X] [Y] [Z]COMMENT
LOWiavl/internal/mem_node_balance.go81// P (mutable) P copy of RCOMMENT
LOWiavl/internal/mem_node_balance.go181 return 0, errCOMMENT
LOWiavl/internal/mem_node_balance.go221 return bCOMMENT
LOWiavl/internal/mem_node_balance.go261 }COMMENT
LOWiavl/internal/branch_layout.go21type BranchLayout struct {COMMENT
LOWiavl/internal/branch_layout.go41COMMENT
LOWiavl/internal/invariants.go1package internalCOMMENT
LOWiavl/internal/node_pointer.go21}COMMENT
LOWiavl/internal/node.go41 // Get traverses this subtree to find the value associated with the given key.COMMENT
LOWcrypto/armor.go41const (COMMENT
LOWcrypto/ledger/ledger_secp256k1.go101//COMMENT
LOWcrypto/ledger/ledger_secp256k1.go121// device, err := ledger.FindLedgerCosmosUserApp()COMMENT
LOWcrypto/ledger/encode_test.go21 require.Contains(t, string(js), `"value":`)COMMENT
LOWcrypto/hd/hdpath_test.go261 fmt.Println(hex.EncodeToString(priv))COMMENT
LOWcrypto/hd/hd.pb.go21// This is a compile-time assertion to ensure that this generated fileCOMMENT
LOWcrypto/hd/doc.go1// Package hd provides support for hierarchical deterministic wallets generation and derivation.COMMENT
LOWcrypto/keyring/record.pb.go21COMMENT
LOWcrypto/keyring/doc.go1// Package keyring provides common key management API.COMMENT
LOWcrypto/keyring/doc.go21//COMMENT
LOWcrypto/keyring/keyring.go941}COMMENT
LOWcrypto/keyring/keyring_linux.go81// this is private as it is meant to be here for SDK devs convenienceCOMMENT
LOWcrypto/keys/internal/benchmarking/bench.go61// met:COMMENT
LOWcrypto/keys/internal/benchmarking/bench.go81// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORTCOMMENT
LOWcrypto/keys/secp256k1/internal/secp256k1/curve.go1// Copyright 2010 The Go Authors. All rights reserved.COMMENT
LOWcrypto/keys/secp256k1/internal/secp256k1/curve.go21// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORSCOMMENT
LOWcrypto/keys/secp256k1/internal/secp256k1/curve.go61// This code is from https://github.com/ThePiachu/GoBit and implementsCOMMENT
LOWcrypto/keys/secp256k1/internal/secp256k1/ext.h1// Copyright 2015 Jeffrey Wilcke, Felix Lange, Gustav Simonsson. All rights reserved.COMMENT
LOWcrypto/keys/secp256k1/internal/secp256k1/ext.h61 }COMMENT
LOWcrypto/keys/secp256k1/internal/secp256k1/dummy.go1//go:build dummyCOMMENT
LOWcrypto/keys/secp256k1/internal/secp256k1/secp256.go1// Copyright 2015 Jeffrey Wilcke, Felix Lange, Gustav Simonsson. All rights reserved.COMMENT
LOW…eys/secp256k1/internal/secp256k1/libsecp256k1/dummy.go1//go:build dummyCOMMENT
LOW…256k1/internal/secp256k1/libsecp256k1/include/dummy.go1//go:build dummyCOMMENT
LOW…k1/internal/secp256k1/libsecp256k1/include/secp256k1.h101# endifCOMMENT
LOW…k1/internal/secp256k1/libsecp256k1/include/secp256k1.h121# define SECP256K1_APICOMMENT
LOW…k1/internal/secp256k1/libsecp256k1/include/secp256k1.h141# define SECP256K1_ARG_NONNULL(_x)COMMENT
LOW…256k1/internal/secp256k1/libsecp256k1/contrib/dummy.go1//go:build dummyCOMMENT
LOW…56k1/internal/secp256k1/libsecp256k1/src/scalar_impl.h1/**********************************************************************COMMENT
LOW…internal/secp256k1/libsecp256k1/src/scalar_8x32_impl.h21#define SECP256K1_N_C_0 (~SECP256K1_N_0 + 1)COMMENT
LOW…cp256k1/internal/secp256k1/libsecp256k1/src/num_impl.h21#error "Please select num implementation"COMMENT
LOW…/secp256k1/internal/secp256k1/libsecp256k1/src/field.h21#if defined HAVE_CONFIG_HCOMMENT
LOW…256k1/internal/secp256k1/libsecp256k1/src/field_impl.h1/**********************************************************************COMMENT
LOW…6k1/internal/secp256k1/libsecp256k1/src/basic-config.h1/**********************************************************************COMMENT
LOW…6k1/internal/secp256k1/libsecp256k1/src/basic-config.h21#undef USE_SCALAR_8X32COMMENT
LOW…ys/secp256k1/internal/secp256k1/libsecp256k1/src/num.h1/**********************************************************************COMMENT
LOW…/internal/secp256k1/libsecp256k1/src/field_5x52_impl.h1/**********************************************************************COMMENT
LOW…nternal/secp256k1/libsecp256k1/src/ecmult_const_impl.h1/**********************************************************************COMMENT
LOW…p256k1/internal/secp256k1/libsecp256k1/src/secp256k1.c1/**********************************************************************COMMENT
LOW…secp256k1/internal/secp256k1/libsecp256k1/src/scalar.h1/**********************************************************************COMMENT
LOW…p256k1/internal/secp256k1/libsecp256k1/src/hash_impl.h1/**********************************************************************COMMENT
LOW…56k1/internal/secp256k1/libsecp256k1/src/ecmult_impl.h21# define WINDOW_A 5COMMENT
2048 more matches not shown…
Hallucination Indicators10 hits · 100 pts
SeverityFileLineSnippetContext
CRITICALenterprise/poa/x/poa/keeper/validator_test.go752 err := f.poaKeeper.validators.Indexes.Power.Walk(f.ctx, ranger, func(power int64, consAddr sdk.ConsAddress) (bool, errCODE
CRITICALenterprise/poa/x/poa/keeper/validator_test.go934 err := f.poaKeeper.validators.Indexes.Power.Walk(f.ctx, ranger, func(power int64, consAddr sdk.ConsAddress) (bool, errCODE
CRITICALenterprise/poa/x/poa/keeper/validator_test.go1046 err = f.poaKeeper.validators.Indexes.Power.Walk(f.ctx, ranger, func(power int64, consAddr sdk.ConsAddress) (bool, erroCODE
CRITICALenterprise/poa/x/poa/keeper/validator_test.go1072 err = f.poaKeeper.validators.Indexes.Power.Walk(f.ctx, ranger, func(power int64, consAddr sdk.ConsAddress) (bool, erroCODE
CRITICALenterprise/poa/x/poa/keeper/validator_test.go2021 resolved, err := f.poaKeeper.validators.Indexes.OperatorAddress.MatchExact(f.ctx, operatorAddr.String())CODE
CRITICALenterprise/poa/x/poa/keeper/validator_test.go2033 require.NoError(t, f.poaKeeper.validators.Indexes.Power.Walk(f.ctx, nil, func(_ int64, consAddr sdk.ConsAddress) (boolCODE
CRITICALenterprise/poa/x/poa/keeper/validator_test.go2112 resolved, err := f.poaKeeper.validators.Indexes.OperatorAddress.MatchExact(f.ctx, operatorAddr.String())CODE
CRITICALenterprise/poa/x/poa/keeper/msg_server_test.go1944 resolved, err := f.poaKeeper.validators.Indexes.OperatorAddress.MatchExact(f.ctx, operatorAddr.String())CODE
CRITICALenterprise/poa/x/poa/keeper/msg_server_test.go1982 resolved, err := f.poaKeeper.validators.Indexes.OperatorAddress.MatchExact(f.ctx, operatorAddr.String())CODE
CRITICALx/auth/keeper/grpc_query.go37 address, err := s.k.Accounts.Indexes.Number.MatchExact(ctx, accID)CODE
AI Slop Vocabulary9 hits · 27 pts
SeverityFileLineSnippetContext
MEDIUMcodec/proto_codec.go23// ProtoCodecMarshaler defines an interface for codecs that utilize Protobuf for bothCOMMENT
MEDIUMcodec/yaml.go8// MarshalYAML marshals toPrint using JSONCodec to leverage specialized MarshalJSON methodsCOMMENT
MEDIUMserver/cmd/execute.go24 // getting and setting the client.Context. Ideally, we utilizeCOMMENT
MEDIUMmath/unsafe/rand.go16// They all utilize math/rand's prng internally.COMMENT
MEDIUMbaseapp/grpcserver.go108// false negatives and ensures more robust query handling. While bypassing the header check is generally preferred to aCOMMENT
MEDIUMtelemetry/config.go63// Note that a late initialization of the open telemetry SDK causes meters/tracers to utilize a delegate, which incursCOMMENT
MEDIUMclient/tx_config.go26 // TxConfig defines an interface a client can utilize to generate anCOMMENT
MEDIUMstore/cachekv/store_bench_test.go119 // Essentially the iterator will never be valid, in that it should never run.COMMENT
MEDIUMstore/rootmulti/store.go789 // If the request's height is the latest height we've committed, then utilizeCOMMENT
Example Usage Blocks5 hits · 8 pts
SeverityFileLineSnippetContext
LOWtools/systemtests/system.go1246// Example usage:COMMENT
LOWtestutil/simsx/environment.go193// Example usage:COMMENT
LOWtestutil/simsx/slices.go9// Example usage:COMMENT
LOWx/bank/keeper/send.go486// Example usage:COMMENT
LOWx/tx/signing/aminojson/encoder.go82// Usage example:COMMENT
Structural Annotation Overuse5 hits · 8 pts
SeverityFileLineSnippetContext
LOWenterprise/poa/tests/systemtests/poa_test.go886 // Step 1: Admin creates validators with initial powerCOMMENT
LOWenterprise/poa/tests/systemtests/poa_test.go910 // Step 2: Zero them out — they become inactiveCOMMENT
LOWenterprise/poa/tests/systemtests/poa_test.go938 // Step 3: In ONE tx, resurrect the zeroed validators and remove the entireCOMMENT
LOW.github/workflows/test.yml327 # NOTE: The following jobs are used to test the Cosmos SDK Go submodules.COMMENT
LOWx/upgrade/plan/downloader.go26// NOTE: This functions does not check the provided url for validity.COMMENT
Synthetic Comment Markers1 hit · 8 pts
SeverityFileLineSnippetContext
HIGHx/feegrant/keeper/keeper.go232// UseGrantedFees will try to pay the given fee from the granter's account as requested by the granteeCOMMENT
Fake / Example Data5 hits · 5 pts
SeverityFileLineSnippetContext
LOWtypes/coin_test.go78 loremIpsum := `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam viverra dui vel nulla aliquet, non dictum eCODE
LOWtypes/coin_test.go78 loremIpsum := `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam viverra dui vel nulla aliquet, non dictum eCODE
LOWclient/docs/swagger-ui/swagger-ui.js2!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amCODE
LOWclient/docs/swagger-ui/swagger-ui-es-bundle-core.js2module.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[CODE
LOWclient/docs/swagger-ui/swagger-ui-standalone-preset.js2!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amCODE
Verbosity Indicators3 hits · 4 pts
SeverityFileLineSnippetContext
LOWenterprise/poa/tests/systemtests/poa_test.go886 // Step 1: Admin creates validators with initial powerCOMMENT
LOWenterprise/poa/tests/systemtests/poa_test.go910 // Step 2: Zero them out — they become inactiveCOMMENT
LOWenterprise/poa/tests/systemtests/poa_test.go938 // Step 3: In ONE tx, resurrect the zeroed validators and remove the entireCOMMENT
Modern AI Meta-Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMAGENTS.md44## Agent guardrailsCOMMENT