AI Slop Code Risk Monitor

colbymchenry/codegraph

SlopCodeMonitor badge for colbymchenry/codegraph Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

Pre-indexed code knowledge graph, auto syncs on code changes, for Claude Code, Codex, Gemini, Cursor, OpenCode, AntiGravity, Kiro, CoPilot, and Hermes Agent — fewer tokens, fewer tool calls, 100% local

2.0 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for colbymchenry/codegraph, a TypeScript project with 76,063 GitHub stars. SynthScan examined 525,713 lines of code across 1494 source files, recording 737 pattern matches distributed across 16 syntactic categories. The legacy adjusted pattern signal is 2.0 (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.

2.0
Adjusted Signal
2.0
Raw Pattern Score
100%
Time Factor
2026-10-31
Last Push
76.1K
Stars
TypeScript
Language
525.7K
Lines of Code
1.5K
Files
737
Pattern Hits
2026-10-31
Scan Date
0.02
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 5.7/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 1.8/100 · LOW

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

Agent Over-Engineering Ratio 3.6/100 · LOW

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

PR Review Velocity Impact 9.8/100 · LOW

Which changes need focused human review? 737 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 1HIGH 36MEDIUM 81LOW 619

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 737 distinct pattern matches across 16 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 Block377 hits · 329 pts
SeverityFileLineSnippetContext
LOWinstall.sh1#!/bin/shCOMMENT
LOWinstall.sh81# Archives contain a top-level codegraph-<target>/ dir; strip it.COMMENT
LOWui/vite.config.ts1import { fileURLToPath } from 'node:url';COMMENT
LOWtelemetry-dashboard/scripts/smoke-auth.sh1#!/usr/bin/env bashCOMMENT
LOWtelemetry-worker/scripts/smoke-cutover.sh1#!/usr/bin/env bashCOMMENT
LOWtelemetry-worker/scripts/smoke-cutover.sh81 console.log(v === undefined ? "<missing>" : typeof v === "object" && v !== null ? JSON.stringify(v) : String(v));COMMENT
LOWtelemetry-worker/scripts/smoke-cutover.sh241# The funnel reads machine_first_seen.first_index_day. The ingest worker sets it asCOMMENT
LOWtelemetry-worker/scripts/smoke-rollup.sh1#!/usr/bin/env bashCOMMENT
LOWtelemetry-worker/src/rollup.ts281 }COMMENT
LOW__tests__/explore-allocation-e2e.test.ts621 it('spends more than the reservation, not a fraction of it', () => {COMMENT
LOW__tests__/explore-allocation-e2e.test.ts781 expect(run.allowance(SPRAWL) / size).toBeLessThan(EXPLORE_ALLOCATION.WHOLE_FILE_BUY_FRACTION);COMMENT
LOW__tests__/explore-allocation-e2e.test.ts801 // unchanged 13,000 budget because nothing picked up what `lib/utils.js`COMMENT
LOW__tests__/c-fnptr-synthesizer.test.ts301 // The vim command-table shape: a table-building macro and the struct are bothCOMMENT
LOW__tests__/extraction.test.ts4121 expect(blankCppInlineAnnotationMacros(c)).toBe(c);COMMENT
LOW__tests__/mcp-daemon.test.ts821 expect(fs.readFileSync(path.join(realRoot, '.codegraph', 'codegraph.db'))).toEqual(before);COMMENT
LOW__tests__/kernel-dart-parity.test.ts141 // ones skipped), every redirect-target form, and constructors calledCOMMENT
LOW__tests__/kernel-dart-parity.test.ts161 // Comments of every form between annotations and the declaration theyCOMMENT
LOW__tests__/installer-targets.test.ts1841 it('codegraph inside an inline mcp_servers table: uninstall says it can\'t remove it, and leaves the file alone', () =COMMENT
LOW__tests__/installer-targets.test.ts3141});COMMENT
LOW__tests__/mcp-ppid-watchdog.test.ts81 // stdin-holder is alive (it is — it's an orphan after the wrapperCOMMENT
LOW__tests__/kernel-r-parity.test.ts101 // Pin the R-distinctive quirks on the KERNEL arm so both arms driftingCOMMENT
LOWcodegraph-kernel/Cargo.toml41# php: the walker calls LANGUAGE_PHP (the full HTML-interleaving variant theCOMMENT
LOWcodegraph-kernel/build.rs1fn main() {COMMENT
LOWcodegraph-kernel/build.rs61 scala.flag_if_supported("-Wno-trigraphs");COMMENT
LOWcodegraph-kernel/build.rs81 dart.file("grammars/dart/scanner.c");COMMENT
LOWcodegraph-kernel/grammars/dart/tree_sitter/parser.h1#ifndef TREE_SITTER_PARSER_H_COMMENT
LOWcodegraph-kernel/grammars/dart/tree_sitter/array.h1#ifndef TREE_SITTER_ARRAY_H_COMMENT
LOWcodegraph-kernel/grammars/dart/tree_sitter/array.h41 (assert((uint32_t)(_index) < (self)->size), &(self)->contents[_index])COMMENT
LOWcodegraph-kernel/grammars/dart/tree_sitter/array.h101COMMENT
LOWcodegraph-kernel/grammars/dart/tree_sitter/array.h121/// callback to determine the order.COMMENT
LOWcodegraph-kernel/grammars/dart/tree_sitter/array.h281#ifdef _MSC_VERCOMMENT
LOWcodegraph-kernel/grammars/dart/tree_sitter/alloc.h21#define ts_malloc ts_current_mallocCOMMENT
LOWcodegraph-kernel/grammars/dart/tree_sitter/alloc.h41#ifndef ts_reallocCOMMENT
LOWcodegraph-kernel/grammars/kotlin/tree_sitter/parser.h1#ifndef TREE_SITTER_PARSER_H_COMMENT
LOWcodegraph-kernel/grammars/kotlin/tree_sitter/array.h1#ifndef TREE_SITTER_ARRAY_H_COMMENT
LOWcodegraph-kernel/grammars/kotlin/tree_sitter/array.h41COMMENT
LOWcodegraph-kernel/grammars/kotlin/tree_sitter/array.h101/// Remove one element from the array at the given `index`.COMMENT
LOWcodegraph-kernel/grammars/kotlin/tree_sitter/array.h121///COMMENT
LOWcodegraph-kernel/grammars/kotlin/tree_sitter/array.h281#pragma warning(default : 4101)COMMENT
LOWcodegraph-kernel/grammars/kotlin/tree_sitter/alloc.h21#define ts_malloc ts_current_mallocCOMMENT
LOWcodegraph-kernel/grammars/kotlin/tree_sitter/alloc.h41#ifndef ts_reallocCOMMENT
LOWcodegraph-kernel/grammars/lua/parser.c1/* Automatically @generated by tree-sitter */COMMENT
LOWcodegraph-kernel/grammars/lua/tree_sitter/parser.h1#ifndef TREE_SITTER_PARSER_H_COMMENT
LOWcodegraph-kernel/grammars/lua/tree_sitter/array.h1#ifndef TREE_SITTER_ARRAY_H_COMMENT
LOWcodegraph-kernel/grammars/lua/tree_sitter/array.h41 (assert((uint32_t)(_index) < (self)->size), &(self)->contents[_index])COMMENT
LOWcodegraph-kernel/grammars/lua/tree_sitter/array.h101COMMENT
LOWcodegraph-kernel/grammars/lua/tree_sitter/array.h121/// callback to determine the order.COMMENT
LOWcodegraph-kernel/grammars/lua/tree_sitter/array.h281#ifdef _MSC_VERCOMMENT
LOWcodegraph-kernel/grammars/lua/tree_sitter/alloc.h21#define ts_malloc ts_current_mallocCOMMENT
LOWcodegraph-kernel/grammars/lua/tree_sitter/alloc.h41#ifndef ts_reallocCOMMENT
LOWcodegraph-kernel/grammars/scala/scanner.c1#include "tree_sitter/alloc.h"COMMENT
LOWcodegraph-kernel/grammars/scala/scanner.c1841COMMENT
LOWcodegraph-kernel/grammars/scala/tree_sitter/parser.h1#ifndef TREE_SITTER_PARSER_H_COMMENT
LOWcodegraph-kernel/grammars/scala/tree_sitter/array.h1#ifndef TREE_SITTER_ARRAY_H_COMMENT
LOWcodegraph-kernel/grammars/scala/tree_sitter/array.h141 (other)->contents = _array_swap_tmp; \COMMENT
LOWcodegraph-kernel/grammars/scala/tree_sitter/array.h161/// of a given struct field (specified with a leading dot) to determine the order.COMMENT
LOWcodegraph-kernel/grammars/scala/tree_sitter/array.h321#pragma warning(pop)COMMENT
LOWcodegraph-kernel/grammars/scala/tree_sitter/alloc.h21#define ts_malloc ts_current_mallocCOMMENT
LOWcodegraph-kernel/grammars/scala/tree_sitter/alloc.h41#ifndef ts_reallocCOMMENT
LOWcodegraph-kernel/grammars/swift/scanner.c801 } else if (valid_symbols[RAW_STR_CONTINUING_INDICATOR]) {COMMENT
317 more matches not shown…
Decorative Section Separators72 hits · 232 pts
SeverityFileLineSnippetContext
MEDIUMtelemetry-worker/scripts/smoke-cutover.sh91# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-cutover.sh109# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-cutover.sh130# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-ingest.sh37# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-ingest.sh39# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-ingest.sh56# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-ingest.sh58# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-ingest.sh83# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-ingest.sh85# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-ingest.sh170# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-ingest.sh172# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-rollup.sh96# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-rollup.sh98# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡telemetry-worker/scripts/smoke-rollup.sh163# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡telemetry-worker/scripts/smoke-rollup.sh165# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡telemetry-worker/scripts/smoke-rollup.sh174# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡telemetry-worker/scripts/smoke-rollup.sh176# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-rollup.sh222# ---------------------------------------------------------------------------COMMENT
MEDIUMtelemetry-worker/scripts/smoke-rollup.sh224# ---------------------------------------------------------------------------COMMENT
MEDIUM__tests__/explore-allocation-1500.test.ts89 // ── 1. Fixture shape ──────────────────────────────────────────────────────COMMENT
MEDIUM__tests__/explore-allocation-1500.test.ts195 // ── 2. Budget allocation — the open bug ───────────────────────────────────COMMENT
MEDIUM__tests__/explore-allocation-e2e.test.ts135// ── 1. The self-query fixture's shape ───────────────────────────────────────COMMENT
MEDIUM__tests__/explore-allocation-e2e.test.ts832// ── 2. Degenerate and diffuse result sets ───────────────────────────────────COMMENT
MEDIUM__tests__/explore-reservation-invariant.test.ts121 // ── Fixture shape — if these rot, the gates below mean nothing ─────────────COMMENT
MEDIUM__tests__/explore-reservation-invariant.test.ts145 // ── The invariant ─────────────────────────────────────────────────────────COMMENT
MEDIUM__tests__/explore-reservation-invariant.test.ts193 // ── What the ceiling must no longer do ────────────────────────────────────COMMENT
MEDIUM__tests__/explore-reservation-invariant.test.ts221 // ── The epilogue is budgeted, not discarded ───────────────────────────────COMMENT
MEDIUM__tests__/explore-reservation-invariant.test.ts247 // ── The thing the invariant must NOT become ───────────────────────────────COMMENT
MEDIUM__tests__/explore-oversize-member.test.ts98 // ── Fixture shape — if these rot, the gate below means nothing ─────────────COMMENT
MEDIUM__tests__/explore-oversize-member.test.ts125 // ── The gate ──────────────────────────────────────────────────────────────COMMENT
MEDIUM__tests__/resolution.test.ts1244 // ── Rust `self.<field>.<method>()` receivers (#1585) ───────────────────COMMENT
MEDIUM__tests__/resolution.test.ts1244 // ── Rust `self.<field>.<method>()` receivers (#1585) ───────────────────COMMENT
MEDIUM__tests__/resolution.test.ts1330 // ── Rust `self.<method>()` receivers (#1861) ──────────────────────────COMMENT
MEDIUM__tests__/resolution.test.ts1330 // ── Rust `self.<method>()` receivers (#1861) ──────────────────────────COMMENT
MEDIUM__tests__/explore-merged-spine-cluster.test.ts39// ── Fixture generators ───────────────────────────────────────────────────────COMMENT
MEDIUM__tests__/explore-merged-spine-cluster.test.ts182// ── Harness ─────────────────────────────────────────────────────────────────COMMENT
MEDIUM__tests__/explore-merged-spine-cluster.test.ts258// ── The reported shape ──────────────────────────────────────────────────────COMMENT
MEDIUM__tests__/explore-merged-spine-cluster.test.ts324// ── Two consequences of rendering such a cluster by member ─────────────────COMMENT
MEDIUM__tests__/explore-proportional-allocation.test.ts240// ── CG-14 ───────────────────────────────────────────────────────────────────COMMENT
MEDIUM__tests__/explore-proportional-allocation.test.ts554// ── A file the query named is exempt from the MAX_SHARE valve ─────────────────COMMENT
MEDIUM__tests__/explore-displacement-guard.test.ts132 // ── Fixture shape — if these rot, the gate below means nothing ─────────────COMMENT
MEDIUM__tests__/explore-displacement-guard.test.ts162 // ── The gate ──────────────────────────────────────────────────────────────COMMENT
MEDIUM__tests__/explore-displacement-guard.test.ts224 // ── The thing the guard must NOT become ───────────────────────────────────COMMENT
MEDIUM__tests__/explore-named-file-valve.test.ts93// ── 1. Far from spent ───────────────────────────────────────────────────────COMMENT
MEDIUM__tests__/explore-named-file-valve.test.ts150// ── 2. Saturated ────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡__tests__/integration/full-pipeline.test.ts89 // ── init ──────────────────────────────────────────────────────COMMENT
MEDIUM⚡__tests__/integration/full-pipeline.test.ts95 // ── indexAll ────────────────────────────────────────────────COMMENT
MEDIUM⚡__tests__/integration/full-pipeline.test.ts104 // ── resolveReferences ────────────────────────────────────────COMMENT
MEDIUM⚡__tests__/integration/full-pipeline.test.ts117 // ── searchNodes ──────────────────────────────────────────────COMMENT
MEDIUM⚡__tests__/integration/full-pipeline.test.ts126 // ── getCallers / getCallees ──────────────────────────────────COMMENT
MEDIUM⚡__tests__/integration/full-pipeline.test.ts135 // ── buildContext ─────────────────────────────────────────────COMMENT
MEDIUM⚡__tests__/integration/full-pipeline.test.ts143 // ── sync (add + modify + remove in one pass) ─────────────────COMMENT
MEDIUMscripts/pack-npm.sh129# ---------------------------------------------------------------------------COMMENT
MEDIUMscripts/pack-npm.sh141# ---------------------------------------------------------------------------COMMENT
MEDIUMsrc/mcp/tools.ts412// ── Explore relevance scoring (CG-10 / #1500) ──────────────────────────────COMMENT
MEDIUMsrc/mcp/tools.ts412// ── Explore relevance scoring (CG-10 / #1500) ──────────────────────────────COMMENT
MEDIUMsrc/mcp/tools.ts589// ── Score-proportional byte allocation (CG-12 / #1500) ─────────────────────COMMENT
MEDIUMsrc/mcp/tools.ts589// ── Score-proportional byte allocation (CG-12 / #1500) ─────────────────────COMMENT
MEDIUMsrc/resolution/callback-synthesizer.ts3689// ── Object-literal registry dispatch ─────────────────────────────────────────COMMENT
MEDIUMsrc/resolution/callback-synthesizer.ts3874// ── RTK Query generated-hook → endpoint ──────────────────────────────────────COMMENT
12 more matches not shown…
Cross-Language Confusion (JS/TS)33 hits · 165 pts
SeverityFileLineSnippetContext
HIGH__tests__/dart-local-call-scope.test.ts80 print(box);CODE
HIGH__tests__/dart-local-call-scope.test.ts148 print(notify);CODE
HIGH__tests__/branch-guards.test.ts304 elif not user.is_active:CODE
HIGH__tests__/branch-guards-languages.test.ts52 return NoneCODE
HIGH__tests__/branch-guards-languages.test.ts55 elif item.count == 0:CODE
HIGH__tests__/branch-guards-languages.test.ts77 expect(await labelAt(src, 'return None', 'python')).toBe('item_in.title && on error');CODE
HIGH__tests__/extraction.test.ts2797 print(name);CODE
HIGH__tests__/extraction.test.ts7247 fs.writeFileSync(path.join(tempDir, 'app/views.py'), `def home(request):\n return None\n`);CODE
HIGH__tests__/python-external-module-receiver.test.ts88 'other.py': 'class Other:\n def go(self, x):\n return None\n',CODE
HIGH__tests__/explore-empty-diagnostics.test.ts33 'src/users.py': 'class RegistrationService:\n def create_account(self):\n return 1\n\nclass RateLimiter:\n CODE
HIGH__tests__/resolution.test.ts1655 'def append(row):\n return True\n\n\ndef path():\n return "ledger.jsonl"\n'CODE
HIGH__tests__/resolution.test.ts1664 return NoneCODE
HIGH__tests__/python-typed-builtin-method-calls.test.ts30 return NoneCODE
HIGH__tests__/python-typed-builtin-method-calls.test.ts39 return NoneCODE
HIGH__tests__/python-typed-builtin-method-calls.test.ts160 return NoneCODE
HIGH__tests__/python-typed-builtin-method-calls.test.ts168 return NoneCODE
HIGH__tests__/celery-dispatch-synthesizer.test.ts50 return NoneCODE
HIGH__tests__/python-receiver-guess.test.ts29 return NoneCODE
HIGH__tests__/python-receiver-guess.test.ts34 return NoneCODE
HIGH__tests__/graph.test.ts45 print(): void;CODE
HIGH__tests__/graph.test.ts64 print(): void {CODE
HIGH__tests__/python-function-value-scope.test.ts47 return NoneCODE
HIGH__tests__/member-function-ref-owner.test.ts29 return NoneCODE
HIGH__tests__/kernel-python-call-fabrication.test.ts60 'def append(row):\n return True\n\n\ndef path():\n return "ledger.jsonl"\n'CODE
HIGH__tests__/kernel-python-call-fabrication.test.ts64 'from . import ledger\n\n\ndef add_outcome(row):\n if not ledger.append(row):\n return None\n return CODE
HIGH__tests__/python-local-import-alias.test.ts87 'm.py': 'def f():\n try:\n import jinja2 as j\n except ImportError:\n return None\n return CODE
HIGH__tests__/python-attr-types.test.ts100 'client.py': 'class Client:\n def send(self):\n pass\n\ndef make_client(url=None):\n if url is NoneCODE
HIGH__tests__/python-attr-types.test.ts193 'loader.py': 'def import_string(p):\n return None\n',CODE
HIGH__tests__/inherited-class-method.test.ts93 return NoneCODE
HIGH__tests__/ui-steps-api-servers.test.ts172 write('api/deps.py', 'def get_current_user():\n return None\n\nSessionDep = None\n');CODE
HIGH__tests__/python-module-global-receiver-call.test.ts43const OTHER = 'class Unrelated:\n def delete(self, obj):\n return None\n\n def purge(self):\n returnCODE
HIGH__tests__/python-module-global-receiver-call.test.ts74 const other = 'class Unrelated:\n def handler(self):\n return None\n';CODE
HIGH__tests__/unittest-named-files.test.ts28 return TrueCODE
Hyper-Verbose Identifiers153 hits · 149 pts
SeverityFileLineSnippetContext
LOW__tests__/explore-allocation-e2e.test.ts262export function budgetRemainderAfterFloors(pool: number, floors: number): number {CODE
LOW__tests__/read-commands-during-rebuild.test.ts179 async function insideWritersEdgeTransaction(CODE
LOW__tests__/cjk-query-tokens.test.ts275function oldExtractSymbolsFromQuery(query: string): string[] {CODE
LOW__tests__/python-multiline-bases.test.ts145def class_wrapped_base_method(x):CODE
LOW__tests__/python-multiline-bases.test.ts149def class_wrapped_type_argument(x):CODE
LOW__tests__/installer-targets.test.ts2688 function plantUnparseableAntigravityConfig(content: string): string {CODE
LOW__tests__/library-method-calls.test.ts43 ' def getOrElse(d: Int): Int = d\n' +CODE
LOW__tests__/mcp-nested-repo-projectpath.test.ts43function makeParentWithIgnoredNestedRepo(root: string, ignoreNested = true): { parent: string; nested: string } {CODE
LOW__tests__/segment-vocab.test.ts50export function resolveDeferredThisMemberRefs(): void {}CODE
LOW__tests__/index-files-write-lock.test.ts31 async function editedProjectWithGatedIndexing(fail = false) {CODE
LOW__tests__/default-export-declaration.test.ts193 'src/animated/AnimatedColor.ts': `export function getRgbaValueAndNativeColor(value: string): string {CODE
LOW__tests__/explore-synth-link-endpoints.test.ts109 function implementationsInEdgeOrder(): string[] {CODE
LOW__tests__/daemon-older-version.test.ts529 function holdWriterSlotForSuccessor(): string {CODE
LOW__tests__/dead-code.test.ts793export function registerChartConfiguration(): void {CODE
LOW__tests__/explore-nl-stopword-collision.test.ts161 'export function startExtensionHostProcess(): ExtensionHostConnection {\n' +CODE
LOWsrc/directory.ts419export function findIndexedSubprojectRoots(CODE
LOWsrc/directory.ts475function eligibleForSubprojectScan(base: string): boolean {CODE
LOWsrc/utils.ts357export function sensitiveDirectoryRefusal(dirPath: string): string | null {CODE
LOWsrc/project-config.ts354export function loadIncludeIgnoredPatterns(rootDir: string): string[] {CODE
LOWsrc/project-config.ts412export function addIncludeIgnoredPatterns(rootDir: string, patterns: string[]): number {CODE
LOWsrc/upgrade/update-check.ts239export function checkForUpdateInBackground(CODE
LOWsrc/upgrade/index.ts288export function parseLatestTagFromLocation(location: string | undefined): string | null {CODE
LOWsrc/upgrade/index.ts617function selfHealInstalledSurfaces(deps: UpgradeDeps): void {CODE
LOWsrc/upgrade/index.ts780export function buildWindowsUpgradeScript(bundleRoot: string, version: string, arch: string): string {CODE
LOWsrc/bin/command-supervision.ts54export function installCommandSupervision(label: string, watchdog: WatchdogOptions = {}): CommandSupervision {CODE
LOWsrc/bin/codegraph.ts1143function describeFilesMissingSymbols(health: { needsReindex: string[]; parseErrors: string[] }): string[] {CODE
LOWsrc/graph/dynamic-boundary-report.ts204export function shortlistBoundaryCandidates(CODE
LOWsrc/ui-server/api/screens.ts180function arrivesFromAnotherContext(edge: Edge): boolean {CODE
LOWsrc/mcp/index-version-warning.ts42export function formatIndexVersionWarning(build: IndexBuildInfo): string {CODE
LOWsrc/mcp/daemon.ts782export function acquireLockViaExclusiveOpen(pidPath: string, info: DaemonLockInfo): boolean {CODE
LOWsrc/mcp/daemon-registry.ts210export async function clearStaleDaemonArtifacts(root: string): Promise<boolean> {CODE
LOWsrc/mcp/daemon-paths.ts76export function getDaemonSocketCandidates(projectRoot: string): string[] {CODE
LOWsrc/mcp/stdin-teardown.ts26export function treatStdinFailureAsShutdown(CODE
LOWsrc/mcp/startup-handshake.ts49export function parseStartupHandshakeTimeoutMs(raw: string | undefined): number {CODE
LOWsrc/mcp/startup-handshake.ts62export function armStartupHandshakeTimeout(CODE
LOWsrc/mcp/process-identity.ts125export function isCodeGraphServerCommandLine(commandLine: string): boolean {CODE
LOWsrc/mcp/tools.ts900function exploreLineNumbersEnabled(): boolean {CODE
LOWsrc/mcp/tools.ts933function resolveCatchUpGateTimeoutMs(): number {CODE
LOWsrc/mcp/tools.ts1968export function describeOmittedDefinitions(nodes: readonly Node[]): string {CODE
LOWsrc/mcp/tools.ts2057function resolveProjectIdleTimeoutMs(): number {CODE
LOWsrc/mcp/proxy.ts627function startPpidWatchdogNoSocket(onDeath: () => void): void {CODE
LOWsrc/mcp/stdout-teardown.ts25export function treatStdoutFailureAsShutdown(CODE
LOWsrc/mcp/index.ts193export async function connectAnyDaemonCandidate(CODE
LOWsrc/mcp/liveness-watchdog.ts312export function installMainThreadWatchdog(options: WatchdogOptions = {}): WatchdogHandle | null {CODE
LOWsrc/search/query-paths.ts202function stripLineTokenPunctuation(token: string): string {CODE
LOWsrc/search/identifier-segments.ts138export function extractSegmentSearchWords(query: string): string[] {CODE
LOWsrc/resolution/c-feature-variants.ts54export function clearCFeatureVariantMemos(context: ResolutionContext): void {CODE
LOWsrc/resolution/callback-synthesizer.ts1378async function goCrossFileMethodContainsEdges(queries: QueryBuilder, onYield: MaybeYield): Promise<Edge[]> {CODE
LOWsrc/resolution/callback-synthesizer.ts4862async function erlangBehaviourDispatchEdges(queries: QueryBuilder, ctx: ResolutionContext, onYield: MaybeYield): PromiseCODE
LOWsrc/resolution/path-aliases.ts409export function aliasAndBaseUrlCandidates(CODE
LOWsrc/resolution/import-resolver.ts413function resolveImportPathUncached(CODE
LOWsrc/resolution/import-resolver.ts1285function findSourceForEmittedSpecifier(CODE
LOWsrc/resolution/import-resolver.ts1608function loadCppIncludeDirsFromCompileDB(projectRoot: string): string[] | null {CODE
LOWsrc/resolution/import-resolver.ts1717function loadCppIncludeDirsHeuristic(projectRoot: string): string[] {CODE
LOWsrc/resolution/import-resolver.ts2642export function resolvePhpImportedStaticCall(CODE
LOWsrc/resolution/import-resolver.ts2746export function resolvePhpQualifiedClassRef(CODE
LOWsrc/resolution/import-resolver.ts2820export function resolveTsQualifiedTypeRef(ref: UnresolvedRef, context: ResolutionContext): ResolvedRef | null | undefineCODE
LOWsrc/resolution/import-resolver.ts3478function resolvePythonModuleMember(CODE
LOWsrc/resolution/import-resolver.ts3684function resolveObjectLiteralAlias(CODE
LOWsrc/resolution/import-resolver.ts3696function resolveModuleImportToFile(CODE
93 more matches not shown…
Overly Generic Function Names32 hits · 34 pts
SeverityFileLineSnippetContext
LOW__tests__/ui-trails.test.ts202export function handleRequest(key: string): string {CODE
LOW__tests__/ui-trails.test.ts719export function handleRequest(key: string): string {CODE
LOW__tests__/python-from-import-module-file.test.ts71 'pkg/__init__.py': 'def helper():\n return 1\n',CODE
LOW__tests__/python-from-import-module-file.test.ts86 'src/app/__init__.py': 'def helper():\n return 1\n',CODE
LOW__tests__/scala-bare-call-scope.test.ts43 def helper(): Int = 1CODE
LOW__tests__/sync-module-importers.test.ts46 'lib/impl.py': 'def helper():\n return 1\n',CODE
LOW__tests__/extraction.test.ts9662 private def helper(): Unit = {}CODE
LOW__tests__/extraction.test.ts10994 const js = extractFromSource('service.xsjs', 'function handleRequest() { return 1; }');CODE
LOW__tests__/extraction.test.ts11130 fs.writeFileSync(path.join(dir, 'pkg', 'foo.py'), `widget = {"n": 1}\ndef helper():\n return 1\n`);CODE
LOW__tests__/ui-server-api.test.ts173export function handleRequest(service: Service, key: string): string {CODE
LOW__tests__/python-module-resolution.test.ts380 'scripts/helpers.py': 'def helper():\n return 1\n',CODE
LOW__tests__/python-module-resolution.test.ts382 'lib/helpers.py': 'def helper():\n return 2\n',CODE
LOW__tests__/python-module-resolution.test.ts397 'helpers.py': 'def helper():\n return 1\n',CODE
LOW__tests__/function-ref.test.ts1353 global_in_nested_def: [{ 'm.py': 'from decoy import Decoy\nconn = None\n\ndef init():\n def helper():\n CODE
LOW__tests__/python-outside-bases.test.ts128 def helper(self):CODE
LOW__tests__/python-outside-bases.test.ts133 def helper(self):CODE
LOW__tests__/celery-dispatch-synthesizer.test.ts56 `def process_data(x):CODE
LOW__tests__/celery-dispatch-synthesizer.test.ts69def handle_request(req):CODE
LOW__tests__/jest-manual-mocks.test.ts54export function handleRequest(name: string, role: string): string {CODE
LOW__tests__/python-resolution-work.test.ts66 'helpers.py': 'def helper():\n return 1\n',CODE
LOW__tests__/python-resolution-work.test.ts96 for (let k = 0; k < CANDIDATES; k++) files[`lib${k}/helpers.py`] = 'def helper():\n return 1\n';CODE
LOW⚡__tests__/same-file-match-confidence.test.ts52 write('x.py', 'def helper():\n return 1\n\ndef main():\n return helper()\n');CODE
LOW⚡__tests__/same-file-match-confidence.test.ts53 write('pkg/other.py', 'def helper():\n return 2\n');CODE
LOW⚡__tests__/same-file-match-confidence.test.ts60 write('a/b/c/x.py', 'def helper():\n return 1\n\ndef main():\n return helper()\n');CODE
LOW⚡__tests__/same-file-match-confidence.test.ts61 write('a/b/c/y.py', 'def helper():\n return 2\n');CODE
LOW__tests__/python-receiver-guessing.test.ts55 def helper(self):CODE
LOW__tests__/python-attr-types.test.ts531 'client.py': 'class Client:\n def send(self):\n pass\n\ndef make(k):\n return k()\n\ndef helper():\CODE
LOW__tests__/python-attr-types.test.ts541 write({ 'client.py': 'class Client:\n def send(self):\n pass\n\ndef make(k) -> Client:\n return k()CODE
LOW__tests__/ui-flow-api.test.ts110export function handleRequest(id: string): string {CODE
LOW__tests__/python-module-global-receiver-call.test.ts106 const code = 'class A:\n def run(self):\n return 1\n\n\n_svc = A()\n\n\ndef use():\n def helper():\n CODE
LOW__tests__/workspace-package-entries.test.ts261 "import { formatLabel, isAdmin } from 'acme-shared/utils';\nexport function handleRequest(name: string, role: striCODE
LOWsrc/ui-server/index.ts237async function handleRequest(CODE
Verbosity Indicators19 hits · 29 pts
SeverityFileLineSnippetContext
LOW⚡src/context/index.ts516 // Step 1: Extract potential symbol names from queryCOMMENT
LOW⚡src/context/index.ts520 // Step 2: Look up exact matches for extracted symbolsCOMMENT
LOWsrc/context/index.ts672 // Step 3: Run text search for natural language term matchingCOMMENT
LOWsrc/context/index.ts727 // Step 4: Merge results, taking the max score when duplicates appearCOMMENT
LOWsrc/mcp/tools.ts4531 // Step 1: Find relevant context with generous parameters.COMMENT
LOWsrc/mcp/tools.ts4910 // Step 2: Group nodes by file, score by relevanceCOMMENT
LOWsrc/mcp/tools.ts5403 // Step 3: Build relationship mapCOMMENT
LOWsrc/mcp/tools.ts5478 // Step 4: Read contiguous file sectionsCOMMENT
LOWsrc/installer/index.ts96 // Step 1: which agent targets? Asked FIRST so the user knows whatCOMMENT
LOWsrc/installer/index.ts107 // Step 2: install the codegraph npm package on PATH (always offered;COMMENT
LOWsrc/installer/index.ts135 // Step 3: where the per-agent config files should land.COMMENT
LOWsrc/installer/index.ts166 // Step 4: auto-allow permissions (only meaningful for Claude Code andCOMMENT
LOWsrc/installer/index.ts236 // Step 5: per-target install loop.COMMENT
LOWsrc/installer/index.ts285 // Step 6: install wires up agents only — it deliberately does NOT index.COMMENT
LOWsrc/installer/index.ts474 // Step 1: which location — asked FIRST, the one decision the userCOMMENT
LOWsrc/installer/index.ts498 // Step 2: which agents. Default is every agent, so the user doesn'tCOMMENT
LOWsrc/installer/index.ts513 // Step 3: sweep + per-agent feedback.COMMENT
LOWsrc/installer/index.ts533 // Step 4: for local uninstall, the index dir is separate — point atCOMMENT
LOWsrc/installer/index.ts596 // Step 5: summary.COMMENT
Structural Annotation Overuse19 hits · 29 pts
SeverityFileLineSnippetContext
LOW⚡src/context/index.ts516 // Step 1: Extract potential symbol names from queryCOMMENT
LOW⚡src/context/index.ts520 // Step 2: Look up exact matches for extracted symbolsCOMMENT
LOWsrc/context/index.ts672 // Step 3: Run text search for natural language term matchingCOMMENT
LOWsrc/context/index.ts727 // Step 4: Merge results, taking the max score when duplicates appearCOMMENT
LOWsrc/mcp/tools.ts4531 // Step 1: Find relevant context with generous parameters.COMMENT
LOWsrc/mcp/tools.ts4910 // Step 2: Group nodes by file, score by relevanceCOMMENT
LOWsrc/mcp/tools.ts5403 // Step 3: Build relationship mapCOMMENT
LOWsrc/mcp/tools.ts5478 // Step 4: Read contiguous file sectionsCOMMENT
LOWsrc/installer/index.ts96 // Step 1: which agent targets? Asked FIRST so the user knows whatCOMMENT
LOWsrc/installer/index.ts107 // Step 2: install the codegraph npm package on PATH (always offered;COMMENT
LOWsrc/installer/index.ts135 // Step 3: where the per-agent config files should land.COMMENT
LOWsrc/installer/index.ts166 // Step 4: auto-allow permissions (only meaningful for Claude Code andCOMMENT
LOWsrc/installer/index.ts236 // Step 5: per-target install loop.COMMENT
LOWsrc/installer/index.ts285 // Step 6: install wires up agents only — it deliberately does NOT index.COMMENT
LOWsrc/installer/index.ts474 // Step 1: which location — asked FIRST, the one decision the userCOMMENT
LOWsrc/installer/index.ts498 // Step 2: which agents. Default is every agent, so the user doesn'tCOMMENT
LOWsrc/installer/index.ts513 // Step 3: sweep + per-agent feedback.COMMENT
LOWsrc/installer/index.ts533 // Step 4: for local uninstall, the index dir is separate — point atCOMMENT
LOWsrc/installer/index.ts596 // Step 5: summary.COMMENT
Modern AI Meta-Vocabulary5 hits · 15 pts
SeverityFileLineSnippetContext
MEDIUMdocs/design/rust-kernel-migration-plan.md295## 3. Phase 0 — scaffold (do first, ~days)COMMENT
MEDIUMcodegraph-kernel/src/ids.rs14//! in `__tests__/kernel-scaffold.test.ts`.COMMENT
MEDIUMsrc/graph/named-symbol-flow.ts106 // hand-written implementations before the protobuf scaffold).COMMENT
MEDIUMsrc/mcp/tools.ts5386 // the agent rarely needs to see the protobuf scaffold or gomock outputCOMMENT
MEDIUMsrc/resolution/callback-synthesizer.ts1849 // a protoc-emitted scaffold rather than someone naming a structCOMMENT
Fake / Example Data14 hits · 14 pts
SeverityFileLineSnippetContext
LOW__tests__/extraction-old-git.test.ts45 runGit(dir, 'config', 'user.email', 'test@test.com');CODE
LOW__tests__/extraction.test.ts8905 git(libDir, 'config', 'user.email', 'test@test.com');CODE
LOW__tests__/extraction.test.ts8915 git(mainDir, 'config', 'user.email', 'test@test.com');CODE
LOW__tests__/extraction.test.ts8944 git('config', 'user.email', 'test@test.com');CODE
LOW__tests__/extraction.test.ts9133 git(root, 'config', 'user.email', 'test@test.com');CODE
LOW__tests__/extraction.test.ts9142 git(path.join(root, 'sub_repo1'), 'config', 'user.email', 'test@test.com');CODE
LOW__tests__/extraction.test.ts9314 git(root, 'config', 'user.email', 'test@test.com');CODE
LOW__tests__/extraction.test.ts14501 runGit('config', 'user.email', 'test@test.com');CODE
LOW__tests__/sync.test.ts277 git('config', 'user.email', 'test@test.com');CODE
LOW__tests__/sync.test.ts433 git('config', 'user.email', 'test@test.com');CODE
LOW__tests__/sync.test.ts1207 git('config', 'user.email', 'test@test.com');CODE
LOW__tests__/src-build-folders.test.ts56 git(dir, 'config', 'user.email', 'test@test.com');CODE
LOW__tests__/objc-declaration-types.test.ts175 const placeholder = cg.searchNodes('placeholder', { limit: 5 }).map((r) => `${r.node.kind} ${r.node.name}`);CODE
LOW__tests__/objc-declaration-types.test.ts177 const struct = cg.getNodesByName('placeholder').find((n) => n.kind === 'struct');CODE
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippetContext
CRITICALui/src/lib/filecode-model.ts324 a.call.relation.node.name.localeCompare(b.call.relation.node.name)CODE
Synthetic Comment Markers2 hits · 10 pts
SeverityFileLineSnippetContext
HIGH__tests__/generated-detection.test.ts94 '//------------------------------------------------------------------------------\n// <auto-generated>\n// ThiCODE
HIGH__tests__/vbnet-keyword-prefixed-names.test.ts166' This code was generated by a tool.CODE
AI Slop Vocabulary3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUM__tests__/resolution.test.ts2806 // way). Method↔type association is by qualifiedName, robust where the methodCOMMENT
MEDIUMscripts/agent-eval/ab-new-vs-baseline.sh13# This is the harness those metrics were built for: both arms are codegraph-on,COMMENT
MEDIUMscripts/agent-eval/itrun.sh80# Busy signals. The robust one is the spinner's elapsed-time-in-parens, whichCOMMENT
Empty Error Handlers1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHscripts/benchmarks/observe-index.py27except (FileNotFoundError, ProcessLookupError):CODE
Example Usage Blocks3 hits · 4 pts
SeverityFileLineSnippetContext
LOWscripts/build-kernel.sh13# Usage:COMMENT
LOWscripts/build-bundle.sh12# Usage:COMMENT
LOWscripts/local-install.sh6# Usage:COMMENT
Self-Referential Comments1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUM__tests__/generated-detection.test.ts138 ['YAML/shell — "#" comment leader', '# This file is generated by kustomize. Do not edit.\napiVersion: v1\n'],CODE
Deep Nesting2 hits · 2 pts
SeverityFileLineSnippetContext
LOWscripts/benchmarks/observe-index.py46CODE
LOWassets/generate-language-tiles.py167CODE