Repository Analysis

yologdev/yoyo-evolve

A coding agent that evolves its own source, in public — 200 lines of Rust on day one, every commit since agent-written and tests-gated.

8.9 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of yologdev/yoyo-evolve, a Rust project with 1,842 GitHub stars. SynthScan v2.0 examined 144,333 lines of code across 182 source files, recording 555 pattern matches distributed across 13 syntactic categories. The overall adjusted score of 8.9 places this repository in the Low AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

8.9
Adjusted Score
8.9
Raw Score
100%
Time Factor
2026-07-14
Last Push
1.8K
Stars
Rust
Language
144.3K
Lines of Code
182
Files
555
Pattern Hits
2026-07-14
Scan Date
0.00
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 0HIGH 0MEDIUM 353LOW 202

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 555 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Decorative Section Separators308 hits · 932 pts
SeverityFileLineSnippetContext
MEDIUMtests/integration.rs36// ── --help ──────────────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs78// ── --version ───────────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs117// ── Empty stdin (piped mode) ────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs212// ── Unknown flags ───────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs234// ── --no-color suppresses ANSI codes ────────────────────────────────COMMENT
MEDIUMtests/integration.rs271// ── Missing API key ────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs337// ── Flags requiring values show clear errors ────────────────────────COMMENT
MEDIUMtests/integration.rs380// ── /help output lists all documented commands ──────────────────────COMMENT
MEDIUMtests/integration.rs453// ── --no-color output contains no ANSI escape sequences ─────────────COMMENT
MEDIUMtests/integration.rs498// ── Multiple unknown flags each produce warnings ────────────────────COMMENT
MEDIUMtests/integration.rs538// ── --system-file with nonexistent file shows useful error ──────────COMMENT
MEDIUMtests/integration.rs586// ── Piped input with bad API key (needs network) ────────────────────COMMENT
MEDIUMtests/integration.rs588// ── --thinking without a value ───────────────────────────────────────COMMENT
MEDIUMtests/integration.rs611// ── --verbose flag accepted ─────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs649// ── --allow and --deny flags accepted ───────────────────────────────COMMENT
MEDIUMtests/integration.rs719// ── --model without value (specific exit code + error format) ───────COMMENT
MEDIUMtests/integration.rs746// ── Unknown slash-command-like arguments don't crash ────────────────COMMENT
MEDIUMtests/integration.rs770// ── Piped input with bad API key (needs network) ────────────────────COMMENT
MEDIUMtests/integration.rs817// ── Error message quality ───────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs921// ── Flag combinations ───────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs1002// ── Exit codes ──────────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs1059// ── Output format ───────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs1159// ── Edge cases ──────────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs1336// ── UX timing tests ─────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs1488// ── Dogfood UX verification tests (Issue #69) ──────────────────────COMMENT
MEDIUMtests/integration.rs1488// ── Dogfood UX verification tests (Issue #69) ──────────────────────COMMENT
MEDIUMtests/integration.rs1696// ── --allow-dir and --deny-dir flags ────────────────────────────────COMMENT
MEDIUMtests/integration.rs1809// ── /plan command ────────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs1825// ── --image flag ─────────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs1915// ── Benchmark-relevant properties ───────────────────────────────────COMMENT
MEDIUMtests/integration.rs1989// ── Setup wizard wiring (Issue #157) ────────────────────────────────COMMENT
MEDIUMtests/integration.rs1989// ── Setup wizard wiring (Issue #157) ────────────────────────────────COMMENT
MEDIUMtests/integration.rs2125// ── --no-bell ───────────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs2146// ── /map command ─────────────────────────────────────────────────────COMMENT
MEDIUMtests/integration.rs2164// ── MCP collision guard (Day 39) ─────────────────────────────────────COMMENT
MEDIUMtests/integration.rs2193// ── Skill loader contract regression guard ────────────────────────────COMMENT
MEDIUMscripts/skill_evolve.sh133# ── Gate 0: refuse to run with a dirty working tree ────────────────────COMMENT
MEDIUMscripts/skill_evolve.sh145# ── Gate 1: session counter ────────────────────────────────────────────COMMENT
MEDIUMscripts/skill_evolve.sh155# ── Gate 2: 24h cooldown ───────────────────────────────────────────────COMMENT
MEDIUMscripts/skill_evolve.sh170# ── Gate 3: build is green ─────────────────────────────────────────────COMMENT
MEDIUMscripts/skill_evolve.sh197# ── Identity context ───────────────────────────────────────────────────COMMENT
MEDIUMscripts/skill_evolve.sh217# ── Compose prompt ─────────────────────────────────────────────────────COMMENT
MEDIUMscripts/skill_evolve.sh253# ── Dry-run short-circuit ──────────────────────────────────────────────COMMENT
MEDIUMscripts/skill_evolve.sh267# ── Snapshot HEAD (for revert on build break) ──────────────────────────COMMENT
MEDIUMscripts/skill_evolve.sh277# ── Invoke yoyo ────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/extract_trajectory.py28# ── Configuration constants ──────────────────────────────────────────────COMMENT
MEDIUMscripts/extract_trajectory.py38# ── Helpers ──────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/extract_trajectory.py85# ── Section 1: Recent session outcomes ───────────────────────────────────COMMENT
MEDIUMscripts/extract_trajectory.py155# ── Section 2: Per-task success rate from git log ────────────────────────COMMENT
MEDIUMscripts/extract_trajectory.py224# ── Section 3: Reverts in window (already counted above) ─────────────────COMMENT
MEDIUMscripts/extract_trajectory.py235# ── Section 4: Recurring CI errors via gh run view --log-failed ──────────COMMENT
MEDIUMscripts/extract_trajectory.py352# ── Section 5: Provider/API health from audit.jsonl files ────────────────COMMENT
MEDIUMscripts/extract_trajectory.py403# ── Final assembly ───────────────────────────────────────────────────────COMMENT
MEDIUMscripts/dream.sh123# ── Gate 0: refuse a dirty working tree ────────────────────────────────COMMENT
MEDIUMscripts/dream.sh134# ── Gate 1: cooldown (~7 days) ─────────────────────────────────────────COMMENT
MEDIUMscripts/dream.sh149# ── Build the binary so we can invoke yoyo ─────────────────────────────COMMENT
MEDIUMscripts/dream.sh168# ── Day number, timestamp, identity context ────────────────────────────COMMENT
MEDIUMscripts/dream.sh183# ── Compose the dream prompt ───────────────────────────────────────────COMMENT
MEDIUMscripts/dream.sh253# ── Dry-run short-circuit ──────────────────────────────────────────────COMMENT
MEDIUMscripts/dream.sh263# ── Snapshot HEAD (for revert on out-of-scope writes) ──────────────────COMMENT
248 more matches not shown…
Over-Commented Block118 hits · 116 pts
SeverityFileLineSnippetContext
LOWmutants.toml1# cargo-mutants configuration for yoyoCOMMENT
LOWtools/gasp-emit/src/main.rs1//! gasp-emit — maps yoyo's evolve-session transitions onto the GASP eventCOMMENT
LOWtests/integration.rs2161 // is in unit tests (map_in_help_text).COMMENT
LOWtests/integration.rs2241 "skill-evolve meta-skill must be present"COMMENT
LOWscripts/gasp_shim.sh1#!/bin/bashCOMMENT
LOWscripts/gasp_shim.sh221# current (called automatically from gasp_session_end):COMMENT
LOWscripts/yoyo_context.sh1#!/bin/bashCOMMENT
LOWscripts/evolve.sh1#!/bin/bashCOMMENT
LOWscripts/evolve.sh141SESSION_TASKS_ATTEMPTED=0COMMENT
LOWscripts/evolve.sh541COMMENT
LOWscripts/social.sh1#!/bin/bashCOMMENT
LOWscripts/refresh_sponsors.py681 # Failures warn and leave shouted_out=false so the next run retries.COMMENT
LOWscripts/create_address_book.sh1#!/bin/bashCOMMENT
LOWscripts/skill_evolve.sh1#!/bin/bashCOMMENT
LOWscripts/run_mutants.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/dream.sh1#!/bin/bashCOMMENT
LOWscripts/dream.sh21# Exits 0 silently when the cooldown gate is active (most cron fires are no-ops).COMMENT
LOWscripts/bench/humaneval_one.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/bench/humaneval_one.sh21# - No multi-problem batch running / aggregate pass@1 in ONE invocation.COMMENT
LOWscripts/bench/humaneval_one.sh41# script builds/uses `cargo run --release --`.COMMENT
LOWscripts/bench/humaneval_run.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/bench/humaneval_run.sh21# USAGE:COMMENT
LOWsrc/commands_config.rs321 " session: auto-save on exit ({})",COMMENT
LOWsrc/commands_config.rs341// a runtime mirror and `/config show` stays a file-introspectionCOMMENT
LOWsrc/commands_config.rs381/// Return `true` if a config key looks like a secret and its valueCOMMENT
LOWsrc/commands_config.rs481 };COMMENT
LOWsrc/repl.rs281///COMMENT
LOWsrc/repl.rs1441/// worked) and we continue regardless of the text heuristic. An empty queueCOMMENT
LOWsrc/dispatch.rs1//! REPL slash-command routing.COMMENT
LOWsrc/smart_edit.rs1//! SmartEditTool — augments edit_file "not found" errors with line-number contextCOMMENT
LOWsrc/sync_util.rs1//! Shared synchronisation helpers — lock-recovery for poisoned locks.COMMENT
LOWsrc/sync_util.rs21/// # ExamplesCOMMENT
LOWsrc/tools.rs1//! Tool definitions for the yoyo agent.COMMENT
LOWsrc/tools.rs41use yoagent::tools::list::ListFilesTool;COMMENT
LOWsrc/tools.rs61/// (when available and in interactive mode), producing `AgentEvent::ProgressMessage`COMMENT
LOWsrc/tools.rs121 text: output.to_string(),COMMENT
LOWsrc/tools.rs1081/// Hard cap on sub-agent nesting depth. `depth 0` = the top-level parent'sCOMMENT
LOWsrc/commands_git_review.rs121 eprintln!("{DIM} install gh: https://cli.github.com/{RESET}\n");COMMENT
LOWsrc/config.rs1//! Permission config, directory restrictions, MCP server config, and TOML parsing helpers.COMMENT
LOWsrc/config.rs41/// Directory restriction configuration for file access security.COMMENT
LOWsrc/config.rs281COMMENT
LOWsrc/config.rs441pub struct McpServerConfig {COMMENT
LOWsrc/config.rs481/// Check whether auto-commit is enabled in the config.COMMENT
LOWsrc/config.rs501/// Reads `lite` from the given config map. Defaults to `false`COMMENT
LOWsrc/config.rs541pub fn parse_quiet_from_config(config: &std::collections::HashMap<String, String>) -> bool {COMMENT
LOWsrc/commands_session.rs41// ── compact ──────────────────────────────────────────────────────────────COMMENT
LOWsrc/memory.rs221/// Higher scores indicate better matches.COMMENT
LOWsrc/commands_risk_emerging.rs1//! Emerging-risk / anticipatory detection for the `/risk` subsystem.COMMENT
LOWsrc/prompt_budget.rs1//! Session wall-clock budget and audit log helpers.COMMENT
LOWsrc/prompt_budget.rs161// stay inside a tighter budget than the workflow timeout, so future taskCOMMENT
LOWsrc/prompt_budget.rs181static SESSION_BUDGET_SECS: OnceLock<Option<u64>> = OnceLock::new();COMMENT
LOWsrc/prompt_budget.rs441 // session_budget_remaining() uses for the expired case.COMMENT
LOWsrc/prompt_budget.rs501 // ── End-to-end set-path test for #262 ─────────────────────────────COMMENT
LOWsrc/prompt_budget.rs521 // test that calls `session_budget_remaining()` orCOMMENT
LOWsrc/prompt_budget.rs581 // Set path #3: a *huge* grace window — bigger than the budgetCOMMENT
LOWsrc/hooks.rs1// Hook system — pre/post tool execution pipelineCOMMENT
LOWsrc/hooks.rs201/// Phase at which a shell hook fires.COMMENT
LOWsrc/hooks.rs341 }COMMENT
LOWsrc/git.rs21 "rm",COMMENT
LOWsrc/git.rs41 // Compare the supplied working dir against the compile-time project root.COMMENT
58 more matches not shown…
AI Slop Vocabulary21 hits · 71 pts
SeverityFileLineSnippetContext
MEDIUMscripts/test_scan_commitments.py378 """The exact failure mode the human named on #589: when the harnessSTRING
MEDIUMscripts/evolve.sh153# Inline cleanup is robust to that risk; PID-suffixed worktree paths boundCOMMENT
MEDIUMscripts/evolve.sh266# Keep core skills in ./skills, but allow the harness to fetch reusable externalCOMMENT
MEDIUMscripts/evolve.sh550# tagged source=discussion (#589, the harness half of #582) — promises madeCOMMENT
MEDIUMscripts/skill_evolve.sh36# the eval fact must name THIS harness's actual oracle (no clippy, noCOMMENT
MEDIUMscripts/skill_evolve.sh312 # harness-side belt that turns them into actual constraints.COMMENT
MEDIUMscripts/dream.sh222# Write ONLY these two files (the harness reverts anything else — this is a hard limit):COMMENT
MEDIUMscripts/bench/humaneval_run.sh6# It COMPOSES the single-case harness `humaneval_one.sh` (do NOT reinvent theCOMMENT
MEDIUMscripts/bench/humaneval_run.sh19# over the small inline problem set the single-case harness encodes.COMMENT
MEDIUMscripts/bench/humaneval_run.sh28# from the single-case harness. Do NOT hardcode the list independently.COMMENT
MEDIUMscripts/bench/humaneval_run.sh30# NOTE: this is a Kind:evolve script — a bench harness for yoyo's own capabilityCOMMENT
MEDIUMscripts/bench/humaneval_run.sh37# anywhere. The single-case harness resolves its own REPO_ROOT/cwd, so we onlyCOMMENT
MEDIUMscripts/bench/humaneval_run.sh100# other = the harness itself errored (crash, missing key, build failure).COMMENT
MEDIUMscripts/bench/humaneval_run.sh101# We count both 1 and other as "not passed", but track harness errors distinctlyCOMMENT
MEDIUMscripts/bench/humaneval_run.sh102# so a harness bug isn't silently scored as a wrong answer.COMMENT
MEDIUMscripts/bench/humaneval_run.sh137# arithmetic if python3 is absent (matches the single-case harness's posture).COMMENT
MEDIUMscripts/bench/humaneval_run.sh149# headline so a harness bug is never silently scored as a wrong answer.COMMENT
MEDIUMsrc/commands_info.rs1292/// Uses serde_json for robust parsing.COMMENT
MEDIUMsrc/main.rs854 // The caller already trims, but we should be robust to \n/doctor\n etc.COMMENT
MEDIUMsrc/format/markdown.rs169 // Definitely not a fence, header, or block element — flush as inline textCOMMENT
MEDIUMsrc/format/markdown.rs210 // Definitely not a closing fence — flush as code content immediatelyCOMMENT
Modern AI Meta-Vocabulary20 hits · 60 pts
SeverityFileLineSnippetContext
MEDIUMjournals/JOURNAL.md1733Three planned, three shipped. Task 1 closed Issue #258 — the context window usage bar was stuck at 0% because I was readCODE
MEDIUMjournals/JOURNAL.md1870Assessment and plan, no implementation. Scoped two tasks — retrying the `--fallback` provider failover (Issue #205, reveCODE
MEDIUMjournals/JOURNAL.md1874Tagged v0.1.4 — the release that bundles everything from Days 24–28: SubAgentTool, AskUserTool, TodoTool, context manageCODE
MEDIUMjournals/JOURNAL.md1876## Day 27 — 18:39 — config path fix ships, context window dodges again (session 5?)COMMENT
MEDIUMjournals/JOURNAL.md1878Two tasks planned, one shipped. Task 2 fixed the config path gap — the welcome message promised `~/.yoyo.toml` but the lCODE
MEDIUMjournals/JOURNAL.md1880## Day 26 — 23:22 — flaky tests and stream errors, but the context window dodges againCOMMENT
MEDIUMjournals/JOURNAL.md1882Two out of three shipped. Task 1 fixed the flaky todo tests — the global statics (`TODO_LIST`, `TODO_NEXT_ID`) were causCODE
MEDIUMjournals/JOURNAL.md1886Two tasks planned, one shipped — but it was the right one to finally land. TodoTool has been "retry" since Day 24, reverCODE
MEDIUMjournals/JOURNAL.md1890Day 26 opens with assessment and planning — no code, just blueprints. Scoped two tasks: fixing the hardcoded 200K contexCODE
MEDIUMjournals/JOURNAL.md2015Three community issues knocked out in one session. Removed the `benchmarks/` directory entirely (Issue #155) — it was scCODE
MEDIUMjournals/JOURNAL.md2037## Day 21 — 16:24 — markdown rendering, architecture docs, and benchmark scaffoldingCOMMENT
MEDIUMjournals/JOURNAL.md2278Added `/run <cmd>` and `!<cmd>` for executing shell commands directly from the REPL without going through the AI — no APCODE
MEDIUMjournals/llm-wiki.md17Added MCP documentation to the README so external agents can actually discover the server, created `mcp.json` as the staCODE
MEDIUMjournals/llm-wiki.md23Extended the MCP server with three new tools: `create_page`, `update_page`, and `agent_context` — so external agents canCODE
MEDIUMscripts/test_scan_commitments.py172 # Defensive: LLM hallucinates an issue number we didn't pass in.COMMENT
MEDIUMscripts/scan_commitments.py328 # hallucinations are a signal the prompt or model is misbehaving.COMMENT
MEDIUMskills/skill-creator/SKILL.md104### 6. Generate the SKILL.md scaffoldCOMMENT
MEDIUMsrc/commands_session.rs156/// This runs BEFORE a prompt attempt (not after) to prevent overflow during agentic execution.COMMENT
MEDIUMsrc/commands_spawn.rs1023 // failure is a dim note, never a blocker (#341, orchestration scale).COMMENT
MEDIUMsrc/commands_spawn.rs3059 // --- spawn manifest (#341: codified/replayable orchestration) ---COMMENT
Hyper-Verbose Identifiers25 hits · 30 pts
SeverityFileLineSnippetContext
LOWscripts/test_scan_commitments.py43 def test_skips_issues_with_no_bot_comment(self):CODE
LOWscripts/test_scan_commitments.py48 def test_skips_issues_with_no_comments(self):CODE
LOWscripts/test_scan_commitments.py53 def test_finds_last_bot_comment(self):CODE
LOWscripts/test_scan_commitments.py87 def test_truncates_long_bodies(self):CODE
LOWscripts/test_scan_commitments.py95 def test_truncates_long_git_log(self):CODE
LOWscripts/test_scan_commitments.py102 def test_extracts_first_text_block(self):CODE
LOWscripts/test_scan_commitments.py107 def test_returns_none_for_malformed_json(self):CODE
LOWscripts/test_scan_commitments.py111 def test_returns_none_for_no_text_block(self):CODE
LOWscripts/test_scan_commitments.py115 def test_returns_none_for_empty_content(self):CODE
LOWscripts/test_scan_commitments.py127 def test_empty_issues_skips_api_call(self):CODE
LOWscripts/test_scan_commitments.py133 def test_issues_without_bot_comment_skip_api(self):CODE
LOWscripts/test_scan_commitments.py140 def test_renders_outstanding_block(self):CODE
LOWscripts/test_scan_commitments.py158 def test_no_outstanding_means_no_blocks(self):CODE
LOWscripts/test_scan_commitments.py165 def test_api_failure_returns_empty(self):CODE
LOWscripts/test_scan_commitments.py171 def test_unknown_issue_number_in_response_is_skipped(self):CODE
LOWscripts/test_scan_commitments.py69 def test_includes_up_to_two_prior_comments(self):CODE
LOWscripts/test_scan_commitments.py220 def test_discussion_source_renders_discussion_header(self):CODE
LOWscripts/test_scan_commitments.py238 def test_missing_source_defaults_to_issue(self):CODE
LOWscripts/test_scan_commitments.py255 def test_issue_and_discussion_same_number_dont_collide(self):CODE
LOWscripts/test_scan_commitments.py291 def test_unknown_source_treated_as_issue(self):CODE
LOWscripts/test_scan_commitments.py354 def test_bot_comment_present_is_triaged(self):CODE
LOWscripts/test_scan_commitments.py377 def test_bot_comment_dropped_by_unpaginated_fetch_is_false_negative(self):CODE
LOWscripts/format_discussions.py193def _paginate_replies_from_cursor(comment_id, start_cursor):STRING
LOWscripts/lint_evolve_heredocs.py24def find_param_expansion_blocks(src):CODE
LOWscripts/extract_trajectory.py278def collect_failed_ci_fingerprints(repo: str) -> list[tuple[str, list[str]]]:CODE
Excessive Try-Catch Wrapping13 hits · 16 pts
SeverityFileLineSnippetContext
LOWscripts/gasp_shim.sh358 except Exception as e: # one broken stream must not stop the othersCODE
LOWscripts/gasp_shim.sh394except Exception as e:CODE
LOWscripts/yoyo_context.sh73except Exception as e:CODE
MEDIUMscripts/format_discussions.py243 print(f"Error: REPO must be in 'owner/name' format, got: '{repo}'", file=sys.stderr)CODE
MEDIUMscripts/format_discussions.py249 print(f"Error: invalid repo format: '{repo}'", file=sys.stderr)CODE
MEDIUMscripts/format_discussions.py312 print("Error: repository not found in GraphQL response", file=sys.stderr)STRING
LOWscripts/evolve.sh592except Exception as e:CODE
LOWscripts/evolve.sh604 except Exception:CODE
LOWscripts/evolve.sh1874except Exception:CODE
LOWscripts/create_address_book.sh125except Exception as e:CODE
MEDIUMscripts/create_address_book.sh126 print(f'Error checking for existing Address Book: {e}', file=sys.stderr)CODE
LOWscripts/bench/humaneval_one.sh241except Exception as exc: # syntax error, import error, etc.CODE
LOWscripts/bench/humaneval_one.sh308 except Exception as exc:CODE
Verbosity Indicators9 hits · 14 pts
SeverityFileLineSnippetContext
LOWsrc/commands_update.rs18 // Step 1: Check for latest versionCOMMENT
LOWsrc/commands_update.rs56 // Step 2: Detect platform and find the right assetCOMMENT
LOWsrc/commands_update.rs86 // Step 3: Confirm with userCOMMENT
LOWsrc/commands_update.rs101 // Step 4: DownloadCOMMENT
LOWsrc/commands_update.rs128 // Step 5: Extract and replaceCOMMENT
LOWsrc/setup.rs224 // Step 1: Choose providerCOMMENT
LOWsrc/setup.rs262 // Step 2: API key (skip for ollama, special flow for bedrock)COMMENT
LOWsrc/setup.rs437 // Step 3: Model preferenceCOMMENT
LOWsrc/setup.rs475 // Step 4: Offer to save config (three choices)COMMENT
Structural Annotation Overuse9 hits · 14 pts
SeverityFileLineSnippetContext
LOWsrc/commands_update.rs18 // Step 1: Check for latest versionCOMMENT
LOWsrc/commands_update.rs56 // Step 2: Detect platform and find the right assetCOMMENT
LOWsrc/commands_update.rs86 // Step 3: Confirm with userCOMMENT
LOWsrc/commands_update.rs101 // Step 4: DownloadCOMMENT
LOWsrc/commands_update.rs128 // Step 5: Extract and replaceCOMMENT
LOWsrc/setup.rs224 // Step 1: Choose providerCOMMENT
LOWsrc/setup.rs262 // Step 2: API key (skip for ollama, special flow for bedrock)COMMENT
LOWsrc/setup.rs437 // Step 3: Model preferenceCOMMENT
LOWsrc/setup.rs475 // Step 4: Offer to save config (three choices)COMMENT
Example Usage Blocks7 hits · 10 pts
SeverityFileLineSnippetContext
LOWscripts/yoyo_context.sh5# Usage:COMMENT
LOWscripts/reset_day.sh4# Usage:COMMENT
LOWscripts/evolve.sh6# Usage:COMMENT
LOWscripts/social.sh7# Usage:COMMENT
LOWscripts/evolve-local.sh4# Usage:COMMENT
LOWscripts/create_address_book.sh11# Usage:COMMENT
LOWscripts/run_mutants.sh4# Usage:COMMENT
Deep Nesting10 hits · 10 pts
SeverityFileLineSnippetContext
LOWscripts/format_discussions.py491CODE
LOWscripts/scan_commitments.py197CODE
LOWscripts/scan_commitments.py255CODE
LOWscripts/lint_evolve_heredocs.py24CODE
LOWscripts/build_site.py52CODE
LOWscripts/refresh_sponsors.py331CODE
LOWscripts/format_issues.py133CODE
LOWscripts/extract_trajectory.py118CODE
LOWscripts/extract_trajectory.py278CODE
LOWscripts/extract_trajectory.py361CODE
Fake / Example Data10 hits · 9 pts
SeverityFileLineSnippetContext
LOWtests/integration.rs1836 .env("ANTHROPIC_API_KEY", "sk-test-fake-key")CODE
LOWtests/integration.rs1896 .env("ANTHROPIC_API_KEY", "sk-test-fake-key")CODE
LOWsrc/commands_git_review.rs1083 assert!(colored.contains("John Doe"));CODE
LOWsrc/commands_skill.rs1578 "test@test.com",CODE
LOWsrc/commands_info.rs2446 run(&["config", "user.email", "test@test.com"]);CODE
LOWsrc/commands_info.rs2788 .args(["config", "user.email", "test@test.com"])CODE
LOWsrc/prompt_retry.rs1419 std::env::set_var(key, "fake-key");CODE
LOWsrc/commands_git.rs2646 .args(["config", "user.email", "test@test.com"])CODE
LOWsrc/commands_spawn.rs2799 .args(["config", "user.email", "test@test.com"])CODE
LOWsrc/commands_file.rs1785 .args(["config", "user.email", "test@test.com"])CODE
Unused Imports3 hits · 3 pts
SeverityFileLineSnippetContext
LOWscripts/skill_evolve_report.py22CODE
LOWscripts/skill_evolve_report.py23CODE
LOWscripts/extract_trajectory.py24CODE
Redundant / Tautological Comments2 hits · 3 pts
SeverityFileLineSnippetContext
LOWscripts/evolve.sh806# Check if assessment was producedCOMMENT
LOWscripts/evolve.sh1009# Check if planning agent produced tasksCOMMENT