AI Slop Code RIsk Monitor

dwgx/WindsurfAPI

Turn Windsurf / Devin Desktop's 100+ AI models (Claude, GPT, Gemini, DeepSeek, Kimi, GLM, SWE) into OpenAI-, Anthropic- & Gemini-compatible APIs. Zero-dependency self-hosted reverse proxy for Claude Code, Cline & Cursor. 把 Windsurf/Devin 云端 100+ 模型变成三套兼容 API。

8.7 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for dwgx/WindsurfAPI, a JavaScript project with 3,079 GitHub stars. SynthScan examined 198,488 lines of code across 839 source files, recording 1194 pattern matches distributed across 12 syntactic categories. The legacy adjusted pattern signal is 8.7 (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.

8.7
Adjusted Signal
8.7
Raw Pattern Score
100%
Time Factor
2026-10-11
Last Push
3.1K
Stars
JavaScript
Language
198.5K
Lines of Code
839
Files
1.2K
Pattern Hits
2026-10-12
Scan Date
0.01
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 19.2/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 2.5/100 · LOW

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

Agent Over-Engineering Ratio 22.2/100 · LOW

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

PR Review Velocity Impact 36.7/100 · MEDIUM

Which changes need focused human review? 1194 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 5MEDIUM 298LOW 891

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 1194 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 Separators254 hits · 778 pts
SeverityFileLineSnippetContext
MEDIUMinstall-ls.sh70# ─── Platform detection ────────────────────────────────COMMENT
MEDIUMtest/devin-connect.test.js1628 // ── Fault tolerance: response-side ChatToolCall structure (NW1 §2) ──────────COMMENT
MEDIUMtest/devin-connect.test.js2246 // ── Top-level combinator stripping (P4, ported from kiro.rs) ──────────────COMMENT
MEDIUMtest/tool-emulation.test.js1158// structured path ────────────────────────────────────────────────────────────COMMENT
MEDIUMtest/tool-emulation.test.js1225// ─── The wire the upstream actually receives ─────────────────────────────────COMMENT
MEDIUMtest/zero-content-stream-death.test.js35// ─── helpers ────────────────────────────────────────────────────COMMENT
MEDIUMtest/zero-content-stream-death.test.js133// ─── Anthropic egress ───────────────────────────────────────────COMMENT
MEDIUMtest/zero-content-stream-death.test.js196// ─── Gemini egress ──────────────────────────────────────────────COMMENT
MEDIUMtest/zero-content-stream-death.test.js250// ─── three-way parity ───────────────────────────────────────────COMMENT
MEDIUMtest/gemini.test.js12// ─── helpers ────────────────────────────────────────────────────COMMENT
MEDIUMtest/gemini.test.js49// ─── request translation ────────────────────────────────────────COMMENT
MEDIUMtest/gemini.test.js208// ─── non-stream response translation ────────────────────────────COMMENT
MEDIUMtest/gemini.test.js257// ─── error mapping (transient-first) ────────────────────────────COMMENT
MEDIUMtest/gemini.test.js294// ─── path parsing ───────────────────────────────────────────────COMMENT
MEDIUMtest/gemini.test.js310// ─── main entry: non-stream ─────────────────────────────────────COMMENT
MEDIUMtest/gemini.test.js349// ─── main entry: streaming ──────────────────────────────────────COMMENT
MEDIUMtest/gemini.test.js561// ─── translator direct unit (array mode empties) ────────────────COMMENT
MEDIUM⚡test/gemini.test.js573// ════════════════════════════════════════════════════════════════COMMENT
MEDIUM⚡test/gemini.test.js575// ════════════════════════════════════════════════════════════════COMMENT
MEDIUM⚡test/gemini.test.js577// ─── request translation: remaining part / config shapes ────────COMMENT
MEDIUMtest/gemini.test.js677// ─── non-stream response: finish + usage edge cases ─────────────COMMENT
MEDIUMtest/gemini.test.js797// ─── path parsing: edge cases ───────────────────────────────────COMMENT
MEDIUMtest/connect.test.js9// ─── CONN-1: decompression output must be bounded ─────────────────────────COMMENT
MEDIUMtest/tool-preamble-budget.test.js125// ─── nativeStructured (hybrid mode) regression tests ─────────────────────────COMMENT
MEDIUMtest/tool-preamble-strip-equivalence.test.js41// ─── shape battery ─────────────────────────────────────────────────────────COMMENT
MEDIUMtest/tool-preamble-strip-equivalence.test.js275// ─── golden ladder results, captured from master 4cbd029 ───────────────────COMMENT
MEDIUMtest/tool-preamble-strip-equivalence.test.js412// ─── the bounded walk must not be observable at all ────────────────────────COMMENT
MEDIUMtest/tool-preamble-strip-equivalence.test.js584// ─── the optimization must still be present (revert/erode detection) ───────COMMENT
MEDIUMtest/cred-store-lock-reclaim.test.js88// ─── The sentinel path ─────────────────────────────────────────────────────COMMENT
MEDIUMtest/cred-store-lock-reclaim.test.js115// ─── Pre-v2 directories: migrated in place, or refused ─────────────────────COMMENT
MEDIUMtest/cred-store-lock-reclaim.test.js295// ─── Claim instances ───────────────────────────────────────────────────────COMMENT
MEDIUMtest/cred-store-lock-reclaim.test.js327// ─── The F1 interleaving and the publish fences ────────────────────────────COMMENT
MEDIUMtest/cred-store-lock-reclaim.test.js406// ─── Failure injection: nothing fences, the original error survives ────────COMMENT
MEDIUMtest/cred-store-lock-reclaim.test.js475// ─── Real processes, real read-modify-write ────────────────────────────────COMMENT
MEDIUMtest/cascade-think-reroute.test.js330 // ── emulateTools + failure: the accThinking hole ──────────────────────────COMMENT
MEDIUMtest/default-on-switch-registry.test.js44// ── the ledger ──────────────────────────────────────────────────────────────COMMENT
MEDIUMtest/connect-error-blame.test.js99// ─── 结构守卫 ───────────────────────────────────────────────COMMENT
MEDIUMtest/cascade-native-bridge.test.js807// ─── v2.0.66 (#115) — partition mode + codex CLI mapping ──────────────COMMENT
MEDIUMtest/cascade-native-bridge.test.js807// ─── v2.0.66 (#115) — partition mode + codex CLI mapping ──────────────COMMENT
MEDIUMtest/dashboard-error-envelope.test.js51// ── source extraction ───────────────────────────────────────────────────────COMMENT
MEDIUMtest/dashboard-error-envelope.test.js121// ── DOM / App stubs ─────────────────────────────────────────────────────────COMMENT
MEDIUMtest/dashboard-error-envelope.test.js188// ── 1. json() stamps non-2xx envelopes only ─────────────────────────────────COMMENT
MEDIUMtest/dashboard-error-envelope.test.js221// ── 2. the property survives the real handler ───────────────────────────────COMMENT
MEDIUMtest/dashboard-error-envelope.test.js276// ── 3. both skins synthesize the envelope for non-2xx ───────────────────────COMMENT
MEDIUMtest/dashboard-error-envelope.test.js327// ── 4. loaders keep the last good panel when the read fails ─────────────────COMMENT
MEDIUMtest/caller-environment.test.js138 // ───── #100 follow-up: bare-path fallback when no <env> block ─────COMMENT
MEDIUMtest/caller-environment.test.js138 // ───── #100 follow-up: bare-path fallback when no <env> block ─────COMMENT
MEDIUMtest/caller-environment.test.js219 // ───── #100 follow-up #2 (yunduobaba): Claude Code <system-reminder> wrappers ─────COMMENT
MEDIUMtest/caller-environment.test.js219 // ───── #100 follow-up #2 (yunduobaba): Claude Code <system-reminder> wrappers ─────COMMENT
MEDIUMtest/caller-environment.test.js270 // ───── #106 / #107 (zhangzhang-bit): adjective-prefixed cwd + bullet fallback ─────COMMENT
MEDIUMtest/caller-environment.test.js270 // ───── #106 / #107 (zhangzhang-bit): adjective-prefixed cwd + bullet fallback ─────COMMENT
MEDIUMtest/account-dirty-retry.test.js43// ─── fs boundary: real functions, wrapped, scoped to this test's paths ───────COMMENT
MEDIUMtest/account-dirty-retry.test.js96// ─── observation helpers (all read the real on-disk file) ───────────────────COMMENT
MEDIUMexamples/proxy-user-inject.js109// ═══════════════ CONFIGURE THESE ═══════════════COMMENT
MEDIUMexamples/proxy-user-inject.js115// ════════════════════════════════════════════════COMMENT
MEDIUMscripts/cli-agent-sim.js140// ── Test Scenarios ──────────────────────────────────COMMENT
MEDIUMscripts/cli-agent-sim.js300// ── Main ──────────────────────────────────COMMENT
MEDIUM⚡src/client.js345// ── Fake workspace scaffold ────────────────────────────────COMMENT
MEDIUMsrc/client.js434// ─── WindsurfClient ────────────────────────────────────────COMMENT
MEDIUMsrc/client.js448 // ─── Short-lived user JWT (env-gated) ────────────────────COMMENT
194 more matches not shown…
Over-Commented Block570 hits · 470 pts
SeverityFileLineSnippetContext
LOWREADME.en.md181COMMENT
LOWREADME.en.md201# Windows: %APPDATA%\Windsurf\bin\language_server_windows_x64.exeCOMMENT
LOWREADME.md221# 下载链:WindsurfAPI release → 公开 LS mirrorCOMMENT
LOWREADME.md241# macOS: "$HOME/Library/Application Support/Windsurf/resources/app/extensions/windsurf/bin/language_server_macos_armCOMMENT
LOWupdate.sh381echo "=== [1/5] Pull latest ==="COMMENT
LOWinstall-ls.sh1#!/usr/bin/env bashCOMMENT
LOWdocker-compose.yml21 # required:false so a fresh clone (which ships only .env.example, neverCOMMENT
LOWdocker-compose.yml41 # one global bucket. Exactly one trusted hop here.COMMENT
LOWdocker-compose.yml61 volumes:COMMENT
LOWtest/mutate-verify-harness.test.js1// The mutation harness's own verdict logic, which nothing covered until now.COMMENT
LOWtest/mutate-verify-harness.test.js321// a node-22 run reported `pass=99 fail=0 cancelled=95` (the event loop drained before theCOMMENT
LOWtest/mutate-verify-harness.test.js441// with "baseline is not green" while the suite was in fact perfectly green.COMMENT
LOWtest/model-access-backend-coverage.test.js1// Model-access policy must gate EVERY backend, not just the one it happens toCOMMENT
LOWtest/models-live-catalog.test.js1// audit 2026-07-12 (v3.2.4 regression fix): after v3.2.3 made resolveConnectSelectorCOMMENT
LOWtest/sticky-exclude-keys.test.js1// Sticky fast path vs. excludeKeys (failover regression).COMMENT
LOWtest/route-error-parity-behaviour.test.js1// The route-parity guard checks SOURCE SHAPE, and shape is escapable.COMMENT
LOWtest/neutralize-rewrite-visibility.test.js1// Item 14 — the neutralize pass silently rewrote caller content, and the guardCOMMENT
LOWtest/neutralize-rewrite-visibility.test.js21//COMMENT
LOWtest/neutralize-rewrite-visibility.test.js121 // several times is one event, not two, and reporting it twice would make theCOMMENT
LOWtest/dashboard-escape-callsites.test.js1// The escape helpers were tested; their CALL SITES were not.COMMENT
LOWtest/v2088-audit-fixes.test.js1// v2.0.88 — strict audit follow-up: 4 HIGH + 3 MED/LOW fromCOMMENT
LOWtest/terminal-event-guard.test.js1// After a terminal event, a stream translator must stop writing.COMMENT
LOWtest/v2078-audit-fixes.test.js1// v2.0.78 — strict audit follow-up (4 HIGH).COMMENT
LOWtest/prompt-cache-options.test.js1// Explicit prompt caching — GetChatMessageRequest #13 system_prompt_cache_options.COMMENT
LOWtest/sticky-no-fallback-wedge.test.js1// stickyNoFallback could wedge a caller permanently.COMMENT
LOWtest/response-store-byte-budget.test.js1// Response store: the byte budget.COMMENT
LOWtest/response-store-byte-budget.test.js161 // loop. Under any byte-bound workload the writer's entry count stays far belowCOMMENT
LOWtest/scatter-attribution.test.js1// Why an UNBOUND caller's sequential turns move between accounts.COMMENT
LOWtest/scatter-attribution.test.js21// ------------------------------------------------------------------COMMENT
LOWtest/scatter-attribution.test.js41// that account's ratio, so it sorts last next turn). LRU alone yields one swap andCOMMENT
LOWtest/retry-rescue-budget-split.test.js1// #240 — retry-on-empty and the thinking-only rescue are two speculative arms with twoCOMMENT
LOWtest/retry-rescue-budget-split.test.js181 // What follows pins the operator-visible NUMBER, and only that. Be precise about theCOMMENT
LOWtest/image-jpeg-deep-sof.test.js1// E3-SOF: a JPEG whose SOF sits beyond the 256 KiB header read must still obeyCOMMENT
LOWtest/v2079-audit-followup.test.js1// v2.0.79 — strict audit follow-up (3 MED + 2 LOW + 1 close-out).COMMENT
LOWtest/sticky-tenant-quota.test.js1// Sticky binding table: per-tenant fair share + LRU ordering.COMMENT
LOWtest/rate-limit.test.js121 assert.equal(result.body.error.type, 'rate_limit_exceeded');COMMENT
LOWtest/rate-limit.test.js141 // Tolerance, not equality. Every candidate feeding this branch is wall-clockCOMMENT
LOWtest/tool-emulation.test.js1161//COMMENT
LOWtest/xff-client-ip-consistency.test.js1// audit S4 — the "trusted client IP" (X-Forwarded-For hop counting) logic usedCOMMENT
LOWtest/responses-stream-done-sentinel.test.js1// The /v1/responses SSE stream must close with the `data: [DONE]` sentinel.COMMENT
LOWtest/retry-after-route-parity.test.js1// `Retry-After` must survive every egress route, on the NON-STREAM branch too.COMMENT
LOWtest/zero-content-stream-death.test.js1// A stream that died having produced ZERO content must not be reported as aCOMMENT
LOWtest/probe-lock-per-account.test.js1// Probe lock per-account de-duplication.COMMENT
LOWtest/web-search-exposure.test.js1// Web search exposure — POST /dashboard/api/accounts/:id/web-search.COMMENT
LOWtest/responses-post-tool-text-item.test.js1// Item 16 — text arriving AFTER a tool call was merged back into the FIRSTCOMMENT
LOWtest/completion-config-max-tokens-tag.test.js1import { describe, it } from 'node:test';COMMENT
LOWtest/models-injection-eviction.test.js1// A deleted account's models stayed advertised forever.COMMENT
LOWtest/proto-codec-hardening.test.js1// Protobuf codec hardening — src/proto.js.COMMENT
LOWtest/stream-cache-policy.test.js1// Regression for issues #82 and #83 — `cachePolicy is not defined`.COMMENT
LOWtest/responses-retrieve-contract.test.js1// What GET /v1/responses/{id} is allowed to say.COMMENT
LOWtest/responses-retrieve-contract.test.js121 // and must not be logged. https-proxy.js:20 prints the full URL verbatim, so aCOMMENT
LOWtest/reasoning-dedup.test.js1// Unit tests for the incremental reasoning/content duplicate suppression moduleCOMMENT
LOWtest/reasoning-dedup.test.js181 //COMMENT
LOWtest/reasoning-dedup.test.js261 // `.env` with a bare `WINDSURFAPI_REASONING_DEDUP=` must not silentlyCOMMENT
LOWtest/wire-provenance.js1// WHY THIS HELPER EXISTS. test/wire-byte-identity.test.js compares the protobuf requestCOMMENT
LOWtest/response-store-entry-cap-array.test.js1// The per-entry byte ceiling could not see ARRAY content — which is the defaultCOMMENT
LOWtest/response-store-entry-cap-array.test.js141 assert.ok(store.getResponseStoreStats().bytes <= MAX_ENTRY_BYTES);COMMENT
LOWtest/test-network-guard.test.js1// D-TEST-EGRESS: the default test preload must deny unmocked external requests.COMMENT
LOWtest/s1-p1-cache-key-error-path.test.js1// WHY THIS FILE EXISTS. Gating the cache key on an actual consumer changes oneCOMMENT
LOWtest/drought-connect-namespace.test.js1// #234 — the drought gate must judge Connect selectors in the Connect namespace.COMMENT
510 more matches not shown…
Hyper-Verbose Identifiers250 hits · 221 pts
SeverityFileLineSnippetContext
LOWtest/self-update-gate.test.js193function assertSafeDashboardFixture(fixture) {CODE
LOWtest/https-proxy-policy.test.js31const fakeCertReadFileSync = function readFileSyncWithFakeCerts(path, ...rest) {CODE
LOWtest/s1-p2-token-pass.test.js40const MESSAGES_014204F_FUNCTIONS = "function cacheToolTokens(t) {\n if (!t || typeof t !== 'object') return 0;\n let nCODE
LOWtest/devin-connect-login-host-fallback.test.js176 const idx = LOGIN_SRC.indexOf('async function windsurfLoginViaDevinHost(');CODE
LOWtest/tool-call-from-thinking.test.js18function liftToolCallsFromThinking(accThinking, declaredTools, { modelKey = 'claude-opus-4-8-xhigh', provider = 'anthropCODE
LOWtest/client-panel-retry.test.js113function pendingReadUrlStepResponse() {CODE
LOWtest/client-panel-retry.test.js131function readUrlContentDoneStepResponse() {CODE
LOWtest/client-panel-retry.test.js151function readUrlContentDoneWithEchoStepResponse() {CODE
LOWtest/client-panel-retry.test.js212async function countPendingReadUrlApprovals({ nativeAllowlist = ['read_url_content'] } = {}) {CODE
LOWtest/ota-fixture-containment-static.test.js43function assertContainmentPredicate(source, label) {CODE
LOWtest/ota-fixture-containment-static.test.js62function assertTemporaryOriginSetup(source, executor, prefix, label) {CODE
LOWtest/ota-fixture-containment-static.test.js73function assertEveryPushHasExplicitTemporaryTarget(source, executor, minimum, label) {CODE
LOWtest/ota-fixture-containment-static.test.js168 const guard = section(DASHBOARD, 'function assertSafeDashboardFixture(fixture) {', '\n}\n\nfunction makeDashboardTagCODE
LOWtest/ota-fixture-containment-static.test.js187 const guard = section(DASHBOARD, 'function assertSafeDashboardFixture(fixture) {', '\n}\n\nfunction makeDashboardTagCODE
LOWtest/default-on-switch-registry.test.js230function discoverDefaultOnSwitches() {CODE
LOWtest/s4-r4.test.js26 function finishPartialStreamAfterError({ id, created, model, send, res, internalRoute }) {CODE
LOWtest/connect-dimension-behaviour.test.js74function assertNotNormallySelected(picked, what) {CODE
LOWtest/mutations/tool-choice-passthrough.json10 "anchor": "export function isToolChoicePassthroughEnabled(env = process.env) {\n return String(env.DEVIN_CONNECT_CODE
LOWtest/mutations/tool-choice-passthrough.json11 "replacement": "export function isToolChoicePassthroughEnabled(env = process.env) {\n return !!String(env.DEVIN_CCODE
LOWtest/mutations/prompt-cache-options.json16 "anchor": "export function buildSystemPromptCacheOptions(systemPrompt, env = process.env) {\n if (!isPromptCacheECODE
LOWtest/mutations/prompt-cache-options.json17 "replacement": "export function buildSystemPromptCacheOptions(systemPrompt, env = process.env) {\n if (false) retCODE
LOWtest/_research/responses-cache-hit-seq.test.js108 return async function handleChatCompletionsMock(body) {CODE
LOWdocs/releases/RELEASE_NOTES_2.0.36.md41-export function shouldFallbackThinkingToText({ routingModelKey, body, ... }) {CODE
LOWdocs/releases/RELEASE_NOTES_2.0.36.md42+export function shouldFallbackThinkingToText({ routingModelKey, wantThinking, ... }) {CODE
LOWdocs/releases/RELEASE_NOTES_2.0.71.md15export function detectFabricatedToolResult(text, { lastUserText }) {CODE
LOWsrc/client.js62function markCascadeTransportError(err) {CODE
LOWsrc/client.js70function resetCascadeTransportState(port) {CODE
LOWsrc/client.js104export function isReadUrlAutoApproveAllowed(url, origin) {CODE
LOWsrc/client.js169function neutralizeIdentityForCascade(sysText) {CODE
LOWsrc/client.js192function extractCompactSystemFacts(sysText) {CODE
LOWsrc/client.js213export function compactSystemPromptForCascade(sysText) {CODE
LOWsrc/client.js304function isCompletedReadUrlNativeResult(tc) {CODE
LOWsrc/devin-acp.js254function collectAcpTextFromNotification(obj, buffers, onChunk) {CODE
LOWsrc/pdf.js160function skipWhitespaceAndComments(buf, from, limit) {CODE
LOWsrc/pdf.js200function onlyWhitespaceAndComments(buf, from, to) {CODE
LOWsrc/special-agent.js784export async function handleSpecialAgentChatCompletion(body, route, deps = {}) {CODE
LOWsrc/devin-connect-catalog.js528export function decodeAssignModelResponse(raw, tags = ASSIGN_TAGS_DEFAULT) {CODE
LOWsrc/server.js175function nativeBridgeCallerKeyForRequest(req, token, body, callerKey = '') {CODE
LOWsrc/server.js493 async function parseAndValidateAccountProxy(proxyStr) {CODE
LOWsrc/conversation-pool.js123function normalizeSystemPromptForHash(s) {CODE
LOWsrc/conversation-pool.js287function projectAssistantToolCalls(m) {CODE
LOWsrc/auth.js85function shouldSkipBusyBackgroundMaintenance() {CODE
LOWsrc/auth.js236export function setDroughtRestrictResolver(fn) {CODE
LOWsrc/auth.js283export function isConnectSelectorBlockedByDrought(selector) {CODE
LOWsrc/auth.js300export function getCurrentlyFreeConnectSelectors() {CODE
LOWsrc/auth.js329export function isConnectSelectorCurrentlyFree(selector) {CODE
LOWsrc/auth.js899function scheduleModelCatalogRetry(accountId, apiKey) {CODE
LOWsrc/auth.js946function activeModelCatalogAccounts() {CODE
LOWsrc/auth.js950function reconcileModelCatalogAccounts() {CODE
LOWsrc/auth.js988function invalidateModelCatalogForAccount(accountId) {CODE
LOWsrc/auth.js1022function publishConnectCatalogUnion(activeAccounts = activeModelCatalogAccounts()) {CODE
LOWsrc/auth.js1059function connectCatalogRetryJitterBasisPoints(accountId, apiKey) {CODE
LOWsrc/auth.js1078function connectCatalogRetryDelayMs(failureCount, accountId, apiKey) {CODE
LOWsrc/auth.js1090function recordConnectCatalogRetryFailure(accountId, apiKey) {CODE
LOWsrc/auth.js1102function isCurrentConnectCatalogAttempt(accountId, apiKey, attempt) {CODE
LOWsrc/auth.js1185function forgetConnectCatalogForAccount(accountId) {CODE
LOWsrc/auth.js1197async function fetchAndMergeModelCatalog(accountId, apiKey) {CODE
LOWsrc/auth.js1573export function isConnectSelectorAllowedForAccount(account, selector) {CODE
LOWsrc/auth.js1603export function hasConnectEntitledAccount(selector) {CODE
LOWsrc/auth.js1608export function getAvailableModelsForAccount(account) {CODE
190 more matches not shown…
Modern AI Meta-Vocabulary34 hits · 109 pts
SeverityFileLineSnippetContext
MEDIUMdocker-compose.yml32 # protocol reliably in agentic clients (Claude Code/Cline/Codex). With itCOMMENT
MEDIUMtest/completion-config-max-tokens-tag.test.js71 // Pre-fix, #2 was always the context window, so the encoded max_tokens wasCOMMENT
MEDIUMtest/sticky-transient-blip-tradeoff.test.js23// caller returns to the account holding the longest prefix. RPM windows are 60s and agenticCOMMENT
MEDIUMtest/workspace-stub-108.test.js12// register (closes a fingerprint gap). Old scaffold seeded aCOMMENT
MEDIUMtest/workspace-stub-108.test.js31// - client.js: rebrand the scaffold so every file is unmistakably aCOMMENT
MEDIUMtest/workspace-stub-108.test.js117 // The "legacy-scaffold migration is wired up" test that stood here asserted theCOMMENT
MEDIUMtest/workspace-stub-108.test.js122 // test/workspace-scaffold-ownership.test.js, which calls the real helper.COMMENT
MEDIUMtest/workspace-scaffold-ownership.test.js1// GPT-01 (independent audit, 2026-09-22): the workspace scaffold migration destroyedCOMMENT
MEDIUMtest/workspace-scaffold-ownership.test.js97 // keep the directory byte-identical. Without it the scaffold seeds three files intoCOMMENT
MEDIUMtest/mutations/completion-config-max-tokens-tag.json8 "name": "the original swap restored — #2 carries the context window, so max_tokens is effectively uncapped",CODE
MEDIUMdocs/HISTORY-LEDGER-PRS.md72| 242 | warelik | 08-05→08-09 | DEVIN_CONNECT 会话保真,两个 opt-in 特性(DEVIN_CONNECT_SESSION_REUSE 主门控):① 稳定 ModelConfig(#15.1 CODE
MEDIUMdocs/HISTORY-LEDGER-PRS.md142**#242(S)—— 会话保真地基**:DEVIN_CONNECT_SESSION_REUSE 主门控下两个 opt-in 特性:① 稳定 ModelConfig(#15.1 会话内恒定、#15.2 单调递增,对齐 devin.exe,不CODE
MEDIUMdocs/HISTORY-LEDGER-2026-05-bridge.md11- 素材缺 **4 条 5-01 的 commit**(在切片起点之前、v2.0.45~48 时代):`b4a9ebf`(v2.0.45 #106/#107 Claude Code 2.x cwd 提取)、`222526b`(v2.0.46CODE
MEDIUMdocs/HISTORY-LEDGER.md159**关键修复**:`b6e7dc9` 四出口 11 缺陷、`6d1f087` response-store 四条「注释对、实现只盖一个特例」、`129682f` intent-extractor 从反例说明伪造工具调用、`7bca624` CODE
MEDIUMdocs/HISTORY-LEDGER.md212| #238→#241(PR 链) | swe-1-7 agentic 死循环 → rescue nudge 演化 | 793ed79 → 0f5a57b + digest 钳三连(#238/#241 是 warelik 的 PR,#239CODE
MEDIUM⚡docs/HISTORY-LEDGER-VIZ.html766const D_GIT = {"t0":1775727718,"t1":1789432557,"anchors":[{"h":"395311f2","t":1775727718,"a":"dwgx","s":"Initial commit:CODE
MEDIUM⚡docs/HISTORY-LEDGER-VIZ.html766const D_GIT = {"t0":1775727718,"t1":1789432557,"anchors":[{"h":"395311f2","t":1775727718,"a":"dwgx","s":"Initial commit:CODE
MEDIUMdocs/releases/RELEASE_NOTES_2.0.32.md77### Multi-stage codex orchestration (本次)COMMENT
MEDIUMdocs/releases/RELEASE_NOTES_2.0.105.md1## v2.0.105 - native bridge real-smoke guardrailsCOMMENT
MEDIUMdocs/releases/RELEASE_NOTES_2.0.33.md86### Multi-stage codex orchestration 流程COMMENT
MEDIUMdocs/releases/RELEASE_NOTES_3.9.7.md97### swe-1-7 在 agentic 循环里停滞:声明了工具意图却不发出 tool call(#238,@warelik)COMMENT
MEDIUMdocs/releases/RELEASE_NOTES_2.0.138.md1# v2.0.138 - release gate, dashboard pagination, and memory guardrailsCOMMENT
MEDIUMdocs/dashboard/data/contributors.json353 "summary": "两个耦合的根因修复,把 native tool-def 路从\"一批工具被上游拒\"救回来。① MCP-gate:上游 server.codeium.com 会对工具描述做指纹匹配(#10 顶层 descCODE
MEDIUM⚡src/client.js345// ── Fake workspace scaffold ────────────────────────────────COMMENT
MEDIUM⚡src/client.js351// gap. The scaffold is created once per account and persists.COMMENT
MEDIUM⚡src/client.js354// Detects an old (pre-#108) scaffold that named the placeholderCOMMENT
MEDIUM⚡src/client.js354// Detects an old (pre-#108) scaffold that named the placeholderCOMMENT
MEDIUM⚡src/client.js365// test/workspace-scaffold-ownership.test.js and docs/releases/RELEASE_NOTES_3.9.38.md.COMMENT
MEDIUM⚡src/client.js375 // What used to be here was a "legacy scaffold migration": any package.json whoseCOMMENT
MEDIUM⚡src/client.js379 // path — or our own old scaffold after the user edited one file — lost data.COMMENT
MEDIUM⚡src/client.js408// #108: prior scaffold seeded a `package.json` named "my-project" plus aCOMMENT
MEDIUM⚡src/client.js408// #108: prior scaffold seeded a `package.json` named "my-project" plus aCOMMENT
MEDIUM⚡src/client.js413// Node template the user has never seen. Keep the scaffold real enoughCOMMENT
MEDIUMsrc/dashboard/data/contributors.json353 "summary": "两个耦合的根因修复,把 native tool-def 路从\"一批工具被上游拒\"救回来。① MCP-gate:上游 server.codeium.com 会对工具描述做指纹匹配(#10 顶层 descCODE
Fake / Example Data56 hits · 72 pts
SeverityFileLineSnippetContext
LOWtest/v2078-audit-fixes.test.js41 assert.ok(!out.includes('foo@bar.com'));CODE
LOWtest/retry-after-route-parity.test.js90 const key = `fake-key-${LABEL_PREFIX}${label}`;CODE
LOWtest/request-id-body.test.js125 const acct = addAccountByKey('fake-key-f4', 'f4-exits');CODE
LOWtest/request-id-body.test.js190 const acct = addAccountByKey('fake-key-f4', 'f4-chat');CODE
LOWtest/request-id-body.test.js217 const acct = addAccountByKey('fake-key-f4', 'f4-msg');CODE
LOWtest/email-otp-login.test.js112 () => registerUserWithOtp('test@example.com', '999999', 'fake-token', '', '', null),CODE
LOWtest/devin-connect-credentials.test.js39 assert.equal(getCredential('user@example.com', env), 's3cret-pw!', 'email is case-insensitive');CODE
LOWtest/devin-connect-credentials.test.js41 assert.deepEqual(listCredentialEmails(env), ['user@example.com']);CODE
LOWtest/responses-retrieve-route.test.js76 const acct = addAccountByKey('fake-key-resp-route', `resp-route-${label}`);CODE
LOWtest/caller-environment.test.js303 const filler = 'lorem ipsum dolor sit amet '.repeat(200); // ~5 KB fillerCODE
LOWtest/caller-environment.test.js303 const filler = 'lorem ipsum dolor sit amet '.repeat(200); // ~5 KB fillerCODE
LOWsrc/dashboard/check-i18n.js390 ['placeholder', 'data-i18n-placeholder'],CODE
LOW⚡src/dashboard/i18n/zh-CN.json471 "placeholder": "your-email@example.com"CODE
LOW⚡src/dashboard/i18n/zh-CN.json475 "placeholder": "••••••••"CODE
LOW⚡src/dashboard/i18n/zh-CN.json485 "placeholder": "proxy.example.com"CODE
LOW⚡src/dashboard/i18n/zh-CN.json489 "placeholder": "8080"CODE
LOW⚡src/dashboard/i18n/zh-CN.json493 "placeholder": "可选"CODE
LOW⚡src/dashboard/i18n/zh-CN.json497 "placeholder": "可选"CODE
LOW⚡src/dashboard/i18n/zh-CN.json501 "placeholder": "粘贴 Auth Token(从 windsurf.com/show-auth-token 获取)"CODE
LOW⚡src/dashboard/i18n/zh-CN.json505 "placeholder": "可选"CODE
LOW⚡src/dashboard/i18n/zh-CN.json509 "placeholder": "http://proxy:8080 或 socks5://user:pass@host:port(可选)",CODE
LOW⚡src/dashboard/i18n/zh-CN.json521 "placeholder": "留空=使用全局"CODE
LOW⚡src/dashboard/i18n/zh-CN.json528 "placeholder": "代理认证用户名"CODE
LOW⚡src/dashboard/i18n/zh-CN.json531 "placeholder": "代理认证密码"CODE
LOW⚡src/dashboard/i18n/zh-CN.json534 "placeholder": "搜索提供商..."CODE
LOW⚡src/dashboard/i18n/zh-CN.json538 "placeholder": "搜索..."CODE
LOW⚡src/dashboard/i18n/zh-CN.json542 "placeholder": "输入模型名称筛选..."CODE
LOW⚡src/dashboard/i18n/zh-CN.json546 "placeholder": "留空则拒绝清单外请求",CODE
LOW⚡src/dashboard/i18n/zh-CN.json556 "placeholder": "搜索提供商..."CODE
LOW⚡src/dashboard/i18n/zh-CN.json564 "placeholder": "John"CODE
LOW⚡src/dashboard/i18n/zh-CN.json572 "placeholder": "Doe"CODE
LOWsrc/dashboard/i18n/zh-CN.json284 "placeholder": "devin-session-token$... 或 show-auth-token 链接 或 email----password 每行一个,可混合",CODE
LOWsrc/dashboard/i18n/zh-CN.json1392 "placeholder": {CODE
LOWsrc/dashboard/i18n/zh-CN.json1517 "placeholder": "筛选设置…",CODE
LOW⚡src/dashboard/i18n/en.json489 "placeholder": "Enter model name to filter..."CODE
LOW⚡src/dashboard/i18n/en.json493 "placeholder": "Leave blank to reject out-of-list requests",CODE
LOW⚡src/dashboard/i18n/en.json497 "placeholder": "Proxy auth username"CODE
LOW⚡src/dashboard/i18n/en.json500 "placeholder": "Proxy auth password"CODE
LOW⚡src/dashboard/i18n/en.json503 "placeholder": "Search providers..."CODE
LOW⚡src/dashboard/i18n/en.json507 "placeholder": "proxy.example.com"CODE
LOW⚡src/dashboard/i18n/en.json511 "placeholder": "8080"CODE
LOW⚡src/dashboard/i18n/en.json515 "placeholder": "Optional"CODE
LOW⚡src/dashboard/i18n/en.json519 "placeholder": "Optional"CODE
LOW⚡src/dashboard/i18n/en.json523 "placeholder": "Paste Auth Token"CODE
LOW⚡src/dashboard/i18n/en.json527 "placeholder": "Optional"CODE
LOW⚡src/dashboard/i18n/en.json531 "placeholder": "http://proxy:8080 or socks5://user:pass@host:port (optional)",CODE
LOW⚡src/dashboard/i18n/en.json543 "placeholder": "Leave empty = use global"CODE
LOW⚡src/dashboard/i18n/en.json552 "placeholder": "Search providers..."CODE
LOW⚡src/dashboard/i18n/en.json556 "placeholder": "Search..."CODE
LOW⚡src/dashboard/i18n/en.json564 "placeholder": "John"CODE
LOW⚡src/dashboard/i18n/en.json572 "placeholder": "Doe"CODE
LOWsrc/dashboard/i18n/en.json284 "placeholder": "devin-session-token$... or show-auth-token URL or email----password — one per line, mixable",CODE
LOWsrc/dashboard/i18n/en.json471 "placeholder": "your-email@example.com"CODE
LOWsrc/dashboard/i18n/en.json475 "placeholder": "••••••••"CODE
LOWsrc/dashboard/i18n/en.json1392 "placeholder": {CODE
LOWsrc/dashboard/i18n/en.json1517 "placeholder": "Filter settings...",CODE
Magic Placeholder Names4 hits · 22 pts
SeverityFileLineSnippetContext
HIGHREADME.en.md269client = OpenAI(base_url="http://YOUR_IP:3003/v1", api_key="YOUR_API_KEY")CODE
HIGHREADME.en.md281export ANTHROPIC_API_KEY=YOUR_API_KEYCODE
HIGHREADME.en.md297- API Key: YOUR_API_KEYCODE
HIGHexamples/proxy-user-inject.js85 * -H "Authorization: Bearer YOUR_API_KEY" \COMMENT
AI Slop Vocabulary9 hits · 21 pts
SeverityFileLineSnippetContext
MEDIUMtest/mutations/cascade-native-bridge-gates.json2 "_baseline_provenance": "MEASURED 2026-09-13 on the author's Windows box, Node v24.19.0, worktree .claude/worktrees/guCODE
MEDIUMtest/mutations/client-invariants.json2 "_baseline_provenance": "MEASURED 2026-09-13 on the author's Windows box, Node v24.19.0, worktree .claude/worktrees/guCODE
MEDIUM…st/mutations/conversation-pool-fingerprint-guards.json2 "_baseline_provenance": "MEASURED 2026-09-13 on the author's Windows box, Node v24.19.0, worktree .claude/worktrees/guCODE
MEDIUMtest/mutations/request-tail-contract.json2 "_baseline_provenance": "MEASURED 2026-10-07 on the author's Windows box, Node v24.19.0, worktree .claude/worktrees/taCODE
MEDIUMtest/mutations/langserver-invariants.json2 "_baseline_provenance": "MEASURED 2026-09-13 on the author's Windows box, Node v24.19.0, worktree .claude/worktrees/guCODE
MEDIUMtest/mutations/langserver-invariants.json3 "_scope_note": "src/langserver.js (65 KB) had zero mutation specs before this file. Its existing assertions are split CODE
MEDIUM⚡docs/HISTORY-LEDGER-VIZ.html766const D_GIT = {"t0":1775727718,"t1":1789432557,"anchors":[{"h":"395311f2","t":1775727718,"a":"dwgx","s":"Initial commit:CODE
MEDIUM.github/workflows/ci.yml30 # fetch-depth 0: the mutation harness materializes its workspace withCOMMENT
MEDIUMsrc/conversation-pool.js41// reuse robust against fingerprint drift (system-prompt changes, tool-listCOMMENT
Verbosity Indicators7 hits · 12 pts
SeverityFileLineSnippetContext
LOWsrc/client.js679 // Step 1: Start cascade — with retry on panel-state-not-foundCOMMENT
LOWsrc/client.js827 // Step 2: Send message. Retry up to MAX_PANEL_RETRIES onCOMMENT
LOWsrc/client.js931 // Step 3: Poll for response.COMMENT
LOWsrc/socks.js38 // Step 1: greeting — offer auth methodsCOMMENT
LOW⚡src/dashboard/email-otp-login.js439 // Step 1: Send verification emailCOMMENT
LOW⚡src/dashboard/email-otp-login.js442 // Step 2: Poll Gmail for OTP codeCOMMENT
LOW⚡src/dashboard/email-otp-login.js450 // Step 3: Register user with OTPCOMMENT
Structural Annotation Overuse7 hits · 11 pts
SeverityFileLineSnippetContext
LOWsrc/client.js679 // Step 1: Start cascade — with retry on panel-state-not-foundCOMMENT
LOWsrc/client.js827 // Step 2: Send message. Retry up to MAX_PANEL_RETRIES onCOMMENT
LOWsrc/client.js931 // Step 3: Poll for response.COMMENT
LOWsrc/socks.js38 // Step 1: greeting — offer auth methodsCOMMENT
LOW⚡src/dashboard/email-otp-login.js439 // Step 1: Send verification emailCOMMENT
LOW⚡src/dashboard/email-otp-login.js442 // Step 2: Poll Gmail for OTP codeCOMMENT
LOW⚡src/dashboard/email-otp-login.js450 // Step 3: Register user with OTPCOMMENT
Cross-Language Confusion (JS/TS)1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHtest/update-script-release-target.test.js362 elif [ -r "$pid_file" ]; then cat "$pid_file"; fiCODE
Slop Phrases1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUMtest/tool-emulation-allowlist.test.js54 const raw = 'Sure, here you go:\n```json\n{"name":"Bash","arguments":{"command":"id"}}\n```\nLet me know if you needCODE
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWinstall-ls.sh4# Usage:COMMENT