AI Slop Code Risk Monitor

QuipNetwork/quip-protocol

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

The quip network mining stack. This includes a coordinator and links all of the official quip network miners.

3.7 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for QuipNetwork/quip-protocol, a Rust project with 11,590 GitHub stars. SynthScan examined 39,665 lines of code across 92 source files, recording 125 pattern matches distributed across 4 syntactic categories. The legacy adjusted pattern signal is 3.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.

3.7
Adjusted Signal
3.7
Raw Pattern Score
100%
Time Factor
2026-10-15
Last Push
11.6K
Stars
Rust
Language
39.7K
Lines of Code
92
Files
125
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 14.5/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 0.0/100 · LOW

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

Agent Over-Engineering Ratio 2.6/100 · LOW

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

PR Review Velocity Impact 16.3/100 · LOW

Which changes need focused human review? 125 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 0HIGH 0MEDIUM 8LOW 117

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 125 distinct pattern matches across 4 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 Block117 hits · 117 pts
SeverityFileLineSnippetContext
LOW.gitlab-ci.yml161 - if: $CI_COMMIT_TAGCOMMENT
LOW.gitlab-ci.yml181# the multilib triplet dir so each RUN still resolves its ELF interpreter (theCOMMENT
LOW.gitlab-ci.yml341# macOS native release (tags only)COMMENT
LOW.gitlab-ci.yml361 # generates code from .proto files: there is no build.rs, and neitherCOMMENT
LOWcrates/quip-solver-exec/src/lib.rs1//! Generic external-solver miner backend.COMMENT
LOWcrates/quip-solver-exec/src/main.rs21COMMENT
LOWcrates/quip-coordinator/tools/fetch-miners.sh1#!/usr/bin/env bashCOMMENT
LOWcrates/quip-coordinator/tools/fetch-miners.sh21# Linux -> cpu (+cuda if amd64, optional);COMMENT
LOWcrates/quip-coordinator/tests/flow_control.rs1//! Regression: a deep credit pool must not deadlock the miner session.COMMENT
LOWcrates/quip-coordinator/tests/devnet_submit.rs1//! Live devnet integration test for the v0.3 coordinator chain client.COMMENT
LOWcrates/quip-coordinator/src/stash.rs1//! Win-time candidate stash (agm.2.4).COMMENT
LOWcrates/quip-coordinator/src/session.rs21use tokio::sync::{mpsc, oneshot, Mutex};COMMENT
LOWcrates/quip-coordinator/src/session.rs141/// How many top candidates the win-time stash retains per generation.COMMENT
LOWcrates/quip-coordinator/src/session.rs161 pub target: Option<quip_proto::v1::SetTarget>,COMMENT
LOWcrates/quip-coordinator/src/session.rs181 /// it starts, which is usually before the first chain snapshot arrives, soCOMMENT
LOWcrates/quip-coordinator/src/session.rs201 /// the per-qblock attempt logs.COMMENT
LOWcrates/quip-coordinator/src/runtime.rs41 /// Unix-domain socket the server binds and miners connect to.COMMENT
LOWcrates/quip-coordinator/src/runtime.rs61 pub poll_interval_ms: u64,COMMENT
LOWcrates/quip-coordinator/src/runtime.rs101 /// Set after the first `DescriptorFiled` walk in this process.COMMENT
LOWcrates/quip-coordinator/src/runtime.rs121/// steadier; 0.3 favors stability over reactivity for a ~1s poll, so a singleCOMMENT
LOWcrates/quip-coordinator/src/runtime.rs161/// Outcome of one snapshot poll. The feeder logs *transitions* between theseCOMMENT
LOWcrates/quip-coordinator/src/runtime.rs581 edges = order.edges.len(),COMMENT
LOWcrates/quip-coordinator/src/runtime.rs621 let mut salt_rates: HashMap<String, crate::lease::SaltRate> = HashMap::new();COMMENT
LOWcrates/quip-coordinator/src/decay.rs1//! Pure difficulty-decay math (agm.2.1).COMMENT
LOWcrates/quip-coordinator/src/decay.rs21pub const MIN_ENERGY_DELTA_MILLI: i64 = 1000;COMMENT
LOWcrates/quip-coordinator/src/decay.rs41// quip-validator @ v0.2 `QuantumPow`; a chain retune must be echoed here.COMMENT
LOWcrates/quip-coordinator/src/decay.rs101COMMENT
LOWcrates/quip-coordinator/src/config.rs21 /// coordinator finds no backends.COMMENT
LOWcrates/quip-coordinator/src/config.rs101 /// Faucet base URL for auto-funding the miner account. `None` disables it,COMMENT
LOWcrates/quip-coordinator/src/config.rs141/// One supervised miner: identity, binary path, and handshake `Configure`.COMMENT
LOWcrates/quip-coordinator/src/config.rs221/// Values the round machine needs to file a node descriptor.COMMENT
LOWcrates/quip-coordinator/src/config.rs501 })COMMENT
LOWcrates/quip-coordinator/src/liveness.rs1//! Coordinator-side miner liveness: read the self-reported `Status` state andCOMMENT
LOWcrates/quip-coordinator/src/logging.rs1//! Log subscriber setup for the `quip-coordinator` binary.COMMENT
LOWcrates/quip-coordinator/src/survey.rs1//! One-shot host hardware survey for the V2 node descriptor.COMMENT
LOWcrates/quip-coordinator/src/survey.rs41/// Reported `python` when no interpreter answers.COMMENT
LOWcrates/quip-coordinator/src/attempt.rs21 /// Unix-epoch milliseconds when the coordinator validated the result.COMMENT
LOWcrates/quip-coordinator/src/attempt.rs41 /// cleared the gate. This field holds the true best the miner found, so theCOMMENT
LOWcrates/quip-coordinator/src/attempt.rs61 pub extrinsic_hash: Option<String>,COMMENT
LOWcrates/quip-coordinator/src/funding.rs1//! Faucet auto-funding for the miner account.COMMENT
LOWcrates/quip-coordinator/src/funding.rs61/// Requests funds for an account.COMMENT
LOWcrates/quip-coordinator/src/metrics.rs1//! Live coordinator counters and identity for the `/api/v1` dashboard surface.COMMENT
LOWcrates/quip-coordinator/src/metrics.rs81 /// The miners in this group, in launch order.COMMENT
LOWcrates/quip-coordinator/src/readiness.rs81/// process start. Registration and descriptor never fail the walk. The feederCOMMENT
LOWcrates/quip-coordinator/src/router.rs61 }COMMENT
LOWcrates/quip-coordinator/src/router.rs81 /// Lease salts the miner finished since the last `take_lease_salts`. The feeder turns this into a salts-per-second COMMENT
LOWcrates/quip-coordinator/src/lease.rs1//! Salt leases: `ISING_GENERATE` jobs that let a miner draw its ownCOMMENT
LOWcrates/quip-coordinator/src/lease.rs21COMMENT
LOWcrates/quip-coordinator/src/lease.rs121 max_proof_solutions: u32::MAX,COMMENT
LOWcrates/quip-coordinator/src/keygen.rs41/// the wrong shape for a keystore field. `hex_decode` accepts both spellings,COMMENT
LOWcrates/quip-coordinator/src/main.rs61COMMENT
LOWcrates/quip-coordinator/src/main.rs121 #[arg(long)]COMMENT
LOWcrates/quip-coordinator/src/main.rs141 #[arg(long, default_value_t = 0)]COMMENT
LOWcrates/quip-coordinator/src/main.rs161 /// `--num-reads` for controlled, matched-condition throughput/parity runs.COMMENT
LOWcrates/quip-coordinator/src/topology.rs1//! Session-cached topology and the chain-canonical topology hash.COMMENT
LOWcrates/quip-coordinator/src/validate.rs1//! Result revalidation for the coordinator's own miner-gating decision.COMMENT
LOWcrates/quip-coordinator/src/validate.rs21COMMENT
LOWcrates/quip-coordinator/src/validate.rs41#[derive(Debug, Clone, Copy, PartialEq, Eq)]COMMENT
LOWcrates/quip-coordinator/src/validate.rs61 pub n_valid: u32,COMMENT
LOWcrates/quip-coordinator/src/validate.rs401COMMENT
57 more matches not shown…
Decorative Section Separators6 hits · 21 pts
SeverityFileLineSnippetContext
MEDIUM⚡.gitlab-ci.yml21# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡.gitlab-ci.yml23# ---------------------------------------------------------------------------COMMENT
MEDIUM.gitlab-ci.yml165# ---------------------------------------------------------------------------COMMENT
MEDIUM.gitlab-ci.yml171# ---------------------------------------------------------------------------COMMENT
MEDIUM.gitlab-ci.yml340# ---------------------------------------------------------------------------COMMENT
MEDIUM.gitlab-ci.yml346# ---------------------------------------------------------------------------COMMENT
AI Slop Vocabulary1 hit · 4 pts
SeverityFileLineSnippetContext
MEDIUM⚡.gitlab-ci.yml25# The solver contract (proto, wire codec, harness, PyO3 wheel, conformanceCOMMENT
Slop Phrases1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM.serena/project.yml101# Same syntax as gitignore, so you can use * and **.COMMENT