AI Slop Code RIsk Monitor

cloudflare/vinext

Vite plugin that reimplements the Next.js API surface — deploy anywhere

7.3 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for cloudflare/vinext, a TypeScript project with 9,127 GitHub stars. SynthScan examined 615,351 lines of code across 2327 source files, recording 3152 pattern matches distributed across 12 syntactic categories. The legacy adjusted pattern signal is 7.3 (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.3
Adjusted Signal
7.3
Raw Pattern Score
100%
Time Factor
2026-10-11
Last Push
9.1K
Stars
TypeScript
Language
615.4K
Lines of Code
2.3K
Files
3.2K
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 18.7/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 0.3/100 · LOW

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

Agent Over-Engineering Ratio 28.3/100 · MEDIUM

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

PR Review Velocity Impact 30.6/100 · MEDIUM

Which changes need focused human review? 3152 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 3HIGH 0MEDIUM 658LOW 2491

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 3152 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.

Hyper-Verbose Identifiers2135 hits · 2158 pts
SeverityFileLineSnippetContext
LOWoxlint-plugins/prefer-shared-utils.ts55function readExportedFunctionNames(absPath: string): string[] {CODE
LOWoxlint-plugins/prefer-shared-utils.ts115function maskCommentsAndQuotedStrings(source: string, options = { scanTemplateBodies: true }) {CODE
LOWoxlint-plugins/prefer-shared-utils.ts181function isCanonicalDefinitionFile(filename: string, modulePath: string) {CODE
LOWtests/cache-adapter-instantiate.test.ts47async function expectNoUnhandledRejection(run: () => void) {CODE
LOWtests/asset-prefix.test.ts457function directoryContainsFileWithExtension(dir: string, extension: string): boolean {CODE
LOWtests/pages-router.test.ts63function writeMiddlewareRewritePriorityFixture(rootDir: string): void {CODE
LOWtests/pages-router.test.ts173function writePagesAppGlobalCssFixture(rootDir: string): PagesAppGlobalCssFixture {CODE
LOWtests/pages-router.test.ts323function writeEncodedSlashPagesFixture(rootDir: string): void {CODE
LOWtests/pages-router.test.ts358function writeOptionalCatchAllRootFixture(rootDir: string): void {CODE
LOWtests/pages-router.test.ts389function writeGsspAppInitialPropsContextFixture(rootDir: string): void {CODE
LOWtests/pages-router.test.ts537async function buildPagesFixtureToOutDir(rootDir: string, outDir: string): Promise<void> {CODE
LOWtests/pages-router-app-prefetch-detection.test.ts63function installFakeBrowserGlobals(CODE
LOWtests/optimize-imports-integration.test.ts17function linkWorkspaceDependencies(CODE
LOWtests/app-page-dispatch.test.ts215function findMetadataOutletElements(payload: unknown): React.ReactElement[] {CODE
LOWtests/app-page-dispatch.test.ts250function renderPagePayloadToStream(payload: unknown): ReadableStream<Uint8Array> {CODE
LOWtests/app-page-dispatch.test.ts304function createPostsCacheabilityManifest() {CODE
LOWtests/app-page-dispatch.test.ts322function expectCachedAppPageSearchParamsObservation(value: unknown, html: string): void {CODE
LOWtests/app-page-dispatch.test.ts334function buildQueryInvariantRenderObservation(): RenderObservation {CODE
LOWtests/app-page-dispatch.test.ts552function createParamTextPageElement(prefix = "element") {CODE
LOWtests/app-page-dispatch.test.ts563function createPprBlogDispatchOptions(overrides: CreateDispatchOptionsOverrides = {}) {CODE
LOWtests/app-page-dispatch.test.ts576function createPprBlogFallbackShellGetter(stale: boolean) {CODE
LOWtests/app-page-dispatch.test.ts588function createFreshBodySsrHandler(body: string): DispatchOptions["loadSsrHandler"] {CODE
LOWtests/app-page-dispatch.test.ts596function createVerifiedStaticLayoutManifest(input: {CODE
LOWtests/app-page-dispatch.test.ts5070 function createDynamicSegmentRoute(): TestRoute {CODE
LOWtests/app-page-dispatch.test.ts5451 function createProductionSsrHandler(CODE
LOWtests/app-page-dispatch.test.ts5914 function createDeferredCacheLifeRender() {CODE
LOWtests/helpers.ts251export async function requestNodeServerWithHost(CODE
LOWtests/helpers.ts313export async function expectRepeatedSlashRedirects(CODE
LOWtests/helpers.ts454export async function buildCloudflareAppFixture(fixtureDir: string): Promise<{CODE
LOWtests/app-page-route-wiring.test.ts216function countSuspenseWithFallback(node: unknown, fallbackTypeName: string): number {CODE
LOWtests/app-page-route-wiring.test.ts434async function buildGeneratedMetadataRouteElements(CODE
LOWtests/app-page-route-wiring.test.ts480async function buildGeneratedMetadataRouteHtml(CODE
LOWtests/app-page-route-wiring.test.ts4630 function buildStaticBranchElements(branch: "account" | "admin") {CODE
LOWtests/pages-router-worker-entry.test.ts5function pagesWorkerEntryVirtualModules(): Plugin {CODE
LOWtests/pages-router-worker-entry.test.ts62export function registerConfiguredCacheAdapters() {CODE
LOWtests/pages-router-worker-entry.test.ts78 ["virtual:vinext-image-adapters", "export function registerConfiguredImageOptimizer() {}"],CODE
LOWtests/cloudflare-cdn-worker.test.ts94function getPreFixResponseStageInvocation(value: unknown): PreFixResponseStageInvocation | null {CODE
LOWtests/worker-entry-source.ts12export function readAppRequestStageEntrySource(): string {CODE
LOW⚡tests/worker-entry-source.ts27export function readPagesRouterEntrySource(): string {CODE
LOW⚡tests/worker-entry-source.ts31export function readPagesSingleEntrySource(): string {CODE
LOW⚡tests/worker-entry-source.ts40export function readPagesRequestStageEntrySource(): string {CODE
LOWtests/worker-entry-source.ts52export function readPagesResponseStageEntrySource(): string {CODE
LOWtests/app-ssr-stream.test.ts97function createNoopRscEmbedTransform() {CODE
LOWtests/app-ssr-stream.test.ts540function createFastSuspenseDocument() {CODE
LOWtests/app-ssr-stream.test.ts564async function renderFastSuspenseDocument(waitBeforePipe: boolean): Promise<string> {CODE
LOWtests/app-router-isr-codegen.test.ts255 expect(code).toContain("export async function seedMemoryCacheFromPrerender(serverDir)");CODE
LOWtests/cache-adapters-config.test.ts73 expect(code).toContain("export function registerConfiguredCacheAdapters() {}");CODE
LOWtests/cloudflare-cdn-warm-deploy.test.ts117function writeTwoStageWorkerArtifact({CODE
LOWtests/cloudflare-cdn-warm-deploy.test.ts155function writeBuildOutputWorkerArtifact(): void {CODE
LOWtests/app-page-cache.test.ts56function createHeaderClearingCdnAdapter(): CdnCacheAdapter {CODE
LOWtests/init-cjs-config-resolve.test.ts7async function buildAppWithExtensionlessTailwindConfig(CODE
LOWtests/tsconfig-path-alias-build.test.ts49function writeCloudflareAppFixture(root: string, name: string) {CODE
LOWtests/tsconfig-path-alias-build.test.ts141async function buildCloudflareAppFixture(root: string) {CODE
LOWtests/pages-node-compat.test.ts19function exerciseNextApiRequestPreviewTypes(req: NextApiRequest): NextApiRequestPreviewFields {CODE
LOWtests/pages-node-compat.test.ts41function exerciseNextApiResponsePreviewTypes(res: NextApiResponse): Promise<void> {CODE
LOWtests/deploy-prerender-config.test.ts151function writeProjectWithInlineNextConfig(nextConfig: string): void {CODE
LOWtests/deploy-prerender-config.test.ts178function writeCfBuildOutputScaffolding(): void {CODE
LOWtests/init.test.ts179function readPluginRscVendoredEdgeBundle(fileName: string): string {CODE
LOWtests/init.test.ts190function expectConsumedBeforeInitialization(CODE
LOWtests/app-pages-bridge.test.ts44 async function renderHybridEdgeApiResponse(hostRuntime: "node" | "worker") {CODE
2075 more matches not shown…
Decorative Section Separators645 hits · 1930 pts
SeverityFileLineSnippetContext
MEDIUMtests/asset-prefix.test.ts46// ── Unit tests on the asset-prefix helpers ────────────────────────────────────COMMENT
MEDIUMtests/asset-prefix.test.ts399// ── End-to-end build tests ────────────────────────────────────────────────────COMMENT
MEDIUMtests/pages-router.test.ts3152 // ── Cross-origin request protection ─────────────────────────────────COMMENT
MEDIUMtests/pages-router.test.ts3215 // ── /_next/data JSON endpoint (issue #1330) ──────────────────────COMMENT
MEDIUMtests/pages-router.test.ts3215 // ── /_next/data JSON endpoint (issue #1330) ──────────────────────COMMENT
MEDIUMtests/pages-router.test.ts8172 // ── /_next/data JSON endpoint in production (issue #1330) ─────────COMMENT
MEDIUMtests/pages-router.test.ts8172 // ── /_next/data JSON endpoint in production (issue #1330) ─────────COMMENT
MEDIUMtests/font-google.test.ts16// ── Helpers ───────────────────────────────────────────────────COMMENT
MEDIUMtests/font-google.test.ts82// ── Font shim tests ───────────────────────────────────────────COMMENT
MEDIUMtests/font-google.test.ts590// ── Plugin tests ──────────────────────────────────────────────COMMENT
MEDIUMtests/font-google.test.ts1366// ── fetchAndCacheFont integration ─────────────────────────────COMMENT
MEDIUMtests/font-google.test.ts1601// ── Served URL rewrite for cached Google Fonts CSS ────────────COMMENT
MEDIUMtests/font-google.test.ts1670// ── parseStaticObjectLiteral security tests ───────────────────COMMENT
MEDIUMtests/font-google.test.ts1773// ── _findBalancedObject / _findCallEnd unit tests ─────────────COMMENT
MEDIUMtests/dev-origin-check.test.ts10 // ── isAllowedDevOrigin ────────────────────────────────────────────────COMMENT
MEDIUMtests/dev-origin-check.test.ts106 // ── isCrossSiteNoCorsRequest ──────────────────────────────────────────COMMENT
MEDIUMtests/dev-origin-check.test.ts133 // ── validateDevRequest ────────────────────────────────────────────────COMMENT
MEDIUMtests/dev-origin-check.test.ts176 // ── generateDevOriginCheckCode ────────────────────────────────────────COMMENT
MEDIUMtests/check.test.ts16// ── Helpers ────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/check.test.ts34// ── scanImports ────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/check.test.ts356// ── analyzeConfig ──────────────────────────────────────────────────────────COMMENT
MEDIUMtests/check.test.ts995// ── checkLibraries ─────────────────────────────────────────────────────────COMMENT
MEDIUMtests/check.test.ts1114// ── checkConventions ───────────────────────────────────────────────────────COMMENT
MEDIUMtests/check.test.ts1956// ── hasFreeCjsGlobal ─────────────────────────────────────────────────────────COMMENT
MEDIUMtests/check.test.ts2062// ── runCheck ───────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/check.test.ts2174// ── formatReport ───────────────────────────────────────────────────────────COMMENT
MEDIUMtests/check.test.ts2340// ── Integration: running against fixtures ──────────────────────────────────COMMENT
MEDIUMtests/pages-bodyparser-config.test.ts49// ── parseSizeLimit ───────────────────────────────────────────────────────COMMENT
MEDIUMtests/pages-bodyparser-config.test.ts80// ── resolveBodyParserConfig ──────────────────────────────────────────────COMMENT
MEDIUMtests/pages-bodyparser-config.test.ts137// ── Helpers shared by the integration tests below ────────────────────────COMMENT
MEDIUMtests/pages-bodyparser-config.test.ts284// ── Node/dev path: api-handler.ts ────────────────────────────────────────COMMENT
MEDIUMtests/pages-bodyparser-config.test.ts420// ── Workers/prod path: pages-api-route.ts ────────────────────────────────COMMENT
MEDIUMtests/isr-decision.test.ts10// ─── MISS ────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/isr-decision.test.ts35// ─── HIT ─────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/isr-decision.test.ts171// ─── STALE ───────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/isr-decision.test.ts265// ─── buildMissIsrCacheControl ─────────────────────────────────────────────────COMMENT
MEDIUMtests/isr-decision.test.ts285// ─── buildAppRouteMissIsrCacheControl ─────────────────────────────────────────COMMENT
MEDIUMtests/isr-decision.test.ts309// ─── re-exported constants ────────────────────────────────────────────────────COMMENT
MEDIUMtests/helpers.ts22// ── Fixture paths ─────────────────────────────────────────────COMMENT
MEDIUMtests/helpers.ts71// ── Server lifecycle helper ───────────────────────────────────COMMENT
MEDIUMtests/helpers.ts161// ── Config helpers ────────────────────────────────────────────COMMENT
MEDIUMtests/helpers.ts180// ── Fetch helpers ─────────────────────────────────────────────COMMENT
MEDIUMtests/app-ssr-stream.test.ts444// ── beforeInteractive pre-head splice ────────────────────────────────────────COMMENT
MEDIUMtests/image-component.test.ts29// ─── Issue #1513 reproduction ───────────────────────────────────────────COMMENT
MEDIUMtests/image-component.test.ts29// ─── Issue #1513 reproduction ───────────────────────────────────────────COMMENT
MEDIUMtests/image-component.test.ts66// ─── SSR rendering ──────────────────────────────────────────────────────COMMENT
MEDIUMtests/image-component.test.ts293// ─── srcSet generation ──────────────────────────────────────────────────COMMENT
MEDIUMtests/image-component.test.ts373// ─── getImageProps ──────────────────────────────────────────────────────COMMENT
MEDIUMtests/image-component.test.ts531// ─── Security: blurDataURL CSS injection ────────────────────────────────COMMENT
MEDIUMtests/image-component.test.ts638// ─── onLoadingComplete (deprecated but supported) ────────────────────────COMMENT
MEDIUMtests/image-component.test.ts862// ─── Reproduction: priority prop on remote URL paths ────────────────────COMMENT
MEDIUMtests/image-component.test.ts956// ─── onLoad / onError single-fire dedup ──────────────────────────────────COMMENT
MEDIUMtests/image-component.test.ts1085// ─── dangerouslyAllowLocalIP / private-IP guard ─────────────────────────COMMENT
MEDIUMtests/app-router-next-config-codegen.test.ts391 // ── Dev origin check code generation ────────────────────────────────COMMENT
MEDIUMtests/app-router-client-preloading.test.ts61// ── Auto-registration of @vitejs/plugin-rsc ─────────────────────────────────COMMENT
MEDIUMtests/link.test.ts209// ─── Repeated-slash warning (parity with Next.js) ───────────────────────COMMENT
MEDIUMtests/link.test.ts365// ─── useLinkStatus ──────────────────────────────────────────────────────COMMENT
MEDIUMtests/link.test.ts645// ─── resolveHref (internal helper, tested via component output) ─────────COMMENT
MEDIUMtests/link.test.ts905// ─── isExternalUrl ──────────────────────────────────────────────────────COMMENT
MEDIUMtests/link.test.ts931// ─── isHashOnlyChange ───────────────────────────────────────────────────COMMENT
585 more matches not shown…
Over-Commented Block270 hits · 226 pts
SeverityFileLineSnippetContext
LOWvite.config.ts261 alias: WORKSPACE_SRC_ALIAS,COMMENT
LOWtests/font-google.test.ts1601// ── Served URL rewrite for cached Google Fonts CSS ────────────COMMENT
LOWtests/helpers.ts221 const tmpDir = await fs.mkdtemp(path.join(os.tmpdir(), prefix));COMMENT
LOWtests/app-layout-param-observation.test.ts241 ensureFetchPatch();COMMENT
LOWtests/init-cjs-config-resolve.test.ts61 }COMMENT
LOWtests/tsconfig-path-alias-build.test.ts321 // unminified JS escaped the inner quotes as `title: \"Second Post\"`, so theCOMMENT
LOWtests/script.test.ts201 );COMMENT
LOWtests/script.test.ts661 // The stylesheets prop must never leak onto the <script> attribute list.COMMENT
LOWtests/app-router-font-google-prod.test.ts1import fs from "node:fs";COMMENT
LOWtests/app-router-font-google-prod.test.ts21 // request and fell back to the real font only via the browser'sCOMMENT
LOWtests/app-router-font-google-prod.test.ts41 fs.rmSync(fontCacheDir, { recursive: true, force: true });COMMENT
LOWtests/app-router-font-google-prod.test.ts61 // mock can match by substring. The build plugin currently alwaysCOMMENT
LOWtests/app-router-production-server.test.ts841 /<link\b(?=[^>]*\brel="modulepreload")(?=[^>]*\bas="script")(?=[^>]*\bfetchpriority="low")(?=[^>]*\bhref="[^"]*\COMMENT
LOWtests/app-router-production-server.test.ts1061 // Positive sanity: the page actually rendered (otherwise the negativeCOMMENT
LOWtests/app-router-production-server.test.ts2681 // server-references manifest on the action POST. (b) can only fail inCOMMENT
LOWtests/app-router-production-server.test.ts2821 // override view but did not invalidate the cached sealed snapshot, so theCOMMENT
LOWtests/app-router-production-server.test.ts2921COMMENT
LOWtests/head.test.ts741// ─── client hydration sync keeps defaults & order (issue #1569 / #1677) ─────COMMENT
LOWtests/app-router-rsc-flight-hint.test.ts41// ── Client reference preloading (Issue #256) ─────────────────────────────────COMMENT
LOWtests/rsc-streaming.test.ts641 expect(output).toContain(RSC_RUNTIME_PUSH);COMMENT
LOWtests/router-javascript-urls.test.ts1import { afterEach, describe, it, expect, vi } from "vite-plus/test";COMMENT
LOWtests/router-javascript-urls.test.ts21//COMMENT
LOWtests/link-navigation.test.ts801 expect(onClick).toHaveBeenCalledTimes(1);COMMENT
LOWtests/link-navigation.test.ts1061 expect(onNavigate).not.toHaveBeenCalled();COMMENT
LOWtests/entry-templates.test.ts1121 ]);COMMENT
LOWtests/entry-templates.test.ts2001 // loader so route-miss 404s can render app/global-not-found.tsx standalone.COMMENT
LOWtests/prerender.test.ts1721 });COMMENT
LOWtests/serve-static.test.ts1261 server.close((error) => (error ? reject(error) : resolve()));COMMENT
LOWtests/cache-adapters-build.test.ts241 // adapter's `LOCAL_ADAPTER_MARKER` string literal, whose contents surviveCOMMENT
LOWtests/nextjs-compat/navigation.test.ts81 expect(res.status).toBe(404);COMMENT
LOWtests/nextjs-compat/navigation.test.ts121 //COMMENT
LOWtests/nextjs-compat/navigation.test.ts141 // Tests client-side external navigationCOMMENT
LOWtests/nextjs-compat/navigation.test.ts161 // N/A: Popstate revalidateCOMMENT
LOWtests/nextjs-compat/not-found.test.ts381 // Mirrors Next.js: when `isHTTPAccessFallbackError(err)` is true, theCOMMENT
LOWtests/nextjs-compat/not-found.test.ts441 expect(body).not.toContain("Server action failed");COMMENT
LOWtests/nextjs-compat/not-found.test.ts461 // TO PORT: Add to same Playwright spec.COMMENT
LOWtests/nextjs-compat/rsc-context-lazy-stream.test.ts121 expect(html).toContain(`data-request-id="${SENTINEL}"`);COMMENT
LOWtests/nextjs-compat/rsc-context-lazy-stream.test.ts181COMMENT
LOWtests/nextjs-compat/app-routes.test.ts421 // Tests ISR revalidation on route handlers with static params — build-specificCOMMENT
LOWtests/nextjs-compat/app-routes.test.ts441 // N/A: 'customized metadata routes' (robots.txt) — Metadata routes not in scopeCOMMENT
LOWtests/nextjs-compat/app-css.test.ts81 // N/A: Computed styles (color, font-size, font-weight)COMMENT
LOWtests/nextjs-compat/revalidate-reason.test.ts41 });COMMENT
LOWtests/nextjs-compat/global-error.test.ts201 expect(res.status).toBe(200);COMMENT
LOWtests/nextjs-compat/global-error.test.ts261 // TO PORT: Create tests/e2e/app-router/nextjs-compat/global-error.spec.ts withCOMMENT
LOWtests/nextjs-compat/global-not-found.test.ts101 // global-not-found.tsx replaces the root layout for route-miss 404s, so theCOMMENT
LOWtests/nextjs-compat/global-not-found.test.ts121COMMENT
LOWtests/nextjs-compat/hooks.test.ts161 // Tests the shared-component use case: a client component that imports fromCOMMENT
LOWtests/nextjs-compat/hooks.test.ts181 // Tests that useParams returns the same object reference on re-renderCOMMENT
LOWtests/nextjs-compat/dynamic.test.ts121 //COMMENT
LOWtests/nextjs-compat/dynamic.test.ts221 for (const tag of preloadLinks) {COMMENT
LOWtests/nextjs-compat/dynamic.test.ts241 // Source: dynamic.test.ts#L38-L41COMMENT
LOWtests/nextjs-compat/dynamic.test.ts261 // SKIP: 'should not render client component imported through ssr: false in client components in edge runtime'COMMENT
LOWtests/nextjs-compat/metadata.test.ts401 // Some template tests use browser.eval('document.title') — ported above at SSR levelCOMMENT
LOWtests/nextjs-compat/metadata.test.ts421 // N/A: HMR/hot reload testsCOMMENT
LOWtests/nextjs-compat/app-rendering.test.ts101 expect(html).toMatch(/id="layout-now"[^>]*>\d+/);COMMENT
LOWtests/e2e/catch-error/catch-error.spec.ts81 // Next-parity test: an uncaught post-shell RSC error with no route/userlandCOMMENT
LOWtests/e2e/app-router/config-redirect.spec.ts121COMMENT
LOWtests/e2e/app-router/pages-router-use-params.spec.ts1// Regression test for issue #1466 ported from the Next.js deploy suite:COMMENT
LOWtests/e2e/app-router/cjs.spec.ts21 // causes a fatal error during production builds of app-basic, breakingCOMMENT
LOWtests/e2e/app-router/rsc-fetch-errors.spec.ts141 // waits in CI.COMMENT
210 more matches not shown…
Structural Annotation Overuse36 hits · 62 pts
SeverityFileLineSnippetContext
LOW.opencode/commands/fix-issue.md7## Step 1: Understand the issueCOMMENT
LOW.opencode/commands/fix-issue.md11## Step 2: Create worktree and branchCOMMENT
LOW.opencode/commands/fix-issue.md28## Step 3: Fix the issueCOMMENT
LOW.opencode/commands/fix-issue.md41## Step 4: VerifyCOMMENT
LOW.opencode/commands/fix-issue.md54## Step 5: Commit and create PRCOMMENT
LOW⚡.opencode/commands/address-review.md7## Step 1: Read all review feedbackCOMMENT
LOW⚡.opencode/commands/address-review.md15## Step 2: Categorize each commentCOMMENT
LOW⚡.opencode/commands/address-review.md23## Step 3: Make fixesCOMMENT
LOW.opencode/commands/address-review.md38## Step 4: File follow-up issuesCOMMENT
LOW.opencode/commands/address-review.md56## Step 5: Reply to review commentsCOMMENT
LOW.opencode/commands/address-review.md67## Step 6: Enable auto-mergeCOMMENT
LOW.opencode/commands/address-review.md73## Step 7: SummaryCOMMENT
LOWpackages/cloudflare/src/deploy.ts2135 // Step 1: Detect project structureCOMMENT
LOWpackages/cloudflare/src/deploy.ts2155 // Step 2: Validate init-owned dependencies and deployment scaffolding.COMMENT
LOWpackages/cloudflare/src/deploy.ts2254 // Step 5: BuildCOMMENT
LOWpackages/cloudflare/src/deploy.ts2397 // Step 7: Deploy the entry Worker via the selected CLI.COMMENT
LOW⚡packages/vinext/src/config/config-matchers.ts327 // Step 1: extract regex groups and replace with numbered placeholders.COMMENT
LOW⚡packages/vinext/src/config/config-matchers.ts334 // Step 2: single-pass conversion of the placeholder-bearing string.COMMENT
LOW⚡…ges/vinext/src/server/app-rsc-request-normalization.ts191 // Step 2: Redirect repeated slashes / backslashes (308, like Next.js) andCOMMENT
LOW⚡…ges/vinext/src/server/app-rsc-request-normalization.ts198 // Step 3: Strict segment-wise percent-decode. Preserves encoded path delimitersCOMMENT
LOW⚡…ges/vinext/src/server/app-rsc-request-normalization.ts208 // Step 4: Collapse double-slashes and resolve . / .. segments.COMMENT
LOW⚡…ges/vinext/src/server/app-rsc-request-normalization.ts213 // Step 5: basePath check and strip.COMMENT
LOW…ges/vinext/src/server/app-rsc-request-normalization.ts240 // Step 8: Validate and sanitize X-Vinext-Interception-Context.COMMENT
LOW…ges/vinext/src/server/app-rsc-request-normalization.ts259 // Step 9: Normalize mounted-slots header for canonical cache keying.COMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts402 // Step 1: Reconstruct basePathStateCOMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts405 // Step 2: Trailing-slash normalization. Adapters must rewrite `_next/data`COMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts417 // Step 3: Build pre-middleware request contextCOMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts426 // Step 4: Config redirects (before middleware)COMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts805 // Step 11: API routesCOMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts809 // Step 12: afterFiles rewritesCOMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts463 // Step 5: MiddlewareCOMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts618 // Step 6: Unpack middleware request headersCOMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts674 // Step 7: Config headers stagingCOMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts685 // Step 8: External-URL proxy (post-mw rewrite target)COMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts701 // Step 9: beforeFiles rewritesCOMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts863 // Step 13: Render + fallback rewritesCOMMENT
Verbosity Indicators24 hits · 43 pts
SeverityFileLineSnippetContext
LOWpackages/cloudflare/src/deploy.ts2135 // Step 1: Detect project structureCOMMENT
LOWpackages/cloudflare/src/deploy.ts2155 // Step 2: Validate init-owned dependencies and deployment scaffolding.COMMENT
LOWpackages/cloudflare/src/deploy.ts2254 // Step 5: BuildCOMMENT
LOWpackages/cloudflare/src/deploy.ts2397 // Step 7: Deploy the entry Worker via the selected CLI.COMMENT
LOW⚡packages/vinext/src/config/config-matchers.ts327 // Step 1: extract regex groups and replace with numbered placeholders.COMMENT
LOW⚡packages/vinext/src/config/config-matchers.ts334 // Step 2: single-pass conversion of the placeholder-bearing string.COMMENT
LOW⚡…ges/vinext/src/server/app-rsc-request-normalization.ts191 // Step 2: Redirect repeated slashes / backslashes (308, like Next.js) andCOMMENT
LOW⚡…ges/vinext/src/server/app-rsc-request-normalization.ts198 // Step 3: Strict segment-wise percent-decode. Preserves encoded path delimitersCOMMENT
LOW⚡…ges/vinext/src/server/app-rsc-request-normalization.ts208 // Step 4: Collapse double-slashes and resolve . / .. segments.COMMENT
LOW⚡…ges/vinext/src/server/app-rsc-request-normalization.ts213 // Step 5: basePath check and strip.COMMENT
LOW…ges/vinext/src/server/app-rsc-request-normalization.ts240 // Step 8: Validate and sanitize X-Vinext-Interception-Context.COMMENT
LOW…ges/vinext/src/server/app-rsc-request-normalization.ts259 // Step 9: Normalize mounted-slots header for canonical cache keying.COMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts402 // Step 1: Reconstruct basePathStateCOMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts405 // Step 2: Trailing-slash normalization. Adapters must rewrite `_next/data`COMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts417 // Step 3: Build pre-middleware request contextCOMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts426 // Step 4: Config redirects (before middleware)COMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts805 // Step 11: API routesCOMMENT
LOW⚡packages/vinext/src/server/pages-request-pipeline.ts809 // Step 12: afterFiles rewritesCOMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts463 // Step 5: MiddlewareCOMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts618 // Step 6: Unpack middleware request headersCOMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts674 // Step 7: Config headers stagingCOMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts685 // Step 8: External-URL proxy (post-mw rewrite target)COMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts701 // Step 9: beforeFiles rewritesCOMMENT
LOWpackages/vinext/src/server/pages-request-pipeline.ts863 // Step 13: Render + fallback rewritesCOMMENT
Hallucination Indicators3 hits · 30 pts
SeverityFileLineSnippetContext
CRITICALtests/pages-router.test.ts2202 ...devServer.environments.client.moduleGraph.idToModuleMap.values(),CODE
CRITICALtests/app-router-dev-server.test.ts163 const rscModuleIds = server.environments.rsc.moduleGraph.idToModuleMap.keys();CODE
CRITICALtests/app-router-dev-externals.test.ts53 const ids = [...server.environments.rsc.moduleGraph.idToModuleMap.keys()];CODE
AI Slop Vocabulary10 hits · 30 pts
SeverityFileLineSnippetContext
MEDIUMtests/build-time-classification-integration.test.ts238 // below are minify-robust by design — see the file header.COMMENT
MEDIUMscripts/e2e-logs.sh2# Logs script for the Next.js deploy test harness.COMMENT
MEDIUMscripts/e2e-deploy.sh2# Deploy script for the Next.js deploy test harness.COMMENT
MEDIUMscripts/e2e-deploy.sh272# during the test harness's destroy() cleanup. vinext doesn't produce one, soCOMMENT
MEDIUMscripts/e2e-deploy.sh275# on failure — otherwise the test harness logs ENOENT noise (303 lines perCOMMENT
MEDIUMscripts/e2e-deploy.sh720# Dependency-manager deprecation summaries describe the deploy harness's ownCOMMENT
MEDIUMscripts/e2e-deploy.sh775# The Next.js test harness parses these markers from the logs script outputCOMMENT
MEDIUMscripts/e2e-cleanup.sh2# Cleanup script for the Next.js deploy test harness.COMMENT
MEDIUMpackages/vinext/src/shims/internal/interpolate-as.ts238 // TODO: more robust handling for user-error (passing `/`)COMMENT
MEDIUM.github/workflows/nextjs-deploy-suite.yml61 # Backfills retain the current workflow harness in the workspace andCOMMENT
Overly Generic Function Names18 hits · 18 pts
SeverityFileLineSnippetContext
LOWtests/use-cache-transform.test.ts34 `export async function getData() {`,CODE
LOWtests/use-cache-transform.test.ts41 `export async function getData() {`,CODE
LOWtests/use-cache-transform.test.ts169 `export async function getData() {`,CODE
LOWtests/use-cache-transform.test.ts210 const source = `export async function getData() { return 1; }`;CODE
LOWtests/use-cache-transform.test.ts226 `export async function getData() {`,CODE
LOWtests/use-cache-transform.test.ts333 const source = `export async function getData() { return 1; }`;CODE
LOWtests/use-cache-transform.test.ts502 [`export async function getData() {`, ` "use cache: durable-cache";`, `}`].join("\n"),CODE
LOWtests/use-cache-transform.test.ts548 [`export function getData() {`, ` "use cache";`, `}`].join("\n"),CODE
LOWtests/use-cache-transform.test.ts568 [`"use cache";`, `export function getData() { return 1; }`].join("\n"),CODE
LOWtests/use-cache-transform.test.ts672 [`export async function getData() {`, ` ${JSON.stringify(directive)};`, `}`].join("\n"),CODE
LOWtests/use-cache-transform.test.ts689 `export async function getData() {`,CODE
LOWtests/use-cache-transform.test.ts772 [`"use server";`, `"use cache";`, `export async function getData() {}`].join("\n"),CODE
LOWtests/nextjs-compat/app-rendering.test.ts108 // timestamps across requests. The async function getData() returns a cached promise atCOMMENT
LOW…amples/app-router-playground/app/remote-cache/page.tsx48async function getData() {CODE
LOW…es/app-router-playground/app/cached-functions/page.tsx39async function getData() {CODE
LOWpackages/vinext/src/server/app-router-entry.ts127async function handleRequest(CODE
LOW…next/src/server/app-request-stage-independent-entry.ts82async function handleRequest(CODE
LOWpackages/vinext/src/server/pages-request-stage-entry.ts214function handleRequest(CODE
Modern AI Meta-Vocabulary3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUM…vinext/src/server/app-browser-navigation-controller.ts1091 // Intentionally retained as #726-OPS-01 trace-shell scaffolding. TheCOMMENT
MEDIUM.github/workflows/nextjs-deploy-suite.yml264 # e2e-deploy.sh dependency injection), the scripts, the preparedCOMMENT
MEDIUM.github/workflows/ci.yml194 # scaffold install. Replace them with explicit false values.COMMENT
Example Usage Blocks4 hits · 6 pts
SeverityFileLineSnippetContext
LOWscripts/run-nextjs-deploy-suite.sh6# Usage:COMMENT
LOWscripts/autopilot.sh7# Usage:COMMENT
LOWscripts/profile-vinext-dev-macos.sh8# Usage:COMMENT
LOWscripts/smoke-test.sh6# Usage:COMMENT
Fake / Example Data3 hits · 3 pts
SeverityFileLineSnippetContext
LOWtests/metadata-routes.test.ts239 uploader: { info: "https://example.com/authors/jane", content: "Jane Doe" },CODE
LOW…ic/fixture/app/api/endpoint-behind-middleware/route.ts2 return Response.json({ name: 'John Doe' });CODE
LOW…ntry-nextjs-16-static/fixture/tests/middleware.test.ts15 expect(await response.json()).toStrictEqual({ name: 'John Doe' });CODE
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOWscripts/test-repos.sh195# Print resultsCOMMENT