AI Slop Code Risk Monitor

tinacms/tinacms

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

TinaCMS is the leading open-source headless CMS that supports Markdown and Visual Editing. Your content is stored in your own GitHub repo 🦙 ❤️

0.8 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for tinacms/tinacms, a TypeScript project with 13,856 GitHub stars. SynthScan examined 321,707 lines of code across 2884 source files, recording 151 pattern matches distributed across 11 syntactic categories. The legacy adjusted pattern signal is 0.8 (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.

0.8
Adjusted Signal
0.8
Raw Pattern Score
100%
Time Factor
2026-10-30
Last Push
13.9K
Stars
TypeScript
Language
321.7K
Lines of Code
2.9K
Files
151
Pattern Hits
2026-10-31
Scan Date
0.00
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 1.3/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 1.1/100 · LOW

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

Agent Over-Engineering Ratio 1.9/100 · LOW

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

PR Review Velocity Impact 3.8/100 · LOW

Which changes need focused human review? 151 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 0HIGH 1MEDIUM 47LOW 103

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 151 distinct pattern matches across 11 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 Separators34 hits · 102 pts
SeverityFileLineSnippetContext
MEDIUMtests/size-baseline.test.ts28// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts30// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts99// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts103// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts147// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts149// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts283// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts286// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts424// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts426// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts528// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/size-baseline.test.ts530// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/pagination.spec.ts43// ── 1. `first` limits results ─────────────────────────────────────────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/pagination.spec.ts63// ── 2. `hasNextPage` reflects whether more results exist ──────────────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/pagination.spec.ts104// ── 3. `after` cursor advances pages with no overlap ──────────────────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/sorting.spec.ts57// ── 1. Unknown sort key — documents the current behavior (throws) ─────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/sorting.spec.ts82// ── 2. Index freshness after CREATE ──────────────────────────────────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/sorting.spec.ts118// ── 3. Index freshness after UPDATE ──────────────────────────────────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/sorting.spec.ts181// ── 4. Index freshness after DELETE ──────────────────────────────────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/sorting.spec.ts225// ── 5. Ascending order via `sort` ────────────────────────────────────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/sorting.spec.ts255// ── 6. Descending order via `last` ────────────────────────────────────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/search.spec.ts25// ── 1. Title field is indexed — "gamma" only exists in the title ──────────────COMMENT
MEDIUMplaywright/tina-playwright/tests/api/search.spec.ts45// ── 2. Query is precise — "gamma" does not return unrelated posts ─────────────COMMENT
MEDIUMpackages/@tinacms/graphql/src/database/database.test.ts25// ─── InMemoryBridge ──────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/@tinacms/graphql/src/database/database.test.ts64// ─── Schema ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/@tinacms/graphql/src/database/database.test.ts86// ─── Fixtures ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/@tinacms/graphql/src/database/database.test.ts111// ─── Setup helper ────────────────────────────────────────────────────────────COMMENT
MEDIUMpackages/@tinacms/graphql/src/database/database.test.ts147// ─── Tests ───────────────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/@tinacms/graphql/src/database/datalayer.test.ts23// ─── Helpers ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/@tinacms/graphql/src/database/datalayer.test.ts55// ─── makeFilter ─────────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/@tinacms/graphql/src/database/datalayer.test.ts311// ─── makeFilterChain ─────────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/@tinacms/graphql/src/database/datalayer.test.ts458// ─── makeFilterSuffixes ──────────────────────────────────────────────────────COMMENT
MEDIUM…ckages/@tinacms/graphql/src/database/datalayer.test.ts588// ─── makeIndexOpsForDocument ─────────────────────────────────────────────────COMMENT
MEDIUM…ckages/@tinacms/graphql/src/database/datalayer.test.ts696// ─── coerceFilterChainOperands ───────────────────────────────────────────────COMMENT
Fake / Example Data58 hits · 66 pts
SeverityFileLineSnippetContext
LOW⚡examples/next/tina-self-hosted-demo/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.2.3","major":"2","minor":"2","patch":"3"},"meta":{"flags":["experimentalData"]},"CODE
LOW⚡examples/next/tina-self-hosted-demo/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.2.3","major":"2","minor":"2","patch":"3"},"meta":{"flags":["experimentalData"]},"CODE
LOW⚡examples/next/tina-self-hosted-demo/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.2.3","major":"2","minor":"2","patch":"3"},"meta":{"flags":["experimentalData"]},"CODE
LOWexamples/next/tina-self-hosted-demo/tina/config.tsx133 name: 'placeholder',CODE
LOW…xt/tina-self-hosted-demo/components/blocks/content.tsx30 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOW…xt/tina-self-hosted-demo/components/blocks/content.tsx30 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOW⚡examples/next/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.9","major":"2","minor":"4","patch":"9"},"meta":{"flags":["experimentalData"]},"CODE
LOW⚡examples/next/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.9","major":"2","minor":"4","patch":"9"},"meta":{"flags":["experimentalData"]},"CODE
LOW⚡examples/next/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.9","major":"2","minor":"4","patch":"9"},"meta":{"flags":["experimentalData"]},"CODE
LOWexamples/next/kitchen-sink/tina/collections/post.tsx128 name: 'placeholder',CODE
LOW…amples/next/kitchen-sink/components/blocks/content.tsx38 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOW…amples/next/kitchen-sink/components/blocks/content.tsx38 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOWexamples/hugo/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.5","major":"2","minor":"4","patch":"5"},"meta":{"flags":["experimentalData"]},"CODE
LOWexamples/hugo/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.5","major":"2","minor":"4","patch":"5"},"meta":{"flags":["experimentalData"]},"CODE
LOWexamples/hugo/kitchen-sink/tina/schemas/blocks.ts182 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOWexamples/hugo/kitchen-sink/tina/schemas/blocks.ts182 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOW⚡examples/astro/visual-editing/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.3.1","major":"2","minor":"3","patch":"1"},"meta":{"flags":["experimentalData"]},"CODE
LOW⚡examples/astro/visual-editing/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.3.1","major":"2","minor":"3","patch":"1"},"meta":{"flags":["experimentalData"]},"CODE
LOW⚡examples/astro/visual-editing/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.3.1","major":"2","minor":"3","patch":"1"},"meta":{"flags":["experimentalData"]},"CODE
LOWexamples/astro/visual-editing/tina/schemas/blocks.ts176 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOWexamples/astro/visual-editing/tina/schemas/blocks.ts176 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOWexamples/astro/visual-editing/tina/collections/post.tsx130 name: 'placeholder',CODE
LOW⚡examples/astro/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.5","major":"2","minor":"4","patch":"5"},"meta":{"flags":["experimentalData"]},"CODE
LOW⚡examples/astro/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.5","major":"2","minor":"4","patch":"5"},"meta":{"flags":["experimentalData"]},"CODE
LOW⚡examples/astro/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.5","major":"2","minor":"4","patch":"5"},"meta":{"flags":["experimentalData"]},"CODE
LOWexamples/astro/kitchen-sink/tina/schemas/blocks.ts175 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOWexamples/astro/kitchen-sink/tina/schemas/blocks.ts175 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOWexamples/astro/kitchen-sink/tina/collections/post.tsx128 name: 'placeholder',CODE
LOW⚡examples/react/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.5","major":"2","minor":"4","patch":"5"},"meta":{"flags":["experimentalData"]},"CODE
LOW⚡examples/react/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.5","major":"2","minor":"4","patch":"5"},"meta":{"flags":["experimentalData"]},"CODE
LOW⚡examples/react/kitchen-sink/tina/tina-lock.json1{"schema":{"version":{"fullVersion":"2.4.5","major":"2","minor":"4","patch":"5"},"meta":{"flags":["experimentalData"]},"CODE
LOWexamples/react/kitchen-sink/tina/collections/post.tsx128 name: 'placeholder',CODE
LOW…s/react/kitchen-sink/src/components/blocks/content.tsx37 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOW…s/react/kitchen-sink/src/components/blocks/content.tsx37 body: 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam CODE
LOW…s/v4/@tinacms/ui/src/components/form-controls.test.tsx125 expect(box).toHaveAttribute('placeholder', 'Search titles');CODE
LOWpackages/v4/@tinacms/ui/src/components/list-card.tsx111 'name' | 'placeholder' | 'readOnly' | 'disabled'CODE
LOWpackages/v4/@tinacms/ui/src/components/list-card.tsx154 'name' | 'placeholder' | 'disabled'CODE
LOW…/src/plugins/fields/reference/reference-field.test.tsx116 'placeholder',CODE
LOWpackages/@tinacms/mdx/src/repro-large-file.test.ts37 { name: 'placeholder', label: 'Placeholder', type: 'string' },CODE
LOW…s/mdx/src/next/tests/markdown-basic-kitchen-sink/in.md15> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, vCODE
LOW…s/mdx/src/next/tests/markdown-basic-kitchen-sink/in.md15> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, vCODE
LOW…x/src/next/tests/markdown-basic-kitchen-sink/node.json72 "text": "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. VestibCODE
LOW…x/src/next/tests/markdown-basic-kitchen-sink/node.json72 "text": "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. VestibCODE
LOW…/mdx/src/next/tests/markdown-basic-kitchen-sink/out.md15> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, vCODE
LOW…/mdx/src/next/tests/markdown-basic-kitchen-sink/out.md15> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, vCODE
LOW…ckages/@tinacms/cli/src/cmds/init/templates/content.ts7Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut non lorem diam. Quisque vulputate nibh sodales eros pretium CODE
LOW…ckages/@tinacms/cli/src/cmds/init/templates/content.ts7Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut non lorem diam. Quisque vulputate nibh sodales eros pretium CODE
LOW…raphql/tests/auth-collection-permissions/index.test.ts190 { username: "admin-user", name: "Admin User", email: "admin@example.com", password: { passwordChangeRequiredCODE
LOW…raphql/tests/auth-collection-permissions/index.test.ts230 untouched('admin-user', 'Admin User', 'admin@example.com'),CODE
LOW…raphql/tests/auth-collection-permissions/index.test.ts273 untouched('admin-user', 'Admin User', 'admin@example.com'),CODE
LOW…raphql/tests/auth-collection-permissions/index.test.ts302 untouched('admin-user', 'Admin User', 'admin@example.com'),CODE
LOW…raphql/tests/auth-collection-permissions/index.test.ts327 untouched('admin-user', 'Admin User', 'admin@example.com'),CODE
LOW…raphql/tests/auth-collection-permissions/index.test.ts355 untouched('admin-user', 'Admin User', 'admin@example.com'),CODE
LOW…raphql/tests/auth-collection-permissions/index.test.ts379 untouched('admin-user', 'Admin User', 'admin@example.com'),CODE
LOW…raphql/tests/auth-collection-permissions/index.test.ts595 email: 'admin@example.com',CODE
LOW…/auth-collection-permissions/database-defaults.test.ts22const updateUsers = `mutation { updateDocument(collection: "user", relativePath: "index.json", params: { user: { users: CODE
LOW…ection-permissions/references/content/users/index.json6 "email": "admin@example.com",CODE
LOW…s/auth-collection-permissions/content/users/index.json6 "email": "admin@example.com",CODE
Over-Commented Block22 hits · 22 pts
SeverityFileLineSnippetContext
LOWplaywright/prebuilt-admin/e2e/mermaid-lazy.spec.ts1import { existsSync, readFileSync, readdirSync } from 'node:fs';COMMENT
LOWexamples/next/tina-self-hosted-demo/next-env.d.ts1/// <reference types="next" />COMMENT
LOWexamples/web-components/kitchen-sink/index.html61 // - `createTina` fetches a provided connection and renders the contentCOMMENT
LOWexamples/web-components/kitchen-sink/index.html81 // This is a web component (./post-preview.js) with two slots:COMMENT
LOWexamples/web-components/kitchen-sink/index.html101 // This is a web component with an attribute `content`.COMMENT
LOWexamples/web-components/kitchen-sink/index.html121COMMENT
LOWpackages/v4/examples/barebones/vite.config.ts1// The Vite config of the app. It shows the v4 shape: the project owns its pipeline, andCOMMENT
LOWpackages/v4/@tinacms/tinacms/tsconfig.test.json1{COMMENT
LOWpackages/create-tina-app/src/util/isNpm.js1// Copyright (c) 2015, npm, IncCOMMENT
LOW…ckages/@tinacms/mdx/src/next/shortcodes/mdast/index.ts361 position,COMMENT
LOW…ckages/@tinacms/mdx/src/next/shortcodes/mdast/index.ts381 // b.type +COMMENT
LOW…ges/@tinacms/app/src/fields/rich-text/monaco/index.tsx181 noSyntaxValidation: true,COMMENT
LOWpackages/@tinacms/cli/src/next/cache-manager.test.ts61 // `loadDatabaseFile` builds its outfile from the path returned here, soCOMMENT
LOWpackages/@tinacms/cli/src/next/config-manager.ts381 // Use a timestamped subdirectory inside the project's generated cache folderCOMMENT
LOW…ms/cli/src/next/localcontentpath-orchestration.test.ts1// End-to-end orchestration test for `localContentPath`.COMMENT
LOW…nacms/cli/src/next/codegen/consumer-resolution.test.ts1// Consumer-side regression test for the generated `./types.js` import inCOMMENT
LOW…es/@tinacms/cli/src/next/commands/dev-command/index.ts301 ],COMMENT
LOW…ages/@tinacms/cli/src/cmds/init/prompts/gitProvider.ts41 // title: 'Other', // TODO should this be an input for init? it just leaves a broken database.ts fileCOMMENT
LOW…ges/@tinacms/cli/src/cmds/init/prompts/authProvider.ts101 // const choices = []COMMENT
LOWpackages/tinacms/next-env.d.ts1/// <reference types="next" />COMMENT
LOW…ins/mdx-field-plugin/plate/plugins/core/formatting.tsx61 allow: HEADING_LEVELS,COMMENT
LOW.github/workflows/codeql.yml1# For most projects, this workflow file will not need changing; you simply needCOMMENT
Hyper-Verbose Identifiers21 hits · 21 pts
SeverityFileLineSnippetContext
LOW…4/@tinacms/rich-text/src/plate/plugins/core/common.tsx101export function normalizeLinksInCodeBlocks(node) {CODE
LOWpackages/v4/@tinacms/tinacms/src/editor/provider.tsx410function useFormMethodSubscriptions(CODE
LOWpackages/create-tina-app/src/util/examples.ts45export async function downloadAndExtractExample(root: string, name: string) {CODE
LOWpackages/create-tina-app/src/util/fileUtil.ts16export function folderContainsInstallConflicts(root: string): string[] {CODE
LOWpackages/create-tina-app/src/util/fileUtil.ts84export function updateProjectPackageVersion(dir: string, version: string) {CODE
LOWpackages/@tinacms/cli/src/next/database.ts44export async function createAndInitializeDatabase(CODE
LOW…tinacms/cli/src/next/commands/doctor-command/doctor.ts374function readYarnBerryLockVersions(contents: string): Map<string, string> {CODE
LOW…tinacms/cli/src/next/commands/doctor-command/doctor.ts399function normalizeInstalledVersion(version: string): string {CODE
LOW…tinacms/cli/src/next/commands/doctor-command/doctor.ts418function extractYarnBerryPackageName(descriptor: string): string | undefined {CODE
LOW…tinacms/cli/src/next/commands/doctor-command/doctor.ts425function getYarnBerryInstalledVersion(CODE
LOW…acms/cli/src/next/commands/dev-command/server/media.ts436function resolveStrictlyWithinBase(userPath: string, baseDir: string): string {CODE
LOWpackages/@tinacms/search/src/fuzzy/distance.ts47export function damerauLevenshteinDistance(str1: string, str2: string): number {CODE
LOWpackages/@tinacms/web-components/src/tina-markdown.js52function sanitizerRemovesUnsafeMarkup() {CODE
LOWpackages/@tinacms/graphql/src/database/datalayer.ts272function operatorMatchesBinaryFilter(CODE
LOWpackages/@tinacms/graphql/src/database/datalayer.ts340function operatorMatchesTernaryFilter(CODE
LOWpackages/@tinacms/graphql/src/resolver/auth-fields.ts86export function assertNewUsersHavePasswords(CODE
LOWpackages/@tinacms/astro/src/integration.ts211function devContentInvalidationPlugin(CODE
LOWpackages/@tinacms/astro/src/integration.ts299function cloudflareImportMetaUrlPlugin(CODE
LOW…tinacms/src/toolkit/components/ui/date-time-picker.tsx114function getValidArrowMinuteOrSecond(value: string, step: number) {CODE
LOW…/src/toolkit/fields/plugins/image-field-plugin.test.ts34function imageFieldOnChangeOriginal(CODE
LOW…plugins/mdx-field-plugin/plate/plugins/core/common.tsx111export function normalizeLinksInCodeBlocks(node) {CODE
Modern AI Meta-Vocabulary6 hits · 16 pts
SeverityFileLineSnippetContext
MEDIUMplaywright/astro-init/scaffold-and-init.sh5# scaffold-and-init.sh <project-dir> <astro-template>COMMENT
MEDIUMpackages/v4/README.md43| `@tinacms/tinacms` | `packages/v4/@tinacms/tinacms` | The v4 runtime. It supplies the universal entry and the subpath CODE
MEDIUMpackages/create-tina-app/CHANGELOG.md83- [#6742](https://github.com/tinacms/tinacms/pull/6742) [`01c3fb4`](https://github.com/tinacms/tinacms/commit/01c3fb4905CODE
MEDIUMpackages/@tinacms/cli/src/cmds/init/apply.ts155 // Wire the Astro dev/build scripts + scaffold the visual-editing demoCOMMENT
MEDIUM…ages/@tinacms/cli/src/cmds/init/astro-config-detect.ts4// True only when the file is the untouched scaffold default (the astro/configCOMMENT
MEDIUMpackages/@tinacms/cli/src/cmds/init/configure.ts33 // `init` adds TinaCMS to an EXISTING project; it does not scaffold a new one.COMMENT
AI Slop Vocabulary5 hits · 14 pts
SeverityFileLineSnippetContext
MEDIUMtests/size-fixture/package-lock.fixture.json14957 "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.3.tgz",CODE
MEDIUMpackages/tinacms/src/tina-cms.tsx176 // schema is now required as the Global Nav and CMS utilize itCOMMENT
MEDIUMpackages/tinacms/src/rich-text/static.tsx91 // Note: A more robust type would be a discriminated union of all possible node shapes.COMMENT
MEDIUM…dashboard/media-usage-dashboard/media-usage-scanner.ts243 // Fetch _sys fully because `ui.router` could utilize any of them to construct a routeCOMMENT
MEDIUM.github/workflows/size-baseline.yml64 # On the weekly schedule it runs the identical harness against the real npmCOMMENT
Cross-Language Confusion (JS/TS)1 hit · 5 pts
SeverityFileLineSnippetContext
HIGH…acms/cli/src/next/codegen/codegen/sdkPlugin/visitor.ts65 print(node)CODE
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMpackages/tinacms/src/toolkit/core/cms.ts29 * #### Creating a CMSCOMMENT
Slop Phrases1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/codeql.yml59 # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize howCOMMENT
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOWscripts/require_gh_token.sh11 # Check if token can create a releseCOMMENT
Verbosity Indicators1 hit · 2 pts
SeverityFileLineSnippetContext
LOWpackages/@tinacms/schema-tools/src/schema/TinaSchema.ts147 // if the collection has a match or exclude, we need to check if the file matchesCOMMENT