AI Slop Code Risk Monitor

cloudflare/computer

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

Give your agent a computer 👾

2.6 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for cloudflare/computer, a TypeScript project with 9,763 GitHub stars. SynthScan examined 171,752 lines of code across 745 source files, recording 394 pattern matches distributed across 8 syntactic categories. The legacy adjusted pattern signal is 2.6 (Low pattern signal); it is not an authorship estimate.

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

2.6
Adjusted Signal
2.6
Raw Pattern Score
100%
Time Factor
2026-10-29
Last Push
9.8K
Stars
TypeScript
Language
171.8K
Lines of Code
745
Files
394
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 11.7/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 0.0/100 · LOW

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

Agent Over-Engineering Ratio 1.9/100 · LOW

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

PR Review Velocity Impact 11.8/100 · LOW

Which changes need focused human review? 394 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 0MEDIUM 18LOW 376

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 394 distinct pattern matches across 8 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.

Over-Commented Block312 hits · 312 pts
SeverityFileLineSnippetContext
LOWdocs/08_capnweb_interface.md61 // missing subset. Returns the receiver's new rev plus theCOMMENT
LOWdocs/08_capnweb_interface.md101 }>;COMMENT
LOWscript/run-fs-bench.sh1#!/usr/bin/env bashCOMMENT
LOWscript/npm-bench.sh1#!/usr/bin/env bashCOMMENT
LOWscript/npm-bench.sh21# REPS timed repetitions per scenario per target (default: 3)COMMENT
LOWscript/run-npm-bench.sh1#!/usr/bin/env bashCOMMENT
LOWscript/run-npm-bench.sh21# Add fuse-ignored:/tmp/workspace/ignored to measureCOMMENT
LOWscript/fs-bench.sh1#!/usr/bin/env bashCOMMENT
LOWexamples/vite-bundle/src/index.ts1// Example Vite-built Worker + Durable Object whose Workspace ships aCOMMENT
LOWexamples/tutorial/src/index.ts1// Recipe card tutorial. POST /prompt {"prompt":"spaghetti bolognese"}COMMENT
LOWexamples/container-legacy/src/index.ts1// Example Worker + container-enabled Durable Object that runs aCOMMENT
LOWexamples/container-legacy/src/index.ts41// Env is generated by `wrangler types` into worker-configuration.d.ts.COMMENT
LOWexamples/container-legacy/src/index.ts61// cast the way the mixin's own docs do.COMMENT
LOWexamples/container/src/index.ts1// Example Worker + container-enabled Durable Object that runs aCOMMENT
LOWexamples/container/src/index.ts41// container egress (ctx.exports.WorkspaceProxy below). The classCOMMENT
LOWexamples/container/src/index.ts61 // the `images` map in wrangler.jsonc. "app" is the default, soCOMMENT
LOWexamples/container/src/index.ts121}COMMENT
LOWexamples/worker-shell/src/index.ts1// Example Worker + Durable Object that runs a Workspace whoseCOMMENT
LOWexamples/worker-shell/src/index.ts41// and the bundler drops it. Pass the ones you want to theCOMMENT
LOWexamples/assets/src/index.ts1// Example Worker + Durable Object that turns a text prompt into anCOMMENT
LOWpackages/computerd/src/fuse/tracer.ts1// FUSE op tracer.COMMENT
LOWpackages/computerd/src/fuse/driver.ts301 size: number; // logical end-of-fileCOMMENT
LOWpackages/computerd/src/fuse/driver.ts421 let cap = Math.max(entry.buf.length * 2, 64 * 1024);COMMENT
LOWpackages/computerd/src/fuse/passthrough.ts1// Local-only passthrough for the FUSE op layer. SeeCOMMENT
LOWpackages/computerd/src/fuse/passthrough.ts621 }COMMENT
LOWpackages/computerd/src/fuse/ignore.ts1// Local-only paths of the mount, as glob patterns. SeeCOMMENT
LOWpackages/computerd/src/fuse/native-roots.ts1// Native roots: bind-mounts local-only directories onto the mount. SeeCOMMENT
LOWpackages/computerd/src/fuse/native-roots.ts21// removal-guard.c) detaches the mount first; this module hands it eachCOMMENT
LOWpackages/computerd/src/fuse/backend.ts1import { access as defaultAccess } from "node:fs/promises";COMMENT
LOWpackages/computerd/src/fuse/driver.test.ts761 const out = Buffer.alloc("second".length);COMMENT
LOWpackages/computerd/src/fuse/driver.test.ts801 const afterStat = after.result as { size: number; mtime: Date };COMMENT
LOWpackages/computerd/src/cli/computerd.ts461 socket.destroy();COMMENT
LOWpackages/computerd/src/cli/computerd.ts521 base?: unknown;COMMENT
LOWpackages/computerd/src/cli/computerd.ts721 // or macFUSE and falls back to the userspace shim. fuse / macfuseCOMMENT
LOWpackages/computerd/src/cli/computerd.ts921 kill: runner.kill.bind(runner),COMMENT
LOWpackages/computerd/src/cli/logger.ts1// Minimal logger primitives for computerd. Two responsibilities:COMMENT
LOWpackages/computerd/src/cli/logger.ts61 }COMMENT
LOWpackages/computerd/src/exec/schema.ts1// computerd-owned tables in the same SQLite DB as dofs.COMMENT
LOWpackages/computerd/src/exec/runner.fuse.test.ts1// Regression: computerd must not deadlock when shell.exec passes a cwdCOMMENT
LOWpackages/computerd/src/exec/runner.fuse.test.ts21// is responsive again.COMMENT
LOWpackages/computerd/src/exec/types.ts1// Wire-compatible shapes for the exec surface. Mirrors docs/08COMMENT
LOWpackages/computerd/src/exec/types.ts41 stdin?: Uint8Array;COMMENT
LOWpackages/computerd/src/exec/types.ts61 defaultTimeoutMs?: number;COMMENT
LOWpackages/computerd/src/exec/types.ts81 // caller may reach for, notably ${PIPESTATUS[@]}, is a parse error thereCOMMENT
LOWpackages/computerd/src/exec/log.ts1// Replay store for a single exec, backed by SQLite.COMMENT
LOWpackages/computerd/src/exec/env.ts1// Builds the environment a spawned command inherits from the daemon.COMMENT
LOWpackages/computerd/src/exec/runner.ts1// Process supervisor.COMMENT
LOWpackages/computerd/src/exec/runner.ts141 // server.COMMENT
LOWpackages/computerd/src/shim/shim.ts1// Userspace bidirectional sync between the @platformatic/vfs storeCOMMENT
LOWpackages/computerd/src/shim/shim.ts121COMMENT
LOWpackages/rpc/vitest.config.bench.ts1import { defineConfig } from "vitest/config";COMMENT
LOWpackages/rpc/tests/shell-and-composite.test.ts1// End-to-end tests for ShellRPC and the composite WorkspaceRPC.COMMENT
LOWpackages/rpc/src/interface.test.ts1// Wire error code coverage. Every WireErrorCode is supposed toCOMMENT
LOWpackages/rpc/src/debug.ts1// Stub leak tracking. Gated on the CAPNWEB_TRACK_STUBS env flag soCOMMENT
LOWpackages/rpc/src/sync-driver.ts61// Soft cap on entries processed per batch in pullOnce. Each batchCOMMENT
LOWpackages/rpc/src/sync-driver.ts101 remote: SyncRPC,COMMENT
LOWpackages/rpc/src/sync-driver.ts121 const fetchResult = await remote.fetchChanges({ after });COMMENT
LOWpackages/rpc/src/sync-driver.ts141 // had. Resetting and replaying cannot mend that, so we let theCOMMENT
LOWpackages/rpc/src/sync-driver.ts341 remote: SyncRPC,COMMENT
LOWpackages/rpc/src/sync-driver.ts381 writeFetchCursor(db, { rev: 0, path: null }, backend);COMMENT
252 more matches not shown…
Hyper-Verbose Identifiers51 hits · 51 pts
SeverityFileLineSnippetContext
LOW…ink-compare-runtimes/worker/computer-container-pool.ts69export function createWorkspaceWarmPoolRuntime(env: WorkspacePoolEnv): WarmPoolRuntime {CODE
LOW…ink-compare-runtimes/worker/computer-container-pool.ts99function getWorkspaceContainerHost(CODE
LOW…ink-compare-runtimes/worker/computer-container-pool.ts137export async function startWorkspaceContainerAndWait(CODE
LOW…hink-compare-runtimes/worker/sandbox-container-pool.ts16function createSandboxWarmPoolRuntime(env: SandboxPoolEnv): WarmPoolRuntime {CODE
LOW…/think-compare-runtimes/worker/wrangler-config.test.ts70function durableObjectBindingNames(config: WranglerConfig): string[] {CODE
LOW…ples/think-compare-runtimes/worker/container-config.ts20export function warmPoolRefreshIntervalMs(env: ContainerPoolConfigEnv): number {CODE
LOWexamples/think-compare-runtimes/worker/think/agents.ts458async function assertSandboxFixtureVisible(CODE
LOWexamples/think-compare-runtimes/worker/think/prompts.ts11export function createRuntimeSystemPrompt(runtime: RuntimeId): string {CODE
LOWexamples/think-compare-runtimes/worker/think/prompts.ts57export function createRuntimeToolDescriptions(runtime: RuntimeId): RuntimeToolDescriptions {CODE
LOW…s/think-compare-runtimes/worker/think/scripted-turn.ts11export async function runScriptedThinkToolSmoke({CODE
LOW…think-compare-runtimes/worker/think/remote-recorder.ts8export function createRemoteRunEventRecorder(sink: CompareRunEventSink): {CODE
LOW…compare-runtimes/worker/runtime/comparison-run.test.ts118function perRuntimeFixtureSetupEventCount(): number {CODE
LOW…les/think-compare-runtimes/worker/runtime/workspace.ts31export function createWorkspaceFixtureRuntime(workspace: WorkspaceFixtureTarget): FixtureRuntime {CODE
LOW…les/think-compare-runtimes/worker/runtime/workspace.ts53export function createWorkspaceCommandRunner(CODE
LOW…les/think-compare-runtimes/worker/runtime/workspace.ts105function workspaceBackendForCommand(command: string): "container" | "shell" {CODE
LOW…-compare-runtimes/worker/runtime/workspace-run.test.ts43function expectedFixtureEventSummaries(): Array<{CODE
LOW…mples/think-compare-runtimes/worker/runtime/sandbox.ts23export function createSandboxFixtureRuntime(sandbox: SandboxFixtureTarget): FixtureRuntime {CODE
LOW…mples/think-compare-runtimes/worker/runtime/sandbox.ts48export function createSandboxCommandRunner(sandbox: SandboxCommandTarget): RuntimeCommandRunner {CODE
LOW…mples/think-compare-runtimes/worker/runtime/adapter.ts42export function createWorkspaceRuntimeAdapter(CODE
LOW…mples/think-compare-runtimes/worker/runtime/adapter.ts66export function createSandboxRuntimeAdapter(options: SandboxRuntimeAdapterOptions): RuntimeAdapter {CODE
LOW…/think-compare-runtimes/worker/runtime/instrumented.ts11export function createInstrumentedFixtureRuntime({CODE
LOW…nk-compare-runtimes/worker/runtime/sandbox-run.test.ts43function expectedFixtureEventSummaries(): Array<{CODE
LOW…ples/think-compare-runtimes/src/runtime-panel-model.ts463function isAgentToolLifecycleEvent(event: RunEvent): boolean {CODE
LOW…ples/think-compare-runtimes/src/runtime-panel-model.ts537function appendConcreteUnpairedToolCalls(CODE
LOWexamples/rlm/worker/executor-tool.ts105export function extractGeneratedSourceBytes(toolCalls: unknown): number {CODE
LOWexamples/rlm/worker/structured-rlm.ts51export function structuredRlmSystemPrompt(fixture: BenchmarkFixture): string {CODE
LOWexamples/rlm/worker/oolong-synth.ts113export function parseOolongSynthRowsResponse(CODE
LOWexamples/rlm/worker/oolong-synth.ts293function hashOolongSynthFixtureSource(fixture: OolongSynthFixture): string {CODE
LOWexamples/rlm/src/App.tsx714function getOrCreateSessionId(): string {CODE
LOWpackages/computerd/src/fuse/ignore-config.ts175function inactiveNativeRootsReason(CODE
LOWpackages/computerd/src/fuse/ignore-config.ts205function inactivePassthroughReason(CODE
LOWpackages/computerd/src/fuse/vfs.ts25function ensureVirtualProviderPrototype(): void {CODE
LOWpackages/computerd/src/fuse/vfs.ts83export async function createNodeVirtualFileSystem(CODE
LOWpackages/computer/src/transport-failure.ts90export function isWorkspaceTransportFailure(error: unknown): boolean {CODE
LOWpackages/computer/src/transport-failure.ts123export function isWorkspacePreDispatchTransportFailure(error: unknown): boolean {CODE
LOWpackages/computer/src/workspace.ts1380function createDisabledArtifactsClient(): ArtifactClient {CODE
LOWpackages/computer/src/tools/common/fs/edit-diff.ts44function normalizeNfkcForFuzzyMatch(text: string): string {CODE
LOWpackages/computer/src/tools/common/fs/edit-diff.ts432export function applyEditsToNormalizedContent(CODE
LOW…r/src/backends/container-legacy/container-lifecycle.ts126export async function destroyContainerExpectingExit(CODE
LOW…r/src/backends/container-legacy/container-lifecycle.ts150export function resetContainerLifecycleForTests(ctx: DurableObjectState): void {CODE
LOW…computer/src/backends/container/container-lifecycle.ts132export async function destroyContainerExpectingExit(CODE
LOW…computer/src/backends/container/container-lifecycle.ts156export function resetContainerLifecycleForTests(ctx: DurableObjectState): void {CODE
LOWpackages/computer/src/git/adapter.ts107export async function workspaceIsomorphicGitClient(CODE
LOWpackages/dofs/src/sync/apply.ts105function removeReplaceableFinalEntry(CODE
LOWpackages/dofs/src/sync/apply.ts744function settleDeferredDirectories(CODE
LOWpackages/dofs/src/fs/mount-guard.ts28export function invalidateReadOnlyMountCache(db: Database): void {CODE
LOWpackages/dofs/src/fs/writeBuffer.ts80export function getPendingWriteBufferByPath(CODE
LOWpackages/dofs/src/fs/writeBuffer.ts91export function getPendingWriteBufferByParent(CODE
LOWpackages/dofs/src/fs/writeFile.ts764export function openWriteBufferForCreateSync(CODE
LOWpackages/dofs/src/fs/rename.ts170function assertCompatibleOverwrite(CODE
LOWpackages/dofs/src/fs/resolve.ts113export function resolveInodeWithoutSymlinks(db: Database, path: string): ResolvedInode | null {CODE
AI Slop Vocabulary11 hits · 33 pts
SeverityFileLineSnippetContext
MEDIUMscript/run-fs-tests.sh2# Non-interactive harness for ./script/shell. Mount the computerd binary, fs-tests,COMMENT
MEDIUMscript/run-fs-bench.sh2# Non-interactive harness for ./script/shell that runs fs-bench.COMMENT
MEDIUMscript/fs-tests.sh2# Filesystem conformance test harness for the computerd FUSE mount.COMMENT
MEDIUMpackages/computer/test-harness/run-computerd.sh4# Used by the vitest harness to give TestBackend aCOMMENT
MEDIUMpackages/computer/test-harness/run-computerd.sh5# real computerd to talk to. The harness sets COMPUTERD_HARNESS_URL fromCOMMENT
MEDIUMpackages/computer/test-harness/run-computerd.sh17# stderr for the harness to capture.COMMENT
MEDIUMpackages/computer/test-harness/run-harness.sh2# Wrapper that runs the docker harness vitest project end-to-end.COMMENT
MEDIUMpackages/computer/test-harness/run-harness.sh7# - Runs vitest against test-harness/vitest config.COMMENT
MEDIUMpackages/computer/test-harness/run-harness.sh22# Skip when docker is unavailable. The harness vitest projectCOMMENT
MEDIUMpackages/computer/test-harness/run-harness.sh23# also skips in that case; this keeps `npm run test:harness`COMMENT
MEDIUM.github/workflows/ci.yml106 # The computer harness and computerd's real-FUSE regression bothCOMMENT
Structural Annotation Overuse9 hits · 17 pts
SeverityFileLineSnippetContext
LOW.agents/skills/test-driven-development/SKILL.md33### Step 1: RED — Write a Failing TestCOMMENT
LOW.agents/skills/test-driven-development/SKILL.md51### Step 2: GREEN — Make It PassCOMMENT
LOW.agents/skills/test-driven-development/SKILL.md69### Step 3: REFACTOR — Clean UpCOMMENT
LOW⚡.agents/skills/test-driven-development/SKILL.md108// Step 1: Write the reproduction test (it should FAIL)COMMENT
LOW⚡.agents/skills/test-driven-development/SKILL.md117// Step 2: Fix the bugCOMMENT
LOW⚡.agents/skills/test-driven-development/SKILL.md125// Step 3: Test passes → bug fixed, regression guardedCOMMENT
LOWpackages/computer/src/artifacts/cli.ts158 // Step 1: create the repo, or adopt an existing one under --force.COMMENT
LOW⚡packages/computer/src/artifacts/cli.ts178 // Step 2: mint the token and compose the credentialed remote.COMMENT
LOW⚡packages/computer/src/artifacts/cli.ts188 // Step 3: register the git remote, if a seam was wired.COMMENT
Decorative Section Separators5 hits · 15 pts
SeverityFileLineSnippetContext
MEDIUMexamples/container-legacy/src/index.ts18// └─── capnweb session ◀─────────────┘COMMENT
MEDIUMexamples/container/src/index.ts26// └─── capnweb session ◀─────────────┘COMMENT
MEDIUMpackages/computer/tests/worker-backend.test.ts10// ├─────────────────────►│ │COMMENT
MEDIUMpackages/computer/tests/worker-backend.test.ts12// │ ├─────────────────────────►│COMMENT
MEDIUMpackages/computer/tests/worker-backend.test.ts24// │ │ │◄─────┘COMMENT
Modern AI Meta-Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMpackages/computerd/src/fuse/native-roots.ts307 // A synced scaffold can be a symlink after restore. Never scanCOMMENT
MEDIUMpackages/dofs/src/provider.fd.test.ts3// the scaffold test file.COMMENT
Verbosity Indicators3 hits · 6 pts
SeverityFileLineSnippetContext
LOWpackages/computer/src/artifacts/cli.ts158 // Step 1: create the repo, or adopt an existing one under --force.COMMENT
LOW⚡packages/computer/src/artifacts/cli.ts178 // Step 2: mint the token and compose the credentialed remote.COMMENT
LOW⚡packages/computer/src/artifacts/cli.ts188 // Step 3: register the git remote, if a seam was wired.COMMENT
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWscript/run-npm-bench.sh6# Usage:COMMENT