AI Slop Code RIsk Monitor

liketrek/TREK

A self-hosted travel/trip planner with real-time collaboration, interactive maps, PWA support, SSO, budgets, packing lists, and more.

7.6 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for liketrek/TREK, a TypeScript project with 14,705 GitHub stars. SynthScan examined 1,044,694 lines of code across 4821 source files, recording 3022 pattern matches distributed across 12 syntactic categories. The legacy adjusted pattern signal is 7.6 (Moderate pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

7.6
Adjusted Signal
7.6
Raw Pattern Score
100%
Time Factor
2026-10-11
Last Push
14.7K
Stars
TypeScript
Language
1.0M
Lines of Code
4.8K
Files
3.0K
Pattern Hits
2026-10-12
Scan Date
0.00
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 1.6/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 0.8/100 · LOW

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

Agent Over-Engineering Ratio 30.1/100 · MEDIUM

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

PR Review Velocity Impact 33.0/100 · MEDIUM

Which changes need focused human review? 3022 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 8HIGH 1MEDIUM 2642LOW 371

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 3022 distinct pattern matches across 12 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.

Decorative Section Separators2627 hits · 7404 pts
SeverityFileLineSnippetContext
MEDIUMplugin-sdk/test/checks-parity.test.ts51 // ── 1. the README gate's constants ────────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/test/checks-parity.test.ts80 // ── 2. the registry's real validator, run against an entry we built ───────────COMMENT
MEDIUMplugin-sdk/src/index.ts397// ── integration hook interfaces ──────────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/ui.ts39// ── decoration ─────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/ui.ts50// ── cancellation ─────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/ui.ts61// ── prompts (cancel-checked, stderr-rendered) ────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/ui.ts85// ── permissions ──────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/ui.ts288// ── flag helpers ──────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/checks/network.ts71// ── 1. the tag resolves to the pinned commit ────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/checks/network.ts111// ── 2. the manifest at the pinned commit matches the entry ──────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/checks/network.ts160// ── 3. the released artifact ────────────────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/checks/network.ts222// ── 4. the README at the pinned commit ──────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/checks/network.ts294// ── 5. owner binding (NEW — the registry has always enforced this) ───────────────COMMENT
MEDIUMplugin-sdk/src/cli/checks/offline.ts38// ── manifest ────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/checks/offline.ts266// ── code ────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/checks/offline.ts366// ── docs ────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin-sdk/src/cli/checks/offline.ts483// ── release ─────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/plugins/egress-policy.test.ts126// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/plugins/egress-policy.test.ts128// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/plugins/safe-extract.test.ts13// ── tiny archive builders ────────────────────────────────────────────────────COMMENT
MEDIUM⚡server/tests/unit/mcp/tools-prompts.test.ts226// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡server/tests/unit/mcp/tools-prompts.test.ts228// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡server/tests/unit/mcp/tools-prompts.test.ts235// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡server/tests/unit/mcp/tools-prompts.test.ts237// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/mcp/tools-prompts.test.ts267// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/mcp/tools-prompts.test.ts269// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/mcp/tools-prompts.test.ts304// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/mcp/tools-prompts.test.ts306// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/mcp/tools-prompts.test.ts372// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/mcp/tools-prompts.test.ts374// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/mcp/tools-prompts.test.ts442// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/mcp/tools-prompts.test.ts444// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/db/migration-hygiene.test.ts85 // ── table rebuilds (data preserved) ──────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/db/migration-hygiene.test.ts97 // ── photo/journey table rebuilds (data preserved) ────────────────────────COMMENT
MEDIUM⚡server/tests/unit/db/migration-hygiene.test.ts121 // ── template/cache scaffolding drops (no user content lost) ──────────────COMMENT
MEDIUM⚡server/tests/unit/db/migration-hygiene.test.ts127 // ── guarded column drop ──────────────────────────────────────────────────COMMENT
MEDIUM⚡server/tests/unit/db/migration-hygiene.test.ts131 // ── targeted, bounded DELETEs ────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/memories.controller.test.ts50// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/memories.controller.test.ts217// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/memories.controller.test.ts553// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/feeds.service.test.ts16// ── DB setup ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/feeds.service.test.ts72// ── Calendar parts the stub hands back ────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/feeds.service.test.ts118// ── Trip feed token ───────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/feeds.service.test.ts218// ── User (all-trips) feed token ───────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/feeds.service.test.ts264// ── buildTripIcs ──────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/feeds.service.test.ts314// ── buildUserIcs ──────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/audit.service.test.ts13// ── DB setup ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/audit.service.test.ts77// ── getClientIp (pure, moved 1:1) ─────────────────────────────────────────────COMMENT
MEDIUMserver/tests/unit/nest/audit.service.test.ts114// ── writeAudit (real DB) ──────────────────────────────────────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts71// ── Collaborator stubs ───────────────────────────────────────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts182// ── Fixtures ─────────────────────────────────────────────────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts321// ── list / getOne ────────────────────────────────────────────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts414// ── accept: place ────────────────────────────────────────────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts600// ── accept: journal ──────────────────────────────────────────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts723// ── accept: bucket list ──────────────────────────────────────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts779// ── accept twice / state ─────────────────────────────────────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts833// ── bucket-list confirmation ─────────────────────────────────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts898// ── bucket-list scan (client stubbed, never the network) ─────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts1109// ── Atlas ────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…r/tests/unit/nest/dawarich-suggestions.service.test.ts1260 // ── What an acceptance tells the rest of the trip ──────────────────────────COMMENT
2567 more matches not shown…
Over-Commented Block186 hits · 181 pts
SeverityFileLineSnippetContext
LOWdocker-compose.minio-test.yml1# Manual, license-gated live-provider test for the env-gated S3 driverCOMMENT
LOWdocker-compose.minio-test.yml21# argument, so `command: minio server /data --license /minio.license`COMMENT
LOWdocker-compose.yml21 - ENCRYPTION_KEY=${ENCRYPTION_KEY:-} # Recommended. Generate with: openssl rand -hex 32. If unset, falls back to dCOMMENT
LOWdocker-compose.yml41# - OIDC_CLIENT_SECRET=supersecret # OpenID Connect client secretCOMMENT
LOWcharts/trek/values.yaml21 NODE_ENV: productionCOMMENT
LOWcharts/trek/values.yaml41 # Also used as the base URL for links in email notifications and other external links.COMMENT
LOWcharts/trek/values.yaml61 # OpenID Connect provider URL.COMMENT
LOWcharts/trek/values.yaml81 # Max MCP API requests per user per minute. Defaults to 300.COMMENT
LOWcharts/trek/values.yaml101 # nothing there. There is no switch in the admin panel on purpose: whether searches leave the instance is decidedCOMMENT
LOWcharts/trek/values.yaml121 # 2. data/.encryption_key auto-generated on first start (fresh installs)COMMENT
LOWwiki/Install-Helm.md101 port: 3000COMMENT
LOWwiki/Plugin-Development.md1561# how you sideload a plugin to try it locally.COMMENT
LOWwiki/Plugin-Development.md1581COMMENT
LOWplugin-sdk/examples/koffi/client/index.html61 #puffS, #squint { transform-box: view-box; }COMMENT
LOWplugin-sdk/examples/trip-doctor/server/index.js1// Trip Doctor — a hooks-only TREK plugin that showcases the #1429 capabilities.COMMENT
LOWplugin-sdk/src/cli/dev.ts401 // /__dev/fire/job/refresh · /__dev/fire/scheduled/daily · /__dev/fire/event/place:createdCOMMENT
LOWplugin-sdk/src/cli/dev.ts461 // is where the design kit actually renders themed.COMMENT
LOWplugin-sdk/src/cli/create.ts141 // Floor 4.0.0: the host surface this scaffold is written against — the enforcedCOMMENT
LOWplugin-sdk/src/cli/create.ts161 // A notification channel usually targets a SELF-HOSTED service, whose hostname theCOMMENT
LOWserver/vitest.config.ts41 // module runs in-process and is unit-tested.COMMENT
LOWserver/tests/setup.console-noise.ts1// Filters *expected* noise off the test console so real failures stay visibleCOMMENT
LOWserver/tests/setup.ts1// Global test setup — runs before every test file.COMMENT
LOWserver/tests/setup.ts41// Nominatim's rate limit is a property of the real service, not of the codeCOMMENT
LOWserver/tests/unit/plugins/egress-policy.test.ts121 expect(dgramConnectTarget([53])).toBeNull();COMMENT
LOWserver/tests/unit/nest/dawarich.helpers.test.ts481COMMENT
LOWserver/tests/unit/nest/storage/storage.service.test.ts321 // exactly as the local branch's res.sendFile already does. It must be aCOMMENT
LOWserver/tests/unit/services/passwordPolicy.test.ts41 });COMMENT
LOWserver/tests/integration/storage-stream-abort.test.ts201 .on('error', reject);COMMENT
LOWserver/scripts/entrypoint.sh1#!/bin/shCOMMENT
LOWserver/src/index.ts1import 'reflect-metadata';COMMENT
LOWserver/src/index.ts81let server: http.Server;COMMENT
LOWserver/src/config.ts1import crypto from 'node:crypto';COMMENT
LOWserver/src/bootstrap.ts101 ]),COMMENT
LOWserver/src/bootstrap.ts181 // Fail closed on the anonymous surface too: a route that answers without aCOMMENT
LOWserver/src/middleware/globalMiddleware.ts161 // sibling subdomain the same operator may still be running over plainCOMMENT
LOWserver/src/middleware/globalMiddleware.ts221 "https://nominatim.openstreetmap.org", "https://overpass-api.de",COMMENT
LOWserver/src/middleware/globalMiddleware.ts241 // through fetch to hand it to WebGL, and the prefetch does too, so both wereCOMMENT
LOWserver/src/middleware/globalMiddleware.ts261 // A self-hosted routing engine, when the instance has one configured. WithoutCOMMENT
LOWserver/src/utils/ssrfGuard.ts81COMMENT
LOWserver/src/mcp/scopes.ts41 // journey:write. The policy's fallback branch covers both.COMMENT
LOWserver/src/db/migrations.ts2361 // reminder for each todo so we don't spam the same notificationCOMMENT
LOWserver/src/db/migrations.ts2781 )`,COMMENT
LOWserver/src/db/migrations.ts2881 user_id INTEGER REFERENCES users(id) ON DELETE CASCADE,COMMENT
LOWserver/src/db/migrations.ts3661 // case the activation gate has to catch after a TREK upgrade. Kept nullable: a pluginCOMMENT
LOWserver/src/db/migrations.ts3841 // Backfill the three places feature toggles before their read flips fromCOMMENT
LOWserver/src/db/migrations.ts3921 // #1939 — the Google Places and Unsplash keys are instance configuration andCOMMENT
LOWserver/src/db/migrations.ts4081 // column; the storage layer addresses objects as category + bare name, soCOMMENT
LOWserver/src/db/migrations.ts4101 // only helps a fresh install — the array is index-addressed againstCOMMENT
LOWserver/src/db/migrations.ts4701 },COMMENT
LOWserver/src/db/migrations.ts4721 if (!hasMode) db.exec("ALTER TABLE mcp_tokens ADD COLUMN scope_mode TEXT NOT NULL DEFAULT 'all'");COMMENT
LOWserver/src/app-config/env.schema.ts121 // Whole milliseconds, and inside setTimeout's 32-bit range. A fractional valueCOMMENT
LOWserver/src/nest/app.module.ts81 * (weather, notifications, integrations, ...) get registered here as they areCOMMENT
LOWserver/src/nest/app.module.ts101 { provide: APP_FILTER, useClass: TrekExceptionFilter },COMMENT
LOWserver/src/nest/maps/maps.service.ts361 reviews?: {COMMENT
LOWserver/src/nest/maps/maps.service.ts961 if (found.length > 0) {COMMENT
LOWserver/src/nest/maps/maps.service.ts2081 const keyed = this.keyedProvider(userId);COMMENT
LOWserver/src/nest/maps/maps.service.ts2101 // either, before this branch existed or after.COMMENT
LOWserver/src/nest/maps/maps.service.ts2161 if (!apiKey) {COMMENT
LOWserver/src/nest/maps/maps.service.ts2281 // The service's own id form, translated into the one thisCOMMENT
LOWserver/src/nest/maps/maps.service.ts2421COMMENT
126 more matches not shown…
Fake / Example Data87 hits · 88 pts
SeverityFileLineSnippetContext
LOWplugin-sdk/test/checks.test.ts20 author: 'Jane Doe',CODE
LOWplugin-sdk/src/manifest.ts36 'key', 'label', 'input_type', 'placeholder', 'hint', 'required', 'secret', 'scope', 'options', 'oauth', 'default',CODE
LOW⚡server/tests/unit/nest/oidc.service.test.ts1081 const userInfoData = { sub: 'user-sub', email: 'user@example.com', name: 'User Name' };CODE
LOW⚡server/tests/unit/nest/oidc.service.test.ts1090 expect(result.email).toBe('user@example.com');CODE
LOWserver/tests/unit/nest/oidc.service.test.ts1127 { sub: 'user-sub', email: 'user@example.com', ...overrides },CODE
LOWserver/tests/unit/nest/notifications.service.test.ts41 sendMailMock: vi.fn().mockResolvedValue({ accepted: ['test@test.com'] }),CODE
LOWserver/tests/unit/nest/mailer.service.test.ts192 const result = await newMailer().testSmtp('admin@example.com');CODE
LOWserver/tests/unit/nest/mailer.service.test.ts204 const result = await newMailer().testSmtp('admin@example.com');CODE
LOWserver/tests/unit/nest/mailer.service.test.ts216 const result = await newMailer().testSmtp('admin@example.com');CODE
LOWserver/tests/unit/nest/mailer.service.test.ts227 const result = await newMailer().testSmtp('admin@example.com');CODE
LOWserver/tests/unit/nest/mailer.service.test.ts243 const result = await newMailer().testSmtp('admin@example.com');CODE
LOWserver/tests/unit/nest/mailer.service.test.ts255 const result = await newMailer().testSmtp('admin@example.com');CODE
LOWserver/tests/unit/nest/mailer.service.test.ts264 expect(await newMailer().testSmtp('admin@example.com')).toEqual({ success: true });CODE
LOWserver/tests/unit/nest/mailer.service.test.ts322 await newMailer().testSmtp('admin@example.com');CODE
LOW⚡server/tests/integration/auth.test.ts137 email: 'admin@example.com',CODE
LOWserver/tests/e2e/place-shadow.e2e.test.ts81 seedUser(db as never, { id: ADMIN, email: 'admin@example.com', role: 'admin' });CODE
LOWserver/src/nest/plugins/install/manifest.ts542 'key', 'label', 'input_type', 'placeholder', 'hint', 'required', 'secret', 'scope', 'options', 'oauth', 'default',CODE
LOWshared/src/maps/maps.schema.spec.ts100 attribution: 'Jane Doe',CODE
LOWclient/tests/unit/stores/authStore.test.ts221 const result = await useAuthStore.getState().login('user@example.com', 'password');CODE
LOW…nt/tests/unit/mobile/admin/MAdminUsersSection.test.tsx53const ME = buildAdminUser({ id: 1, username: 'admin', email: 'admin@example.com', role: 'admin' });CODE
LOW…unit/mobile/admin/MAdminDevNotificationsPanel.test.tsx13const ADMIN = buildAdmin({ id: 7, username: 'testadmin', email: 'admin@example.com' });CODE
LOW…unit/mobile/admin/MAdminDevNotificationsPanel.test.tsx181 params: { actor: 'testadmin', invitee: 'admin@example.com' },CODE
LOWclient/tests/unit/mobile/trip/ImpListStep.test.tsx44 expect(screen.getByRole('textbox')).toHaveAttribute('placeholder', 'https://maps.app.goo.gl/…')CODE
LOWclient/tests/unit/mobile/trip/ImpListStep.test.tsx52 expect(screen.getByRole('textbox')).toHaveAttribute('placeholder', 'https://naver.me/…')CODE
LOW⚡client/tests/integration/api/client.test.ts857 await expect(notificationsApi.testSmtp('user@example.com')).resolves.toMatchObject({ ok: true });CODE
LOWclient/tests/helpers/mobileAdmin.ts20 email: 'admin@example.com',CODE
LOWclient/tests/helpers/msw/handlers/admin.ts7 const admin1 = buildAdmin({ username: 'admin', email: 'admin@example.com' });CODE
LOW…components/Settings/DawarichConnectionSection.test.tsx184 expect(keyField()).toHaveAttribute('placeholder', 'Paste your Dawarich API key');CODE
LOW…components/Settings/DawarichConnectionSection.test.tsx207 expect(keyField()).toHaveAttribute('placeholder', MASK);CODE
LOW…components/Settings/DawarichConnectionSection.test.tsx311 expect(keyField()).toHaveAttribute('placeholder', 'Paste your Dawarich API key');CODE
LOW…components/Settings/DawarichConnectionSection.test.tsx355 expect(keyField()).toHaveAttribute('placeholder', MASK);CODE
LOW…components/Settings/DawarichConnectionSection.test.tsx589 expect(keyField()).toHaveAttribute('placeholder', 'Paste your Dawarich API key');CODE
LOW…ient/src/components/Settings/NotificationsTab.test.tsx350 expect(input).toHaveAttribute('placeholder', '••••••••');CODE
LOW…ient/src/components/Settings/NotificationsTab.test.tsx956 expect(tokenInput()).toHaveAttribute('placeholder', '••••••••');CODE
LOW…ient/src/components/Settings/NotificationsTab.test.tsx1124 expect(input).toHaveAttribute('placeholder', '••••••••');CODE
LOW…ient/src/components/Settings/NotificationsTab.test.tsx1130 expect(screen.getByRole('textbox')).toHaveAttribute('placeholder', 'https://discord.com/api/webhooks/...'),CODE
LOWclient/src/components/Studio/bookTemplates.data.ts316 "text": "Lorem ipsum dolor sit amet",CODE
LOWclient/src/components/Studio/bookTemplates.data.ts316 "text": "Lorem ipsum dolor sit amet",CODE
LOWclient/src/components/Studio/bookTemplates.data.ts343 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts343 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts403 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts403 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts577 "text": "Lorem ipsum dolor sit amet",CODE
LOWclient/src/components/Studio/bookTemplates.data.ts577 "text": "Lorem ipsum dolor sit amet",CODE
LOWclient/src/components/Studio/bookTemplates.data.ts604 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts604 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts748 "text": "Lorem ipsum dolor sit amet",CODE
LOWclient/src/components/Studio/bookTemplates.data.ts748 "text": "Lorem ipsum dolor sit amet",CODE
LOWclient/src/components/Studio/bookTemplates.data.ts775 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts775 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts890 "text": "Lorem ipsum dolor sit amet",CODE
LOWclient/src/components/Studio/bookTemplates.data.ts890 "text": "Lorem ipsum dolor sit amet",CODE
LOWclient/src/components/Studio/bookTemplates.data.ts937 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts937 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts1202 "text": "Lorem ipsum dolor sit amet",CODE
LOWclient/src/components/Studio/bookTemplates.data.ts1202 "text": "Lorem ipsum dolor sit amet",CODE
LOWclient/src/components/Studio/bookTemplates.data.ts1229 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOWclient/src/components/Studio/bookTemplates.data.ts1229 "text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor inviduntCODE
LOW⚡client/src/components/Planner/PlaceInspector.test.tsx824 const longText = 'Lorem ipsum dolor sit amet. '.repeat(200);CODE
LOW⚡client/src/components/Planner/PlaceInspector.test.tsx824 const longText = 'Lorem ipsum dolor sit amet. '.repeat(200);CODE
27 more matches not shown…
Hyper-Verbose Identifiers84 hits · 85 pts
SeverityFileLineSnippetContext
LOWplugin-sdk/src/manifest.ts531function validatePluginDependencies(raw: unknown, selfId: string, errors: string[]): PluginDependency[] {CODE
LOWserver/tests/unit/db/migration-hygiene.test.ts52function findDestructiveStatements(src: string): DestructiveHit[] {CODE
LOWserver/tests/unit/db/connection.test.ts110function deleteTripAndWatchTempFiles(db: Database.Database): {CODE
LOWserver/tests/unit/systemNotices/registry.test.ts9function collectRegisteredActionIds(): Set<string> {CODE
LOW⚡server/tests/unit/nest/travel-stats.service.test.ts166 function splitChainThroughHelsinki(tripId: number, onwardDate: string, onwardTime: string) {CODE
LOW⚡…rver/tests/unit/nest/notifications.inapp-prefs.test.ts220function insertBooleanNotification(recipientId: number, senderId: number | null = null): number {CODE
LOWserver/tests/unit/nest/atlas.service.test.ts51function insertReservationEndpoint(CODE
LOWserver/tests/unit/nest/backup.impl.test.ts1037function setupSuccessfulExtraction() {CODE
LOWserver/tests/unit/nest/storage/storage.service.test.ts91function makeGhostLocalPathFixture(contents: string): Fixture & { driverCalls: string[] } {CODE
LOWserver/tests/unit/nest/storage/storage.service.test.ts480 function makeAbortingStreamFixture(err: { code?: string; syscall?: string; message?: string }) {CODE
LOW…r/tests/unit/nest/storage/storage-jobs.service.test.ts117function makePhotosGoogleMigrationWorld() {CODE
LOW…r/tests/unit/nest/storage/storage-jobs.service.test.ts139function makeMigrationBackfillWorld() {CODE
LOW⚡server/tests/integration/notifications.test.ts418function insertBooleanNotification(recipientId: number): number {CODE
LOWserver/tests/integration/share.test.ts556 async function setupSharedPlaceWithPhoto() {CODE
LOWserver/tests/helpers/plugin-host.ts87export function createPluginRpcHostFactory(dbs: DatabaseService): PluginRpcHostFactory {CODE
LOWserver/tests/helpers/notifications.ts29export function makeNotificationPreferencesService(dbs: DatabaseService): NotificationPreferencesService {CODE
LOWserver/tests/helpers/module-providers.ts24export function expectRegisteredController(moduleClass: object, controller: object): void {CODE
LOWserver/tests/helpers/accommodations-service.ts19export function makeAccommodationsService(conn: Database): AccommodationsService {CODE
LOWserver/src/mcp/sessionManager.ts39export function revokeUserSessionsForClient(userId: number, clientId: string): void {CODE
LOWserver/src/mcp/sessionManager.ts75export function evictOldestSessionForUser(userId: number): string | null {CODE
LOWserver/src/nest/maps/trek-places.client.ts141function countsAgainstReachability(err: unknown): boolean {CODE
LOWserver/src/nest/settings/settings.service.ts114export function isAdminOnlyEndpointSetting(key: string, value: unknown): boolean {CODE
LOWserver/src/nest/auth/ephemeral-tokens.ts55export function consumeEphemeralTokenWithMeta(CODE
LOWserver/src/nest/llm-parse/llm-config.ts44export function prepareLlmAddonConfigForWrite(CODE
LOWserver/src/nest/llm-parse/clients/nuextract.ts260export function nuExtractToKiReservations(parsed: unknown): Record<string, unknown>[] {CODE
LOWserver/src/nest/plugins/plugin-backup.ts39export function stageExtractedPluginTrees(extractDir: string): boolean {CODE
LOWserver/src/nest/plugins/host/plugin-data.service.ts53export function checkpointAllPluginDataDbs(): void {CODE
LOWserver/src/nest/public-api/public-api-request.ts29export function enforcePublicApiRateLimit(rl: RateLimitService, req: Request): void {CODE
LOWserver/src/nest/places/places.helpers.ts194export function googleMapsFeatureIdFromItem(item: unknown): string | null {CODE
LOWserver/src/nest/places/kml-import.helpers.ts102export function parseKmlLineStringCoordinates(value: unknown): Array<{ lat: number; lng: number; ele: number | null }> |CODE
LOWserver/src/nest/places/kml-import.helpers.ts159export function resolveCategoryIdForFolder(folderName: string | null, lookup: Map<string, number>): number | null {CODE
LOWserver/src/nest/platform/mcp-metadata.middleware.ts22export function createMcpMetadataMiddleware(CODE
LOWserver/src/nest/permissions/permissions-cache.ts25export function invalidatePermissionsCache(): void {CODE
LOWserver/src/nest/transit/transit-itinerary.helpers.ts180export function cleanTransitItineraryNames(CODE
LOWserver/src/nest/transit/transit-itinerary.helpers.ts208export function buildTransitReservationParts(CODE
LOWserver/src/nest/storage/storage-upload.factory.ts43export function buildStorageUploadOptions(storage: StorageService, opts: StorageUploadOptions) {CODE
LOWserver/src/nest/storage/drivers/s3.driver.ts153function zeroByteChecksumWorkaround(size: number): { ApplyChecksum: true } | Record<string, never> {CODE
LOWserver/src/nest/integrations/airtrail.mapper.ts178export function mapFlightsToMultiLegReservation(CODE
LOWserver/src/nest/common/idempotency-cleanup.ts21export function purgeExpiredIdempotencyKeys(CODE
LOWserver/src/nest/common/rowShape.ts12export function formatAssignmentWithPlace(a: AssignmentRow, tags: Partial<Tag>[], participants: Participant[]) {CODE
LOWserver/src/nest/atlas/atlas.service.ts74function countryCodeFromRegionCode(regionCode: string): string {CODE
LOWserver/src/nest/doc-sync/providers/webdav.client.ts327function repairTruncatedMultistatus(xml: string): string | null {CODE
LOWserver/src/nest/share/share.service.ts111export function publicReservationMetadata(raw: unknown): string | null {CODE
LOWshared/src/book/book.schema.ts856function withoutUnreadableElements(raw: unknown): unknown {CODE
LOWclient/tests/unit/sync/mutationQueue.conflict.test.ts43function conflictThenAcceptHandler(serverName = 'Theirs') {CODE
LOWclient/src/vacay/schoolHolidayCountries.ts24export function isSchoolHolidayCountrySupported(country: string): boolean {CODE
LOWclient/src/utils/touchDragPolyfill.ts15export function maybeInstallTouchDragPolyfill(): Promise<unknown> | void {CODE
LOWclient/src/utils/dayMerge.ts87export function getTransportRouteEndpoints(CODE
LOWclient/src/utils/connectionsVisibility.ts54export function resolveEffectiveConnections(stored: StoredConnections | null, alwaysShowRoutesDefault: boolean): StoredCCODE
LOWclient/src/utils/connectionsVisibility.ts60export function resolveVisibleConnectionIds(effective: StoredConnections, routableIds: number[]): number[] {CODE
LOWclient/src/utils/globalErrorHandlers.ts48export function installGlobalErrorHandlers(): () => void {CODE
LOW…/src/components/Settings/AirTrailConnectionSection.tsx16export default function AirTrailConnectionSection(): React.ReactElement {CODE
LOW…/src/components/Settings/DawarichConnectionSection.tsx23export default function DawarichConnectionSection(): React.ReactElement {CODE
LOWclient/src/components/Vacay/holidayRegions.ts79export async function fetchSchoolHolidayRegionOptions(country: string, lang = activeLanguage()): Promise<{ value: stringCODE
LOW…ient/src/components/Vacay/useSchoolHolidayCountries.ts6export function useSchoolHolidayCountries(enabled = true) {CODE
LOWclient/src/components/Plugins/PluginFrame.tsx270function createPluginSessionStorageKeys(CODE
LOWclient/src/components/Plugins/PluginContributions.tsx24export function usePluginViewContributions(view: ViewName, tripId: string | number | null | undefined) {CODE
LOW…/components/Planner/DayPlanSidebarTimeConfirmModal.tsx22export function DayPlanSidebarTimeConfirmModal({ timeConfirm, setTimeConfirm, confirmTimeRemoval, t }: DayPlanSidebarTimCODE
LOW…ponents/Planner/DayPlanSidebarTransportDetailModal.tsx24export function DayPlanSidebarTransportDetailModal({CODE
LOWclient/src/components/Planner/placeOpenStreetMap.ts9export function getOpenStreetMapUrlForPlace(place: PlaceLike | null | undefined): string | null {CODE
24 more matches not shown…
Hallucination Indicators8 hits · 80 pts
SeverityFileLineSnippetContext
CRITICALserver/tests/unit/places/places.rpc.test.ts139 expect(f.realtime.broadcast.mock.calls.map((c) => c[1])).toEqual(['place:created', 'place:updated', 'place:deleted']CODE
CRITICALserver/tests/unit/todo/todo.rpc.test.ts92 expect(f.realtime.broadcast.mock.calls.map((c) => c[1])).toEqual(['todo:created', 'todo:updated', 'todo:deleted']);CODE
CRITICALserver/tests/unit/days/days-itinerary.rpc.test.ts106 expect(f.realtime.broadcast.mock.calls.map((c) => c[1])).toEqual(['day:created', 'day:updated', 'day:deleted', 'day:CODE
CRITICALserver/tests/unit/days/days-itinerary.rpc.test.ts151 expect(f.realtime.broadcast.mock.calls.map((c) => c[1])).toEqual(['day:reordered', 'trip:updated']);CODE
CRITICALserver/tests/unit/budget/costs.rpc.test.ts142 expect(f.realtime.broadcast.mock.calls.map((c) => c[1])).toEqual(['budget:created', 'budget:updated', 'budget:deleteCODE
CRITICALclient/src/components/Map/useDawarichTrailGL.test.ts206 expect(absent.spies.addLayer.mock.calls.map(call => call[1])).toEqual([undefined, undefined])CODE
CRITICALclient/src/components/Map/useDawarichTrailGL.test.ts210 expect(none.spies.addLayer.mock.calls.map(call => call[1])).toEqual([undefined, undefined])CODE
CRITICALclient/src/components/Map/useDawarichTrailGL.test.ts292 expect(gl.spies.removeLayer.mock.calls.map(call => call[0])).toEqual([LINE_LAYER, CASING_LAYER])CODE
Modern AI Meta-Vocabulary14 hits · 42 pts
SeverityFileLineSnippetContext
MEDIUMplugin-sdk/test/publish.test.ts64 // publish now gates on the registry's checks BEFORE it packs or releases, so a bare scaffoldCOMMENT
MEDIUMplugin-sdk/test/publish.test.ts127 // Deliberately NOT made publishable: this is a fresh scaffold, exactly what a first-timeCOMMENT
MEDIUMplugin-sdk/test/sdk.test.ts559 // is how a scaffold could sail through `validate` and then be rejected by the registry.COMMENT
MEDIUMplugin-sdk/test/sdk.test.ts563 // The scaffold's README references ./docs/screenshot.png and never creates it. The old checkCOMMENT
MEDIUMplugin-sdk/test/sdk.test.ts687 // A scaffold-shaped CJS entry that requires the SDK without any node_modules.COMMENT
MEDIUMplugin-sdk/test/cli.test.ts26 // The scaffold must NOT invent a placeholder — it declares operatorEgress instead, whichCOMMENT
MEDIUMplugin-sdk/src/cli/dev.ts198 // one-arg calls work on a fresh scaffold — without this, a fixtures file that omitsCOMMENT
MEDIUMplugin-sdk/src/cli/dev.ts464 // hard-coded to 42 while the scaffold seeds trip 1, so the widget's firstCOMMENT
MEDIUMplugin-sdk/src/cli/create.ts141 // Floor 4.0.0: the host surface this scaffold is written against — the enforcedCOMMENT
MEDIUMplugin-sdk/src/cli/create.ts158 // grey square in the store, so the scaffold picks a real one rather than leaving it out.COMMENT
MEDIUMplugin-sdk/src/cli/create.ts235 // The README has always linked ./docs/screenshot.png, and the scaffold has never created theCOMMENT
MEDIUMplugin-sdk/src/cli/create.ts533 // The scaffold turns each host into a matching http:outbound:<host> grant. Leaving itCOMMENT
MEDIUMserver/src/db/migrations.ts3300 // Migration 155: plugin system scaffold (#plugins). A plugin is a row here;COMMENT
MEDIUMserver/src/nest/plugins/plugins.service.ts31 * Read side of the plugin system (#plugins), M0 scaffold. Lists installedCOMMENT
Verbosity Indicators6 hits · 7 pts
SeverityFileLineSnippetContext
LOW⚡server/tests/integration/auth.test.ts14// Step 1: Bare in-memory DB — schema applied in beforeAll after mocks registerCOMMENT
LOW⚡server/tests/integration/auth.test.ts566 // Step 1: login to get mfa_tokenCOMMENT
LOW⚡server/tests/integration/auth.test.ts573 // Step 2: verify with a backup codeCOMMENT
LOW⚡server/tests/integration/auth.test.ts580 // Step 3: same backup code is now consumed — second login attempt failsCOMMENT
LOW⚡server/tests/integration/journey.test.ts11// Step 1: Bare in-memory DB — schema applied in beforeAll after mocks registerCOMMENT
LOW⚡server/tests/integration/trips.test.ts11// Step 1: Bare in-memory DB — schema applied in beforeAll after mocks registerCOMMENT
Structural Annotation Overuse6 hits · 7 pts
SeverityFileLineSnippetContext
LOW⚡server/tests/integration/auth.test.ts14// Step 1: Bare in-memory DB — schema applied in beforeAll after mocks registerCOMMENT
LOW⚡server/tests/integration/auth.test.ts566 // Step 1: login to get mfa_tokenCOMMENT
LOW⚡server/tests/integration/auth.test.ts573 // Step 2: verify with a backup codeCOMMENT
LOW⚡server/tests/integration/auth.test.ts580 // Step 3: same backup code is now consumed — second login attempt failsCOMMENT
LOW⚡server/tests/integration/journey.test.ts11// Step 1: Bare in-memory DB — schema applied in beforeAll after mocks registerCOMMENT
LOW⚡server/tests/integration/trips.test.ts11// Step 1: Bare in-memory DB — schema applied in beforeAll after mocks registerCOMMENT
Magic Placeholder Names1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHwiki/Troubleshooting.md418 -H "X-Goog-Api-Key: YOUR_API_KEY" \CODE
AI Slop Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMclient/tests/unit/sync/tilePrefetcher.test.ts552 // First-match semantics, like the #1924 harness above, but capturing theCOMMENT
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOWdocker-compose.yml43# - OIDC_ONLY=false # Set true to force SSO-only mode: disables password login and registration, overrides Admin > COMMENT
Slop Phrases1 hit · 1 pts
SeverityFileLineSnippetContext
LOWclient/e2e/screenshots/seed.ts317 ['admin', "It's included — kaiseki, 18:30. Added it to the to-dos so we don't forget to confirm."],CODE