AI Slop Code RIsk Monitor

yhirose/cpp-httplib

A C++ header-only HTTP/HTTPS server and client library

5.7 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for yhirose/cpp-httplib, a C++ project with 16,905 GitHub stars. SynthScan examined 76,537 lines of code across 237 source files, recording 393 pattern matches distributed across 7 syntactic categories. The legacy adjusted pattern signal is 5.7 (Moderate 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.

5.7
Adjusted Signal
5.7
Raw Pattern Score
100%
Time Factor
2026-10-09
Last Push
16.9K
Stars
C++
Language
76.5K
Lines of Code
237
Files
393
Pattern Hits
2026-10-12
Scan Date
0.00
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 19.6/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 362 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 6.3/100 · LOW

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

PR Review Velocity Impact 26.8/100 · MEDIUM

Which changes need focused human review? 393 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 1MEDIUM 40LOW 352

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 393 distinct pattern matches across 7 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 Block348 hits · 298 pts
SeverityFileLineSnippetContext
LOWhttplib.h1//COMMENT
LOWhttplib.h21/*COMMENT
LOWhttplib.h41#ifndef CPPHTTPLIB_CONNECTION_TIMEOUT_USECONDCOMMENT
LOWhttplib.h61#ifndef CPPHTTPLIB_CLIENT_READ_TIMEOUT_SECONDCOMMENT
LOWhttplib.h81#ifndef CPPHTTPLIB_EXPECT_100_THRESHOLDCOMMENT
LOWhttplib.h101#ifndef CPPHTTPLIB_IDLE_INTERVAL_USECONDCOMMENT
LOWhttplib.h121#ifndef CPPHTTPLIB_REDIRECT_MAX_COUNTCOMMENT
LOWhttplib.h141#endifCOMMENT
LOWhttplib.h161#endifCOMMENT
LOWhttplib.h181#endifCOMMENT
LOWhttplib.h201COMMENT
LOWhttplib.h221// from a peer that has gone quiet. The old name still works and sets both.COMMENT
LOWhttplib.h241// ws::Fail and closes the connection.COMMENT
LOWhttplib.h261COMMENT
LOWhttplib.h281COMMENT
LOWhttplib.h301#include <winsock2.h>COMMENT
LOWhttplib.h321COMMENT
LOWhttplib.h341#include <poll.h>COMMENT
LOWhttplib.h361#include <cassert>COMMENT
LOWhttplib.h381#include <set>COMMENT
LOWhttplib.h401 defined(CPPHTTPLIB_WOLFSSL_SUPPORT))COMMENT
LOWhttplib.h421COMMENT
LOWhttplib.h441#ifdef _MSC_VERCOMMENT
LOWhttplib.h461#include <iostream>COMMENT
LOWhttplib.h481#include <mbedtls/pk.h>COMMENT
LOWhttplib.h501#endif // _WIN32COMMENT
LOWhttplib.h521COMMENT
LOWhttplib.h541#include <wolfssl/wolfcrypt/sha256.h>COMMENT
LOWhttplib.h761 return {first, std::errc::invalid_argument};COMMENT
LOWhttplib.h1081COMMENT
LOWhttplib.h2341 //COMMENT
LOWhttplib.h5941inline bool parse_trailers(stream_line_reader &line_reader, Headers &dest,COMMENT
LOWhttplib.h9921 last_pos = content_len;COMMENT
LOWhttplib.h10121COMMENT
LOWhttplib.h10441 time_t read_timeout_usec_;COMMENT
LOWhttplib.h10941COMMENT
LOWhttplib.h14061 socket_t sock = accept(svr_sock_, nullptr, nullptr);COMMENT
LOWhttplib.h14461 });COMMENT
LOWhttplib.h14541COMMENT
LOWhttplib.h16061 // unnecessarily. This workaround is only enabled on Windows because UnixCOMMENT
LOWhttplib.h20101 // Mbed TLS has no SSL_peek() equivalent, so is_peer_closed() must probe withCOMMENT
LOWbenchmark/ab.sh1#!/usr/bin/env bashCOMMENT
LOWbenchmark/ab.sh21# SSLSocketStream instead of SocketStream.COMMENT
LOWbenchmark/crow/crow_all.h961#endifCOMMENT
LOWbenchmark/crow/crow_all.h981#include <boost/asio.hpp>COMMENT
LOWbenchmark/crow/crow_all.h1321};COMMENT
LOWbenchmark/crow/crow_all.h1401#include <string>COMMENT
LOWbenchmark/crow/crow_all.h6241#undef CROW_CALLBACK_NOTIFYCOMMENT
LOWbenchmark/crow/crow_all.h6261#undef CROW_IS_MARKCOMMENT
LOWbenchmark/crow/crow_all.h6281#endifCOMMENT
LOWbenchmark/crow/crow_all.h7381 if (base.back() != '\\' && base.back() != '/') { base += '/'; }COMMENT
LOWbenchmark/crow/crow_all.h7401 utility::sanitize_filename(filename_sanitized);COMMENT
LOWbenchmark/crow/crow_all.h8001 return string.substr(1, string.length() - 2);COMMENT
LOWbenchmark/crow/crow_all.h8421// Any middleware requires following 3 members:COMMENT
LOWbenchmark/crow/crow_all.h8701#include <memory>COMMENT
LOWbenchmark/crow/crow_all.h9581COMMENT
LOWbenchmark/crow/crow_all.h10061COMMENT
LOWbenchmark/crow/crow_all.h10461//COMMENT
LOWbenchmark/crow/crow_all.h12481 void get_found_bp(const std::vector<size_t> &bp_i,COMMENT
LOWbenchmark/crow/crow_all.h13041#include <chrono>COMMENT
288 more matches not shown…
Decorative Section Separators30 hits · 94 pts
SeverityFileLineSnippetContext
MEDIUMdocs-util/llm-app/test_book.sh4# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh9# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh24# ---------------------------------------------------------------------------COMMENT
MEDIUMdocs-util/llm-app/test_book.sh26# ---------------------------------------------------------------------------COMMENT
MEDIUMdocs-util/llm-app/test_book.sh40# ---------------------------------------------------------------------------COMMENT
MEDIUMdocs-util/llm-app/test_book.sh42# ---------------------------------------------------------------------------COMMENT
MEDIUMdocs-util/llm-app/test_book.sh157# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh159# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh216# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh218# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh282# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh284# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh338# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh340# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh451# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh453# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh539# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_book.sh541# =============================================================================COMMENT
MEDIUMdocs-util/llm-app/test_webui.cpp13// ─── Test framework (minimal) ────────────────────────────────COMMENT
MEDIUMdocs-util/llm-app/test_webui.cpp58// ─── Helpers ─────────────────────────────────────────────────COMMENT
MEDIUMdocs-util/llm-app/test_webui.cpp262// ─── Main ────────────────────────────────────────────────────COMMENT
MEDIUM⚡docs-util/llm-app/webdriver.h24// ─── Errors ──────────────────────────────────────────────────COMMENT
MEDIUM⚡docs-util/llm-app/webdriver.h31// ─── Forward declarations ────────────────────────────────────COMMENT
MEDIUM⚡docs-util/llm-app/webdriver.h35// ─── Element ─────────────────────────────────────────────────COMMENT
MEDIUMdocs-util/llm-app/webdriver.h107// ─── Session ─────────────────────────────────────────────────COMMENT
MEDIUMdocs-util/llm-app/webdriver.h163 // ─── Navigation ──────────────────────────────────────────COMMENT
MEDIUMdocs-util/llm-app/webdriver.h187 // ─── Find elements ──────────────────────────────────────COMMENT
MEDIUMdocs-util/llm-app/webdriver.h221 // ─── Wait ────────────────────────────────────────────────COMMENT
MEDIUMdocs-util/llm-app/webdriver.h252 // ─── Execute script ─────────────────────────────────────COMMENT
MEDIUMdocs-util/llm-app/webdriver.h267 // ─── Page source ────────────────────────────────────────COMMENT
AI Slop Vocabulary10 hits · 30 pts
SeverityFileLineSnippetContext
MEDIUMhttplib.h15787 // Cross-host/scheme redirect - create new client with robust setupCOMMENT
MEDIUMhttplib.h15792// New method for robust redirect client creationCOMMENT
MEDIUMhttplib.h15854 // Setup client with robust configurationCOMMENT
MEDIUMhttplib.h15862// New method for robust client setup (based on basic_manual_redirect.cppCOMMENT
MEDIUMbenchmark/ab.sh9# --path selects the workload. The harness serves:COMMENT
MEDIUMbenchmark/ab.sh128# The harness source always comes from the invoking worktree, so both refs runCOMMENT
MEDIUMbenchmark/ab.sh129# an identical workload and a ref that predates a harness change staysCOMMENT
MEDIUMtest/gtest/include/gtest/gtest-death-test.h152// This implementation is *not* meant to be as highly tuned or robustCOMMENT
MEDIUMtest/gtest/include/gtest/gtest-death-test.h224// In practice, this can be used to test functions that utilize theCOMMENT
MEDIUM.github/workflows/test.yaml322 # Bound the whole job in case anything in the test harness hangsCOMMENT
Empty Error Handlers1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHtest/dns_test_fixture.py77except OSError:CODE
Deep Nesting2 hits · 2 pts
SeverityFileLineSnippetContext
LOWsplit.py12CODE
LOWgenerate_module.py10CODE
TODO Padding1 hit · 2 pts
SeverityFileLineSnippetContext
LOWbenchmark/crow/crow_all.h385// TODO: implement sorting of the qs_kv array; for now ensure it's not compiledCOMMENT
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWtest/run_issue_2431_repro.sh16# Usage:COMMENT