AI Slop Code Risk Monitor

crafter-station/petdex

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

A public gallery of animated pets for Codex, Claude Code, DeepSeek Harness, Hermes, OpenCode, Gemini CLI, and more.

2.7 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for crafter-station/petdex, a TypeScript project with 4,307 GitHub stars. SynthScan examined 128,103 lines of code across 761 source files, recording 277 pattern matches distributed across 14 syntactic categories. The legacy adjusted pattern signal is 2.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.

2.7
Adjusted Signal
2.7
Raw Pattern Score
100%
Time Factor
2026-10-10
Last Push
4.3K
Stars
TypeScript
Language
128.1K
Lines of Code
761
Files
277
Pattern Hits
2026-10-31
Scan Date
0.01
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 9.7/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 0.7/100 · LOW

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

Agent Over-Engineering Ratio 7.9/100 · LOW

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

PR Review Velocity Impact 12.4/100 · LOW

Which changes need focused human review? 277 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 4MEDIUM 21LOW 252

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 277 distinct pattern matches across 14 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.

Hyper-Verbose Identifiers133 hits · 138 pts
SeverityFileLineSnippetContext
LOW.opencode/plans/1778167761161-happy-cabin.md108export function validateAdCampaignUpdateInput(body: unknown):CODE
LOW.opencode/plans/1778167761161-happy-cabin.md131export async function updateOwnedAdCampaignCreative(params: {CODE
LOWscripts/audit-pet-security.ts304async function maybeApplySecurityRejection(CODE
LOWscripts/release-desktop.ts476function preflightDetachDmgVolumes(): void {CODE
LOWscripts/audit-pet-atlases.ts210function toPublicAtlasPixelSummary(CODE
LOWscripts/audit-pet-atlases.ts275export function buildPublicAuditReviewReport(CODE
LOWscripts/publish-pet-sticker-artifacts.ts351async function finalizeReactionPublication(CODE
LOWscripts/publish-pet-sticker-artifacts.ts738async function notifyStickerRevalidation(slugs: string[]): Promise<void> {CODE
LOWpackages/petdex-cli/src/collections.ts322export function confirmCollectionMutation(CODE
LOWpackages/petdex-cli/src/hooks/mcp-server.ts467function trimTrailingCarriageReturn(buffer: Uint8Array): Uint8Array {CODE
LOW…es/petdex-desktop-native/tests/remote_watchers_test.py30 def test_hidden_tasks_never_emit_cards_or_keep_internal_prompt_titles(self) -> None:CODE
LOW…es/petdex-desktop-native/tests/remote_watchers_test.py62 def test_rollout_following_parses_only_appended_bytes(self) -> None:CODE
LOW…es/petdex-desktop-native/tests/remote_watchers_test.py103 def test_bare_completion_replaces_transient_copy_and_keeps_prose(self) -> None:CODE
LOW…es/petdex-desktop-native/tests/remote_watchers_test.py155 def test_subagent_rollouts_do_not_hide_an_older_primary(self) -> None:CODE
LOW…es/petdex-desktop-native/tests/remote_watchers_test.py196 def test_large_rollout_keeps_subagent_metadata_outside_the_tail(self) -> None:CODE
LOW…es/petdex-desktop-native/tests/remote_watchers_test.py226 def test_custom_home_yields_canonical_active_and_terminal_events(self) -> None:CODE
LOW…es/petdex-desktop-native/tests/remote_watchers_test.py279 def test_pid_cleanup_never_removes_another_process(self) -> None:CODE
LOW…es/petdex-desktop-native/tests/remote_watchers_test.py294 def test_lock_acquisition_waits_for_previous_owner(self) -> None:CODE
LOW…es/petdex-desktop-native/tests/remote_watchers_test.py311 def test_watchers_publish_the_configured_remote_principal(self) -> None:CODE
LOWsrc/app/[locale]/install/[slug]/route.ts23function detectPlatformFromRequest(req: Request): "posix" | "ps1" {CODE
LOWsrc/app/api/profile/collection/route.ts44async function findCollectionAfterMutationLock(CODE
LOWsrc/components/submit/pet-submit-form.tsx1113function deriveIdFromSpritesheetName(fileName: string): string {CODE
LOWsrc/components/auth/auth-badge-auth.tsx28function preloadUserDropdownContent() {CODE
LOWsrc/components/auth/auth-badge-auth.tsx200function UserDropdownContentLoading() {CODE
LOWsrc/components/pets/pet-action-menu.tsx37function preloadPetActionMenuContent() {CODE
LOWsrc/components/pets/pet-action-menu.tsx112function PetActionMenuContentLoading() {CODE
LOWsrc/components/profile/profile-pinning-state.ts1export function applyPinChangeToPinnedSlugs(CODE
LOWsrc/components/profile/profile-pinning-state.ts46export function shouldResetPinnedOrderFromProps({CODE
LOWsrc/components/profile/owner-edit-panel.tsx52async function readSpriteVersionFromPetJson(file: File): Promise<1 | 2> {CODE
LOWsrc/lib/public-traffic-guard.ts57export function shouldBlockKnownAbusiveClient(CODE
LOWsrc/lib/profiles.ts67export function normalizeProfileDisplayName(value: unknown): string | null {CODE
LOWsrc/lib/pet-security.ts371function hasBlockedControlCharacter(value: string): boolean {CODE
LOWsrc/lib/sticker-explorer-url.ts25export function parseStickerExplorerSelection(CODE
LOWsrc/lib/sticker-explorer-url.ts43export function serializeStickerSelection(item: StickerDeckItem): string {CODE
LOWsrc/lib/sticker-explorer-url.ts80export function upsertStickerExplorerParams(CODE
LOWsrc/lib/sprite-version.ts16export function normalizeSpriteVersionNumber(CODE
LOWsrc/lib/sticker-export.ts177export async function getPetStickerAvailability(slug: string): Promise<{CODE
LOW⚡src/lib/pet-sticker-artifacts.ts59export function parseExactPetStickerState(CODE
LOW⚡src/lib/pet-sticker-artifacts.ts68export function parseExactPetStickerFormat(CODE
LOW⚡src/lib/pet-sticker-artifacts.ts77export function parseExactPetStickerTreatment(CODE
LOW⚡src/lib/pet-sticker-artifacts.ts86export function parseExactPetStickerProfile(CODE
LOWsrc/lib/pet-sticker-artifacts.ts130export function legacyPetStickerRedirectUrls(slug: string): string[] {CODE
LOWsrc/lib/submission-decisions.ts36export function submissionOwnerNotificationHref(input: {CODE
LOWsrc/lib/submission-decisions.ts295async function publishApprovedPublicArtifacts(CODE
LOWsrc/lib/public-clerk-bypass.ts28export function shouldBypassClerkMiddleware(input: {CODE
LOWsrc/lib/collection-sql.ts8export function collectionCoverForPetSlugsQuery(petSlugs: readonly string[]) {CODE
LOW⚡src/lib/submission-similarity.ts26export function passesVisualSimilarityThreshold(CODE
LOW⚡src/lib/submission-similarity.ts35export function passesSemanticSimilarityThreshold(CODE
LOW⚡src/lib/submission-similarity.ts44export function hasCurrentSimilaritySignal(match: SimilaritySignal): boolean {CODE
LOWsrc/lib/submission-similarity.ts65export function visualDistanceSimilarityScore(visualDistance: number): number {CODE
LOWsrc/lib/codex-theme.ts181export function serializeCodexThemeVariant(variant: CodexThemeVariant): string {CODE
LOWsrc/lib/sprite-atlas.ts67export function canonicalSpriteDimensions(version: SpriteAtlasVersion) {CODE
LOWsrc/lib/collections.ts120export async function getCollectionSitemapEntries(): Promise<CODE
LOWsrc/lib/collections.ts144export async function getCollectionListingMetadata(CODE
LOWsrc/lib/collections.ts200export async function getCollectionListingPreviewsBySlugs(CODE
LOWsrc/lib/collections.ts263async function hydrateCollectionListingRows(CODE
LOWsrc/lib/collections.ts398export async function getCollectionCandidatesForPet(CODE
LOWsrc/lib/collections.ts453export async function getCollectionsContainingPet(CODE
LOWsrc/lib/collections.ts498function isMissingCollectionTableError(error: unknown): boolean {CODE
LOWsrc/lib/collection-input.ts58export function normalizeCollectionExternalUrl(CODE
73 more matches not shown…
Over-Commented Block71 hits · 71 pts
SeverityFileLineSnippetContext
LOWdocker-compose.dev.yml1# Local dev services for petdex contributors. Engine-agnostic, worksCOMMENT
LOWnext.config.ts61// keep 'unsafe-inline' as well because Next embeds RSC payloads inline,COMMENT
LOWscripts/backfill-credits-from-clerk.ts1// Recompute every submitted_pets row's credit_* columns from theCOMMENT
LOWscripts/auto-tag.ts1// Auto-tag approved community pets with kind/vibes/tags via Codex.COMMENT
LOWscripts/merge-classifications.ts1// Merges results from the two classification passes:COMMENT
LOWscripts/sign-macos.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/reassign-rescued-pets.ts1// Pets that were rescued by an admin script ended up with owner_id =COMMENT
LOWscripts/process-pending-collection-requests.ts1// Process the pending pet_collection_requests after the May 2026COMMENT
LOWscripts/compute-similarity.ts1// Compute perceptual hash + current-model semantic embedding for everyCOMMENT
LOWscripts/classify-unknown-franchises.ts1// Classify the unknown-but-flagged pets via codex exec. Reads theCOMMENT
LOWscripts/backfill-email-preferences-from-clerk.ts1// Backfill email_preferences from existing Clerk users.COMMENT
LOWscripts/reorganize-collections.ts1// Big collection re-org. Runs in 4 phases, each individuallyCOMMENT
LOWscripts/release-desktop.ts1#!/usr/bin/env bunCOMMENT
LOWscripts/release-desktop.ts21// What it does:COMMENT
LOWscripts/takedown-pet.ts1// One-shot takedown for an approved pet. Mirrors DELETE /api/admin/[id]COMMENT
LOWscripts/takedown-by-keyword.ts1// Sweep takedown for pets, pet_requests, pet_collection_requests, andCOMMENT
LOWscripts/backfill-email-prefs.ts1// Sync every Clerk user into email_preferences with default opt-inCOMMENT
LOWscripts/dev-docker.ts1// Boots the docker-backed dev path:COMMENT
LOWscripts/seed-themed-collections.ts1// Seeds franchise-based collections from REAL data: readsCOMMENT
LOWscripts/seed-curated-collections.ts1// Seed ten curated collections owned by the Petdex team. Idempotent —COMMENT
LOWscripts/relink-by-email.ts1// Cross-check the 26 admin-owned, github-credited pets that the GitHubCOMMENT
LOWscripts/relink-rescued-owners.ts1// Relink rescued pets to their real Clerk users.COMMENT
LOWscripts/admin-import-pet.ts1// Admin-side import for a pet that the user couldn't upload via theCOMMENT
LOWscripts/split-large-categories.ts1// Splits large category collections (>=100 pets) into themedCOMMENT
LOWpackages/petdex-cli/bin/petdex.ts121 printHelp();COMMENT
LOWpackages/petdex-cli/src/collections.ts81export function overCollectionPetLimit(COMMENT
LOWpackages/petdex-cli/src/collections.ts181 // data, and there is no way to tell the two apart.COMMENT
LOWpackages/petdex-cli/src/collections.ts201 // the clear would become a no-op — or, with no other flag set, a refusalCOMMENT
LOW…ages/petdex-desktop-native/src/assets/omp-extension.ts1// petdex extension for OMP (Oh My Pi). Auto-generated by the PetdexCOMMENT
LOW…petdex-desktop-native/src/assets/petdex-remote-hook.sh1#!/bin/shCOMMENT
LOW…ktop-native/src/assets/petdex-ssh-tunnel-supervisor.sh1#!/bin/shCOMMENT
LOW.github/workflows/app-ci.yml1name: app-ciCOMMENT
LOW.github/workflows/desktop-release.yml41 # gtk4 is the host toolkit and libX11 carries the floating flagCOMMENT
LOW.github/workflows/preview-snapshot.yml1name: preview-snapshotCOMMENT
LOW.github/workflows/desktop-native-ci.yml1name: petdex-desktop-native ciCOMMENT
LOW.github/workflows/desktop-native-ci.yml21# petdex:// handling exists on all three hosts, but it was fired by handCOMMENT
LOW.github/workflows/desktop-native-ci.yml141 # decodes through loader plugins, and Ubuntu ships none for webpCOMMENT
LOW.github/workflows/desktop-native-ci.yml401 import -window root /tmp/linux-screen-cairo.png || trueCOMMENT
LOW.github/workflows/desktop-native-ci.yml421 # The install contract lands separately from the desktop runtime.COMMENT
LOW.github/workflows/desktop-native-ci.yml441 # transitive dependency is not a contract, and dbus-daemon andCOMMENT
LOW.github/workflows/desktop-native-ci.yml481 # GApplication's uniqueness and its ::open delivery run over theCOMMENT
LOW.github/workflows/desktop-native-ci.yml701 # writes there is `<exe> "%1"`, so a user clicking a link andCOMMENT
LOW.github/workflows/desktop-native-ci.yml741 # 1.35MB sheet landing as a few hundred bytes is the failure thatCOMMENT
LOW.github/workflows/desktop-native-ci.yml941 doneCOMMENT
LOWsrc/app/[locale]/pets/[slug]/opengraph-image.tsx21// Cache the rendered PNG aggressively. Pet sprites change rarely — whenCOMMENT
LOWsrc/app/api/pets/[slug]/route.ts1// Slug to internal id, for the CLI's edit flow.COMMENT
LOWsrc/app/api/profile/collection/route.ts121 // value for an omitted one widened the checks past the request: a row whoseCOMMENT
LOWsrc/app/api/profile/collections/[id]/route.ts161 }COMMENT
LOWsrc/app/api/wechat-qr/route.ts1// Public proxy for the WeChat group QR.COMMENT
LOWsrc/app/api/og/route.ts1// Root OG image proxy. Crawlers fetch this URL and we choose the assetCOMMENT
LOWsrc/components/pets/pet-floater.tsx61 y: number;COMMENT
LOWsrc/lib/url-allowlist.ts1// Allowlist for asset URLs we accept from user submissions or renderCOMMENT
LOWsrc/lib/url-allowlist.ts121 // Strip every trailing dot, not just one: "localhost.." survives a singleCOMMENT
LOWsrc/lib/collection-empty-list.test.ts21// module would otherwise get undefined depending on load order. Every otherCOMMENT
LOWsrc/lib/shuffle-seed.ts1// Per-visitor stable shuffle seed used by the curated gallery sort.COMMENT
LOWsrc/lib/pet-search.ts301 .where(where);COMMENT
LOWsrc/lib/keyword-blocklist.ts1// Hard-blocked keywords for moderation. Anything that contains a hitCOMMENT
LOWsrc/lib/codex-theme.ts1// Generates Codex Desktop themes (codex-theme-v1 format) from a pet'sCOMMENT
LOWsrc/lib/burst-guard.ts1// In-process burst guard.COMMENT
LOWsrc/lib/dex.ts1// Pokédex-style canonical numbering. Each approved pet gets a stableCOMMENT
11 more matches not shown…
Decorative Section Separators15 hits · 45 pts
SeverityFileLineSnippetContext
MEDIUMpackages/petdex-cli/bin/petdex.ts40// ─── config ────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/petdex-cli/bin/petdex.ts94// ─── entrypoint ────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/petdex-cli/bin/petdex.ts243// ─── commands ──────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/petdex-cli/bin/petdex.ts866// ─── edit ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/petdex-cli/bin/petdex.ts1044// ─── candidate collection ──────────────────────────────────────────────────COMMENT
MEDIUMpackages/petdex-cli/bin/petdex.ts1181// ─── upload pipeline ───────────────────────────────────────────────────────COMMENT
MEDIUMpackages/petdex-cli/bin/petdex.ts1321// ─── helpers ───────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/petdex-cli/bin/petdex.ts1471// ─── telemetry ─────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/petdex-cli/bin/petdex.ts1504// ─── run ───────────────────────────────────────────────────────────────────COMMENT
MEDIUMsrc/components/submit/pet-submit-form.tsx152 // ── Folder upload path ──────────────────────────────────────────COMMENT
MEDIUMsrc/components/submit/pet-submit-form.tsx206 // ── Bare spritesheet path (ChatGPT/Codex Desktop pet export) ─────COMMENT
MEDIUMsrc/components/submit/pet-submit-form.tsx239 // ── ZIP upload path (legacy) ────────────────────────────────────COMMENT
MEDIUMsrc/components/submit/pet-submit-form.tsx301 // ── Common: parse pet.json, validate sprite dims ──────────────────COMMENT
MEDIUMsrc/components/submit/pet-submit-form.tsx465 // ── R2 presigned PUT flow ─────────────────────────────────────────────COMMENT
MEDIUMsrc/lib/email-templates/desktop-launch.ts85 // ─── HTML composition ────────────────────────────────────────────COMMENT
Structural Annotation Overuse18 hits · 32 pts
SeverityFileLineSnippetContext
LOWplans/003-static-remaining-pages.md105### Step 4: Register the new static routes for edge caching (only if plan 002 landed)COMMENT
LOWplans/001-assets-edge-cache.md90### Step 1: Diagnose what serves assets.petdex.devCOMMENT
LOWplans/001-assets-edge-cache.md107### Step 2: Add a Cache Rule for the asset hostnameCOMMENT
LOWplans/001-assets-edge-cache.md119### Step 3: Add hotlink protection as a WAF rule (replaces the Worker's referer gate, but correctly)COMMENT
LOWplans/001-assets-edge-cache.md136### Step 4: Confirm CORS still works for the web appCOMMENT
LOWplans/001-assets-edge-cache.md143### Step 5: Record the outcome in the repoCOMMENT
LOWplans/002-html-edge-cache.md98### Step 1: Stop the unconditional NEXT_LOCALE Set-CookieCOMMENT
LOWplans/002-html-edge-cache.md117### Step 2: Emit Cloudflare-CDN-Cache-Control for public HTML routesCOMMENT
LOWplans/002-html-edge-cache.md145### Step 3: Locale switcher sets the cookie client-side (conditional — see Step 1 note)COMMENT
LOWplans/002-html-edge-cache.md168### Step 5: Signed-in smokeCOMMENT
LOWplans/004-middleware-diet.md99### Step 3: Drop the per-page-view Upstash calls; replace with a Cloudflare rate limitCOMMENT
LOWplans/004-middleware-diet.md110### Step 4: Measure-then-decide on Clerk middleware scope (investigation, small change at most)COMMENT
LOW⚡plans/005-public-shell-server-first.md103### Step 1: Inventory and classify consumersCOMMENT
LOW⚡plans/005-public-shell-server-first.md109### Step 2: Make HeaderStateProvider consumers provider-optionalCOMMENT
LOW⚡plans/005-public-shell-server-first.md115### Step 3: Extract the auth islandCOMMENT
LOW⚡plans/005-public-shell-server-first.md123### Step 4: Rewire the locale layoutCOMMENT
LOW⚡plans/005-public-shell-server-first.md131### Step 5: Degrade the public interactive islandsCOMMENT
LOW⚡plans/005-public-shell-server-first.md137### Step 6: Full verification passCOMMENT
Excessive Try-Catch Wrapping15 hits · 17 pts
SeverityFileLineSnippetContext
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py75 except Exception:CODE
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py124 except Exception:CODE
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py178 except Exception:CODE
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py265 except Exception:CODE
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py278 except Exception:CODE
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py345 except Exception:CODE
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py513 except Exception:CODE
MEDIUM…petdex-desktop-native/src/assets/petdex-codex-watch.py86def remote_hostname() -> str:CODE
LOW…petdex-desktop-native/src/assets/petdex-remote-hook.sh140except Exception:CODE
LOW…petdex-desktop-native/src/assets/petdex-remote-hook.sh285 except Exception:CODE
LOW…petdex-desktop-native/src/assets/petdex-remote-hook.sh437except Exception:CODE
LOW…etdex-desktop-native/src/assets/petdex-hermes-watch.py268 except Exception:CODE
MEDIUM…etdex-desktop-native/src/assets/petdex-hermes-watch.py65def remote_hostname() -> str:CODE
LOW…top-native/src/assets/hermes-petdex-plugin/__init__.py180 except Exception:CODE
LOW…top-native/src/assets/hermes-petdex-plugin/__init__.py261 except Exception:CODE
Cross-Language Confusion2 hits · 10 pts
SeverityFileLineSnippetContext
HIGH…s/petdex-desktop-native/tests/macos_activation_test.py50 if (legacyCalls != 1 || modernCalls != 0) return 2;CODE
HIGH…s/petdex-desktop-native/tests/macos_activation_test.py55 if (legacyCalls != 1 || modernCalls != 1) return 3;CODE
Empty Error Handlers2 hits · 10 pts
SeverityFileLineSnippetContext
HIGH…petdex-desktop-native/src/assets/petdex-codex-watch.py104except OSError:CODE
HIGH…etdex-desktop-native/src/assets/petdex-hermes-watch.py92except OSError:CODE
Modern AI Meta-Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUM…petdex-desktop-native/src/assets/petdex-codex-watch.py246 # parent+nickname fallback covers older multi-agent builds without treatingCOMMENT
MEDIUM…petdex-desktop-native/src/assets/petdex-remote-hook.sh273 # Codex writes explicit multi-agent ancestry into the rollout prefix,COMMENT
Self-Referential Comments2 hits · 5 pts
SeverityFileLineSnippetContext
MEDIUMscripts/dev-docker.ts180 "# This file is ignored by git and is safe for personal dev values.",CODE
MEDIUM…/petdex-desktop-native/tests/tunnel_supervisor_test.sh19# Create an intentionally unreaped child. kill -0 reports this zombie asCOMMENT
Unused Imports5 hits · 5 pts
SeverityFileLineSnippetContext
LOW…es/petdex-desktop-native/tests/remote_watchers_test.py4CODE
LOWpackages/petdex-desktop-native/tests/hook_stdin_test.py9CODE
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py9CODE
LOW…etdex-desktop-native/src/assets/petdex-hermes-watch.py13CODE
LOW…top-native/src/assets/hermes-petdex-plugin/__init__.py11CODE
Deep Nesting5 hits · 5 pts
SeverityFileLineSnippetContext
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py48CODE
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py258CODE
LOW…petdex-desktop-native/src/assets/petdex-codex-watch.py567CODE
LOW…etdex-desktop-native/src/assets/petdex-hermes-watch.py272CODE
LOW…top-native/src/assets/hermes-petdex-plugin/__init__.py93CODE
Fake / Example Data4 hits · 4 pts
SeverityFileLineSnippetContext
LOW…ents/skills/coss/references/primitives/preview-card.md56 <AvatarImage src="/avatar.png" alt="John Doe" />CODE
LOWsrc/i18n/messages/zh.json451 "placeholder": "例如:吉卜力风格的龙猫、困困的程序员美西螈、Spider-Pig",CODE
LOWsrc/i18n/messages/en.json417 "placeholder": "e.g. a Studio Ghibli chinchilla, a sleepy axolotl coder, Spider-Pig",CODE
LOWsrc/i18n/messages/es.json417 "placeholder": "p. ej. una chinchilla estilo Ghibli, un ajolote programador con sueño, Spider-Pig",CODE
Example Usage Blocks2 hits · 3 pts
SeverityFileLineSnippetContext
LOWdocker-compose.dev.yml7# Usage:COMMENT
LOWscripts/sign-macos.sh15# Usage:COMMENT
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippetContext
LOWpackages/petdex-cli/src/hooks/mcp-server.ts166async function handleRequest(req: JsonRpcRequest): Promise<void> {CODE