Never stop coding. Free AI gateway: one endpoint, 231+ providers (50+ free), connect Claude Code, Codex, Cursor, Cline & Copilot to FREE Claude/GPT/Gemini. RTK+Caveman stacked compression saves 15-95% tokens, smart auto-fallback, MCP/A2A, multimodal APIs, Desktop/PWA.
This report presents the forensic synthetic code analysis of diegosouzapw/OmniRoute, a TypeScript project with 17,146 GitHub stars. SynthScan v2.0 examined 2,066,967 lines of code across 8184 source files, recording 7921 pattern matches distributed across 20 syntactic categories. The overall adjusted score of 9.1 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 7921 distinct pattern matches across 20 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .zizmor.yml | 29 | # ── Global settings ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | .zizmor.yml | 33 | # ── Per-rule ignores ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | .gitleaks.toml | 33 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .gitleaks.toml | 36 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .gitleaks.toml | 60 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .gitleaks.toml | 62 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | docker-compose.yml | 1 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker-compose.yml | 3 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker-compose.yml | 28 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker-compose.yml | 54 | # ── Redis (Rate Limiter Backend) ────────────────────────────────── | COMMENT |
| MEDIUM | docker-compose.yml | 70 | # ── Profile: base (minimal, no CLI tools) ────────────────────────── | COMMENT |
| MEDIUM | docker-compose.yml | 85 | # ── Profile: web (runner-web + Chromium/Playwright) ──────────────── | COMMENT |
| MEDIUM | docker-compose.yml | 103 | # ── Profile: cli (CLIs installed inside container) ───────────────── | COMMENT |
| MEDIUM | docker-compose.yml | 123 | # ── Profile: host (host-mounted CLI binaries, Linux-first) ──────── | COMMENT |
| MEDIUM | docker-compose.yml | 169 | # ── Profile: memory (Qdrant semantic-memory sidecar) ───────────── | COMMENT |
| MEDIUM | docker-compose.yml | 196 | # ── Profile: bifrost (Bifrost Go LLM-router sidecar) ───────────── | COMMENT |
| MEDIUM | docker-compose.yml | 223 | # ── Profile: cliproxyapi (CLIProxyAPI as sidecar) ───────────────── | COMMENT |
| MEDIUM⚡ | docker-compose.prod.yml | 1 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docker-compose.prod.yml | 3 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker-compose.prod.yml | 27 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docker-compose.prod.yml | 30 | # ── Redis (Rate Limiter Backend) ────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/fork-features.test.ts | 32 | // ── 1. normaliseFreeLabel ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/fork-features.test.ts | 74 | // ── 2. resolveApiBlock ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/fork-features.test.ts | 153 | // ── 3. debugLog ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/fork-features.test.ts | 243 | // ── Regression tests for the 3 HIGH-priority bot review fixes ─────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 51 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 53 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 111 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 113 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 180 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 182 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 276 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 278 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 338 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 340 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 476 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 478 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 605 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 607 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 624 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 629 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 758 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 760 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 930 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/features.test.ts | 933 | // ───────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | @omniroute/opencode-plugin/tests/config-shim.test.ts | 868 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | @omniroute/opencode-plugin/tests/config-shim.test.ts | 870 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | @omniroute/opencode-plugin/tests/config-shim.test.ts | 879 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | @omniroute/opencode-plugin/tests/config-shim.test.ts | 881 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 50 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 52 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 88 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 90 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 200 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 202 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 259 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 264 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 318 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 320 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | @omniroute/opencode-plugin/tests/config-shim.test.ts | 345 | // ──────────────────────────────────────────────────────────────────────────── | COMMENT |
| 4081 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …oute/opencode-plugin/tests/provider-id-routing.test.ts | 38 | function splitProviderFromDispatchedModel(modelStr: string): string { | CODE |
| LOW | @omniroute/opencode-plugin/tests/config-shim.test.ts | 170 | function throwingEnrichmentFetcher(): OmniRouteEnrichmentFetcher & { callCount: () => number } { | CODE |
| LOW | …mniroute/opencode-plugin/tests/gemini-sanitize.test.ts | 55 | function chatCompletionsWithDollarSchema(): Record<string, unknown> { | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 239 | export function resolveOmniRoutePluginOptions( | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 294 | function trimLeadingOpencodePrefix(rawProviderId: string): string { | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 315 | export function parseOmniRoutePluginOptions(opts: unknown): OmniRoutePluginOptions { | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 1201 | export function mapAutoComboToStaticEntry( | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 2051 | export function formatCompressionPipeline(pipeline: OmniRouteCompressionStep[]): string { | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 2434 | export function createOmniRouteProviderHook( | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 3031 | export function createOmniRouteFetchInterceptor(config: { | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 3135 | function sanitizeToolSchemaContainer(payload: Record<string, unknown>): boolean { | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 3188 | export function sanitizeGeminiToolSchemas(payload: unknown): unknown { | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 3264 | export function createGeminiSanitizingFetch(inner: typeof fetch): typeof fetch { | CODE |
| LOW | @omniroute/opencode-plugin/src/index.ts | 4376 | export function createOmniRouteConfigHook( | CODE |
| LOW | @omniroute/opencode-provider/src/index.ts | 314 | export function buildOmniRouteOpenCodeConfig( | CODE |
| LOW | @omniroute/opencode-provider/src/index.ts | 725 | export function createOmniRouteComboConfig( | CODE |
| LOW | @omniroute/opencode-provider/src/index.ts | 835 | export function createOmniRouteAgentBlock( | CODE |
| LOW | @omniroute/opencode-provider/src/index.ts | 896 | export function createOmniRouteModesBlock( | CODE |
| LOW | open-sse/config/antigravityUpstream.ts | 14 | export function getAntigravityModelsDiscoveryUrls(): string[] { | CODE |
| LOW | open-sse/config/antigravityUpstream.ts | 18 | export function getAntigravityFetchAvailableModelsUrls(): string[] { | CODE |
| LOW | open-sse/config/providerErrorRules.ts | 151 | export function getProviderErrorRuleMatch( | CODE |
| LOW | open-sse/config/contextEditing.ts | 48 | export function applyContextEditingToBody( | CODE |
| LOW | open-sse/config/contextEditing.ts | 132 | export function extractContextEditingTelemetry( | CODE |
| LOW | open-sse/config/bedrock.ts | 14 | export function extractBedrockRegionFromBaseUrl(value: string | null | undefined): string | null { | CODE |
| LOW⚡ | open-sse/config/bedrock.ts | 37 | export function buildBedrockControlBaseUrl(region: string): string { | CODE |
| LOW⚡ | open-sse/config/bedrock.ts | 41 | export function buildBedrockRuntimeBaseUrl(region: string): string { | CODE |
| LOW⚡ | open-sse/config/bedrock.ts | 45 | export function buildBedrockNativeModelsUrl(region: string): string { | CODE |
| LOW⚡ | open-sse/config/bedrock.ts | 49 | export function buildBedrockNativeInferenceProfilesUrl( | CODE |
| LOW | open-sse/config/bedrock.ts | 60 | export function buildBedrockNativeConverseUrl(region: string, modelId: string, stream = false) { | CODE |
| LOW | open-sse/config/bedrock.ts | 85 | export function getBedrockKnownModelLimits(modelId: string): { | CODE |
| LOW | open-sse/config/bedrock.ts | 115 | export function normalizeBedrockDiscoveredModels( | CODE |
| LOW | open-sse/config/imageRegistry.ts | 703 | function imageProviderCatalogEntries( | CODE |
| LOW | open-sse/config/errorConfig.ts | 218 | export function serviceSupervisorCooldown( | CODE |
| LOW | open-sse/config/glmProvider.ts | 212 | function getProviderSpecificString(data: JsonRecord, keys: readonly string[]): string | null { | CODE |
| LOW | open-sse/config/glmProvider.ts | 285 | function stripKnownGlmEndpointSuffix(baseUrl: string): { base: string; suffix: string } { | CODE |
| LOW | open-sse/config/glmProvider.ts | 321 | function stripQueryAndTrailingSlash(baseUrl: string): string { | CODE |
| LOW | open-sse/config/glmProvider.ts | 440 | export function buildGlmAnthropicMessagesUrl( | CODE |
| LOW | open-sse/config/audioRegistry.ts | 456 | export function buildDynamicAudioProvider(node: ProviderNodeRow, audioPath: string): AudioProvider { | CODE |
| LOW⚡ | open-sse/config/providerPluginManifestRegistry.ts | 8 | export function generateProviderPluginManifest() { | CODE |
| LOW⚡ | open-sse/config/providerPluginManifestRegistry.ts | 12 | export function getProviderPluginManifestEntry(provider: string) { | CODE |
| LOW⚡ | open-sse/config/providerPluginManifestRegistry.ts | 16 | export function getProviderPluginManifestEntryForModel( | CODE |
| LOW | open-sse/config/providerRegistry.ts | 142 | function ensurePassthroughProviderIds(): Set<string> { | CODE |
| LOW | open-sse/config/providerRegistry.ts | 187 | function ensureUnsupportedParamsPopulated(): void { | CODE |
| LOW | open-sse/config/providerRegistry.ts | 244 | export function getClaudeCodeDefaultModels(): { | CODE |
| LOW | open-sse/config/antigravityModelAliases.ts | 225 | export function getAntigravityModelFallbacks(modelId: string): readonly string[] { | CODE |
| LOW | open-sse/config/antigravityModelAliases.ts | 250 | export function resolveAntigravityModelId(modelId: string): string { | CODE |
| LOW | open-sse/config/antigravityModelAliases.ts | 255 | export function toClientAntigravityModelId(modelId: string): string { | CODE |
| LOW⚡ | open-sse/config/antigravityModelAliases.ts | 289 | export function toClientAntigravityQuotaModelId(modelId: string): string | null { | CODE |
| LOW⚡ | open-sse/config/antigravityModelAliases.ts | 297 | export function getClientVisibleAntigravityModelName( | CODE |
| LOW⚡ | open-sse/config/antigravityModelAliases.ts | 304 | export function isUserCallableAntigravityModelId(modelId: string): boolean { | CODE |
| LOW | open-sse/config/anthropicHeaders.ts | 97 | export function normalizeAnthropicHeaderVariants(headers: Record<string, string>): void { | CODE |
| LOW | open-sse/config/codexQuotaScopes.ts | 45 | export function isCodexSparkLimitDescriptor(...values: unknown[]): boolean { | CODE |
| LOW | open-sse/config/codexQuotaScopes.ts | 57 | export function getCodexQuotaWindowFilterForModel( | CODE |
| LOW | open-sse/config/codexQuotaScopes.ts | 68 | export function toCodexScopedQuotaWindowName( | CODE |
| LOW | open-sse/config/codexQuotaScopes.ts | 79 | export function toCodexBaseQuotaWindowName(windowName: string | null): string | null { | CODE |
| LOW | open-sse/config/providerModels.ts | 130 | function findCanonicalClaudeEffortModel(modelId: string): RegistryModel | undefined { | CODE |
| LOW | open-sse/config/providerModels.ts | 194 | export function supportsXHighEffortForMaxNormalization( | CODE |
| LOW | open-sse/config/rerankRegistry.ts | 136 | function normalizeProviderScopedModelId(providerId, modelId) { | CODE |
| LOW | open-sse/config/mediaServiceKinds.ts | 63 | export function resolveProviderServiceKinds( | CODE |
| LOW | open-sse/config/providerPluginManifest.ts | 132 | export function createProviderPluginManifestEntry( | CODE |
| 2306 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | open-sse/mcp-server/README.md | 47 | export OMNIROUTE_API_KEY="your-api-key" | CODE |
| HIGH | docs/guides/USER_GUIDE.md | 914 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/guides/USER_GUIDE.md | 919 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/frameworks/SKILLS.md | 240 | "apiKeyId": "your-api-key-id" | CODE |
| HIGH | docs/i18n/sk/docs/guides/USER_GUIDE.md | 851 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sk/docs/guides/USER_GUIDE.md | 856 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/sk/docs/reference/API_REFERENCE.md | 29 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sk/docs/reference/API_REFERENCE.md | 64 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sk/docs/reference/API_REFERENCE.md | 86 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sk/docs/reference/API_REFERENCE.md | 109 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sk/docs/reference/API_REFERENCE.md | 363 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sk/docs/reference/API_REFERENCE.md | 373 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/ur/docs/guides/USER_GUIDE.md | 851 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/ur/docs/guides/USER_GUIDE.md | 856 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/ur/docs/reference/API_REFERENCE.md | 29 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/ur/docs/reference/API_REFERENCE.md | 64 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/ur/docs/reference/API_REFERENCE.md | 86 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/ur/docs/reference/API_REFERENCE.md | 109 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/ur/docs/reference/API_REFERENCE.md | 363 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/ur/docs/reference/API_REFERENCE.md | 373 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/sw/docs/guides/USER_GUIDE.md | 851 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sw/docs/guides/USER_GUIDE.md | 856 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/sw/docs/reference/API_REFERENCE.md | 29 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sw/docs/reference/API_REFERENCE.md | 64 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sw/docs/reference/API_REFERENCE.md | 86 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sw/docs/reference/API_REFERENCE.md | 109 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sw/docs/reference/API_REFERENCE.md | 363 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sw/docs/reference/API_REFERENCE.md | 373 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/pl/docs/guides/USER_GUIDE.md | 851 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/pl/docs/guides/USER_GUIDE.md | 856 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/pl/docs/reference/API_REFERENCE.md | 29 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/pl/docs/reference/API_REFERENCE.md | 64 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/pl/docs/reference/API_REFERENCE.md | 86 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/pl/docs/reference/API_REFERENCE.md | 109 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/pl/docs/reference/API_REFERENCE.md | 363 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/pl/docs/reference/API_REFERENCE.md | 373 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/vi/docs/guides/USER_GUIDE.md | 851 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/vi/docs/guides/USER_GUIDE.md | 856 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/vi/docs/reference/API_REFERENCE.md | 29 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/vi/docs/reference/API_REFERENCE.md | 64 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/vi/docs/reference/API_REFERENCE.md | 86 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/vi/docs/reference/API_REFERENCE.md | 109 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/vi/docs/reference/API_REFERENCE.md | 363 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/vi/docs/reference/API_REFERENCE.md | 373 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/sv/docs/guides/USER_GUIDE.md | 851 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sv/docs/guides/USER_GUIDE.md | 856 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/sv/docs/reference/API_REFERENCE.md | 29 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sv/docs/reference/API_REFERENCE.md | 64 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sv/docs/reference/API_REFERENCE.md | 86 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sv/docs/reference/API_REFERENCE.md | 109 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sv/docs/reference/API_REFERENCE.md | 363 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/sv/docs/reference/API_REFERENCE.md | 373 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/he/docs/guides/USER_GUIDE.md | 851 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/he/docs/guides/USER_GUIDE.md | 856 | -H "Authorization: Bearer your-api-key" \ | CODE |
| HIGH | docs/i18n/he/docs/reference/API_REFERENCE.md | 29 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/he/docs/reference/API_REFERENCE.md | 64 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/he/docs/reference/API_REFERENCE.md | 86 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/he/docs/reference/API_REFERENCE.md | 109 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/he/docs/reference/API_REFERENCE.md | 363 | Authorization: Bearer your-api-key | CODE |
| HIGH | docs/i18n/he/docs/reference/API_REFERENCE.md | 373 | -H "Authorization: Bearer your-api-key" \ | CODE |
| 321 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | CONTRIBUTING.md | 299 | ### Step 1: Register Provider Constants | COMMENT |
| LOW⚡ | CONTRIBUTING.md | 303 | ### Step 2: Add Executor (if custom logic needed) | COMMENT |
| LOW⚡ | CONTRIBUTING.md | 307 | ### Step 3: Add Translator (if non-OpenAI format) | COMMENT |
| LOW⚡ | CONTRIBUTING.md | 311 | ### Step 4: Add OAuth Config (if OAuth-based) | COMMENT |
| LOW⚡ | CONTRIBUTING.md | 319 | ### Step 5: Register Models | COMMENT |
| LOW⚡ | CONTRIBUTING.md | 323 | ### Step 6: Add Tests | COMMENT |
| LOW | open-sse/mcp-server/toolCardinality.ts | 137 | // Step 1: filter by scope / explicit allow, then apply deny. | COMMENT |
| LOW | open-sse/mcp-server/toolCardinality.ts | 156 | // Step 2: cap by maxTools. A negative max would silently drop tail entries via | COMMENT |
| LOW | open-sse/translator/index.ts | 218 | // Step 1: source -> openai (if source is not openai) | COMMENT |
| LOW | open-sse/translator/index.ts | 248 | // Step 2: openai -> target (if target is not openai) | COMMENT |
| LOW | open-sse/translator/index.ts | 512 | // Step 1: target -> openai (if target is not openai) | COMMENT |
| LOW | open-sse/translator/index.ts | 525 | // Step 2: openai -> source (if source is not openai) | COMMENT |
| LOW | open-sse/handlers/videoGeneration.ts | 189 | // Step 1: create async task (X-DashScope-Async: enable) | COMMENT |
| LOW | open-sse/handlers/videoGeneration.ts | 212 | // Step 2: poll statusUrl/{task_id} until terminal | COMMENT |
| LOW⚡ | open-sse/handlers/audioTranscription.ts | 207 | // Step 1: Upload the audio file | COMMENT |
| LOW | open-sse/handlers/audioTranscription.ts | 224 | // Step 2: Submit transcription request | COMMENT |
| LOW | open-sse/handlers/audioTranscription.ts | 244 | // Step 3: Poll for completion (max 120s) | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 336 | // Step 1: Build base request | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 339 | // Step 2: Remap tool names | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 346 | // Step 5: Cache control | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 388 | // Step 6: Obfuscation (optional, per-provider setting) | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 393 | // Step 7: Serialize with CCH placeholder (strip internal sentinel fields) | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 397 | // Step 8: Sign with xxHash64 | COMMENT |
| LOW | open-sse/services/compression/aggressive.ts | 68 | // Step 1: Tool-result compression | COMMENT |
| LOW | open-sse/services/compression/aggressive.ts | 107 | // Step 2: Progressive aging | COMMENT |
| LOW | open-sse/services/compression/aggressive.ts | 121 | // Step 3: Fallback summarizer for remaining long messages | COMMENT |
| LOW⚡ | tests/unit/executor-huggingchat.test.ts | 76 | // Step 1: conversation creation succeeds. | COMMENT |
| LOW⚡ | tests/unit/executor-huggingchat.test.ts | 82 | // Step 2: the parent-message GET fails -> fetchInitialParentMessageId -> null. | COMMENT |
| LOW⚡ | tests/unit/antigravity-discovery-bootstrap.test.ts | 221 | // Step 1: bootstrap project (what route.ts now does before the models loop). | COMMENT |
| LOW⚡ | tests/unit/antigravity-discovery-bootstrap.test.ts | 224 | // Step 2: simulate a :models discovery request (what the loop does). | COMMENT |
| LOW | …nit/translator-resp-openai-responses-roundtrip.test.ts | 22 | // Step 1: Responses API format → Chat Completions format | COMMENT |
| LOW | …nit/translator-resp-openai-responses-roundtrip.test.ts | 62 | // Step 2: That Chat Completions chunk → Responses API events | COMMENT |
| LOW⚡ | …nit/translator-resp-openai-responses-roundtrip.test.ts | 116 | // Step 1: Responses → OpenAI (Chat Completions) | COMMENT |
| LOW | …nit/translator-resp-openai-responses-roundtrip.test.ts | 155 | // Step 2: OpenAI → Responses | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 411 | // Step 1: Initial state - track extra keys | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 415 | // Step 2: First request - should get primary key | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 420 | // Step 3: Simulate 401 failure on primary key | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 425 | // Step 4: Retry - should get a valid key (primary is still active, but round-robin may pick extra) | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 432 | // Step 5: Second 401 failure | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 437 | // Step 6: Third 401 failure - now primary becomes invalid | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 442 | // Step 7: Next request - should skip invalid primary and return extra key | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 449 | // Step 8: Verify the invalid key count | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 452 | // Step 9: A3 guard check - connection with extra keys should NOT be disabled | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 457 | // Step 10: Success on extra key - mark it as successful | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 463 | // Step 11: Recover primary key | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 468 | // Step 12: Next request - can use primary again | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 619 | // Step 1: T07 code in chatCore.ts records key failure | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 622 | // Step 2: A3 guard in chat.ts checks if connection has extra keys | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 627 | // Step 3: With A3 guard, markAccountUnavailable should be skipped | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 630 | // Step 4: Next request should get backup key | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 639 | // Step 5: Connection remains usable | COMMENT |
| LOW | tests/unit/combo-context-requirements.test.ts | 241 | // Step 1: Filter by minContextWindow | COMMENT |
| LOW | tests/unit/combo-context-requirements.test.ts | 255 | // Step 2: Sort by context size if preferLargeContext | COMMENT |
| LOW | tests/unit/dashboard/batch/sanitization.test.tsx | 156 | // Step 1: select provider + model → Next | COMMENT |
| LOW | tests/unit/dashboard/batch/sanitization.test.tsx | 170 | // Step 2: inject file | COMMENT |
| LOW⚡ | tests/integration/compression-pipeline.test.ts | 37 | // Step 1: Select strategy | COMMENT |
| LOW⚡ | tests/integration/compression-pipeline.test.ts | 41 | // Step 2: Apply compression | COMMENT |
| LOW⚡ | tests/integration/compression-pipeline.test.ts | 46 | // Step 3: Verify stats | COMMENT |
| LOW⚡ | docs/getting-started/FREE-TIERS-GUIDE.md | 83 | ### Step 1: Open the Dashboard | COMMENT |
| LOW⚡ | docs/getting-started/FREE-TIERS-GUIDE.md | 87 | ### Step 2: Go to Providers | COMMENT |
| 307 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | README.md | 1231 | ### 🧠 Memory & RAG | COMMENT |
| MEDIUM | AGENTS.md | 490 | ### Guardrails (`src/lib/guardrails/`) | COMMENT |
| MEDIUM | @omniroute/opencode-provider/README.md | 151 | - [OpenCode](https://opencode.ai) — the agentic CLI consumer. | CODE |
| MEDIUM | config/quality/file-size-baseline.json | 79 | "_rebaseline_2026_06_18_4189_combo_token_limits": "PR #4189 (megamen32) own growth: catalog.ts 1440->1463 (+23 at the | CODE |
| MEDIUM⚡ | config/quality/file-size-baseline.json | 152 | "_rebaseline_2026_06_22_4644_deepseek_web_tools": "PR #4644 (BugsBag/robust deepseek-web tool-call parsing): open-ss | CODE |
| MEDIUM | config/quality/file-size-baseline.json | 397 | "_rebaseline_2026_07_08_vb_reroute": "PR #6640 (Vision Bridge reroute) own growth, re-measured post-merge with origin/ | CODE |
| MEDIUM | open-sse/config/providers/registry/kimi/web/index.ts | 23 | // agentic flows. | COMMENT |
| MEDIUM | open-sse/translator/webTools.ts | 4 | // calling — they reply with tool invocations as raw text. To let agentic clients use | COMMENT |
| MEDIUM | open-sse/translator/request/openai-to-kiro.ts | 70 | // images (the agentic tool-loop case), so the "(empty)" placeholder is only | COMMENT |
| MEDIUM | open-sse/translator/request/openai-to-kiro.ts | 689 | // Synthetic Kiro selector variants (`-thinking`, `-agentic`) are local aliases: | COMMENT |
| MEDIUM | open-sse/translator/request/openai-to-kiro.ts | 691 | // upstream model IDs. We intentionally do not inject an agentic system prompt here. | COMMENT |
| MEDIUM | open-sse/translator/helpers/openaiHelper.ts | 57 | // reasoning blobs inflate context on every subsequent agentic turn (O(n^2)). | COMMENT |
| MEDIUM | open-sse/executors/base.ts | 623 | // - 0c94c397d (#2743, 2026-05-26): a multi-agent review added a | COMMENT |
| MEDIUM | open-sse/executors/kiro.ts | 374 | // the first content token, and on large/agentic contexts the gap before | COMMENT |
| MEDIUM | open-sse/executors/perplexity-web.ts | 489 | // #5927). Without this, streaming requests (the default for agentic | COMMENT |
| MEDIUM | open-sse/executors/perplexity-web.ts | 489 | // #5927). Without this, streaming requests (the default for agentic | COMMENT |
| MEDIUM | open-sse/executors/deepseek-web.ts | 540 | // information". Fold them into the transcript as plain text, mirroring the agentic | COMMENT |
| MEDIUM | open-sse/executors/deepseek-web.ts | 897 | // Tool (agentic) requests replay the whole trajectory — prior tool calls and their | COMMENT |
| MEDIUM | open-sse/executors/codex.ts | 244 | // tokens (O(n^2) growth across agentic turns). | COMMENT |
| MEDIUM | open-sse/services/autoCombo/complexityRouter.ts | 59 | // Tool-using / agentic requests need reliable function calling — floor at "cheap". | COMMENT |
| MEDIUM | open-sse/services/autoCombo/complexityRouter.ts | 97 | // favors function-calling-reliable models for agentic requests. | COMMENT |
| MEDIUM | open-sse/services/autoCombo/taskFitness.ts | 53 | // Kimi K2.5 — agentic with tool calling, good at code tasks | COMMENT |
| MEDIUM | open-sse/services/autoCombo/taskFitness.ts | 97 | "kimi-k2": 0.82, // Kimi K2.5 agentic — good for analysis | CODE |
| MEDIUM | open-sse/services/autoCombo/taskFitness.ts | 134 | "kimi-k2": 0.76, // agentic multi-step tasks | CODE |
| MEDIUM | tests/unit/model-capabilities-registry.test.ts | 111 | // #6191: max_input_tokens is a distinct, smaller cap than the context window. | COMMENT |
| MEDIUM | tests/unit/translator-openai-to-kiro.test.ts | 841 | // Regression for the same bug class as upstream decolua/9router#2183: an agentic | COMMENT |
| MEDIUM | tests/unit/translator-openai-to-kiro.test.ts | 841 | // Regression for the same bug class as upstream decolua/9router#2183: an agentic | COMMENT |
| MEDIUM | tests/unit/executor-codex.test.ts | 531 | // only inflates context on every subsequent agentic turn (decolua/9router#1599). | COMMENT |
| MEDIUM | tests/unit/perplexity-web-streaming-tools-5927.test.ts | 5 | // requests — the default for agentic coding clients — got the raw <tool> text | COMMENT |
| MEDIUM | …nit/strip-reasoning-blobs-agentic-context-1599.test.ts | 7 | // Port of decolua/9router#1599 — strip reasoning blobs from agentic context to | COMMENT |
| MEDIUM | …nit/strip-reasoning-blobs-agentic-context-1599.test.ts | 7 | // Port of decolua/9router#1599 — strip reasoning blobs from agentic context to | COMMENT |
| MEDIUM | tests/unit/deepseek-web-tool-result-prompt-4712.test.ts | 2 | // string, so tool results must be folded into the transcript. The agentic path | COMMENT |
| MEDIUM | tests/unit/messages-count-tokens-route.test.ts | 124 | // Real agentic conversations carry ~95% of their tokens inside tool_use inputs | COMMENT |
| MEDIUM | tests/unit/theoldllm-context-length-4184.test.ts | 44 | test("#4184 resolved context window reflects the override (null before the fix)", () => { | CODE |
| MEDIUM | tests/unit/gpt-max-input-tokens-6191.test.ts | 7 | // #6191: GPT-family codex models advertised their full 400K context window as | COMMENT |
| MEDIUM | tests/unit/deepseek-web-tools-execute.test.ts | 5 | // 2. An agentic (tool-using) conversation must replay the whole trajectory (prior tool calls | COMMENT |
| MEDIUM⚡ | tests/unit/guardrails-api-3496.test.ts | 9 | // #3496 — docs/reference/API_REFERENCE.md documented a `/api/guardrails*` and | COMMENT |
| MEDIUM⚡ | tests/unit/guardrails-api-3496.test.ts | 9 | // #3496 — docs/reference/API_REFERENCE.md documented a `/api/guardrails*` and | COMMENT |
| MEDIUM⚡ | tests/unit/guardrails-api-3496.test.ts | 12 | // (src/lib/guardrails), so the fix implements the two routes that map to real | COMMENT |
| MEDIUM⚡ | tests/unit/guardrails-api-3496.test.ts | 13 | // behavior — GET /api/guardrails (list) and POST /api/guardrails/test (dry-run | COMMENT |
| MEDIUM | tests/unit/guardrails-api-3496.test.ts | 40 | test("#3496 GET /api/guardrails lists the registered guardrails with status", async () => { | CODE |
| MEDIUM | tests/unit/guardrails-api-3496.test.ts | 41 | const req = await makeManagementSessionRequest("http://localhost/api/guardrails"); | CODE |
| MEDIUM | tests/unit/guardrails-api-3496.test.ts | 60 | test("#3496 POST /api/guardrails/test runs the pre-call pipeline over a sample input", async () => { | CODE |
| MEDIUM | tests/unit/guardrails-api-3496.test.ts | 61 | const req = await makeManagementSessionRequest("http://localhost/api/guardrails/test", { | CODE |
| MEDIUM | tests/unit/guardrails-api-3496.test.ts | 79 | test("#3496 POST /api/guardrails/test honors disabledGuardrails", async () => { | CODE |
| MEDIUM | tests/unit/guardrails-api-3496.test.ts | 80 | const req = await makeManagementSessionRequest("http://localhost/api/guardrails/test", { | CODE |
| MEDIUM⚡ | tests/unit/guardrails-api-3496.test.ts | 93 | test("#3496 POST /api/guardrails/test rejects a body without input (400)", async () => { | CODE |
| MEDIUM⚡ | tests/unit/guardrails-api-3496.test.ts | 94 | const req = await makeManagementSessionRequest("http://localhost/api/guardrails/test", { | CODE |
| MEDIUM⚡ | tests/unit/guardrails-api-3496.test.ts | 103 | // non-existent guardrails/shadow route, and the allowlist no longer freezes them. | COMMENT |
| MEDIUM⚡ | tests/unit/guardrails-api-3496.test.ts | 104 | test("#3496 check-docs-symbols no longer freezes guardrails/shadow + API_REFERENCE is clean", async () => { | CODE |
| MEDIUM⚡ | tests/unit/guardrails-api-3496.test.ts | 108 | // (1) allowlist no longer freezes any guardrails/shadow path | COMMENT |
| MEDIUM⚡ | tests/unit/guardrails-api-3496.test.ts | 116 | // (2) API_REFERENCE.md no longer references a non-existent guardrails/shadow route | COMMENT |
| MEDIUM | tests/integration/liveGeminiShared.ts | 335 | For I/O-bound workloads, event-driven models (Node.js, Python asyncio, C# async/await) use an event loop to multiplex | CODE |
| MEDIUM | docs/getting-started/TROUBLESHOOTING.md | 351 | ## Optional RAG / LLM failure taxonomy (16 problems) | COMMENT |
| MEDIUM | docs/guides/TROUBLESHOOTING.md | 361 | ## Optional RAG / LLM failure taxonomy (16 problems) | COMMENT |
| MEDIUM | docs/ops/QUALITY_GATE_PLAYBOOK.md | 148 | ### 11. Anti-hallucination / consistency (the rare category) | COMMENT |
| MEDIUM | docs/ops/QUALITY_GATE_PLAYBOOK.md | 209 | ### Phase 6 — Anti-hallucination & domain (week 8) | COMMENT |
| MEDIUM | docs/frameworks/OPENCODE.md | 14 | [OpenCode](https://opencode.ai) is an agentic CLI/desktop AI client. It reads its provider catalog from `~/.config/openc | CODE |
| MEDIUM | docs/i18n/sk/docs/guides/TROUBLESHOOTING.md | 299 | ## Optional RAG / LLM failure taxonomy (16 problems) | COMMENT |
| MEDIUM | docs/i18n/ur/docs/guides/TROUBLESHOOTING.md | 299 | ## Optional RAG / LLM failure taxonomy (16 problems) | COMMENT |
| 48 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .zizmor.yml | 1 | # .zizmor.yml — zizmor security audit configuration | COMMENT |
| LOW | .zizmor.yml | 21 | # This enforces the same stale-enforcement discipline as other allowlists in | COMMENT |
| LOW | .zizmor.yml | 41 | # <zizmor-audit-id>: # e.g. "unpinned-uses", "template-injection" | COMMENT |
| LOW | .zizmor.yml | 61 | # deploy-vps.yml uses `on: workflow_run` (after "Publish to Docker Hub"). | COMMENT |
| LOW | .zizmor.yml | 81 | # | COMMENT |
| LOW | socket.yml | 1 | # Socket.dev / Socket GitHub app configuration. | COMMENT |
| LOW | .gitleaks.toml | 1 | # .gitleaks.toml — Configuração do gitleaks para OmniRoute | COMMENT |
| LOW | .gitleaks.toml | 21 | # automaticamente. Sem esta seção, `gitleaks --config .gitleaks.toml` nunca | COMMENT |
| LOW | .gitleaks.toml | 61 | # Allowlist por-regra (adicionar conforme necessário durante o stale review) | COMMENT |
| LOW | docker-compose.yml | 1 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| LOW | docker-compose.prod.yml | 1 | # ────────────────────────────────────────────────────────────────────── | COMMENT |
| LOW | @omniroute/opencode-plugin/src/index.ts | 461 | // baseURL (some auth backends stash it alongside the key), else empty. | COMMENT |
| LOW | @omniroute/opencode-plugin/src/index.ts | 2701 | // Prepend upstream provider label (e.g. `Claude - Claude Opus 4.7`) | COMMENT |
| LOW | @omniroute/opencode-plugin/src/index.ts | 2721 | models[model.id] = model; | COMMENT |
| LOW | @omniroute/opencode-plugin/src/index.ts | 2801 | // Synthesize a member entry that contributes only the | COMMENT |
| LOW | @omniroute/opencode-plugin/src/index.ts | 2881 | const comboKey = buildComboKey(combo, usedComboKeys, resolved.omnirouteProviderId); | COMMENT |
| LOW | @omniroute/opencode-plugin/src/index.ts | 3361 | * test can independently assert the one-shot semantics. Not part of the | COMMENT |
| LOW | @omniroute/opencode-plugin/src/index.ts | 3601 | if (canonicalDedup.has(raw.id)) continue; | COMMENT |
| LOW | bin/_ops-common.sh | 1 | # bin/_ops-common.sh — shared helpers for the OmniRoute ops runbook scripts. | COMMENT |
| LOW | bin/rollback.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | open-sse/config/providerErrorRules.ts | 41 | // tell. Without this rule, an exhausted org quota would be classified as | COMMENT |
| LOW | open-sse/config/antigravityModelAliases.ts | 161 | export const ANTIGRAVITY_MODEL_ALIASES = Object.freeze({ | COMMENT |
| LOW | open-sse/config/constants.ts | 21 | // set, unless STREAM_READINESS_TIMEOUT_MS is specified directly. This must stay | COMMENT |
| LOW | open-sse/config/agyModels.ts | 1 | // Antigravity CLI (`agy`) model catalog. | COMMENT |
| LOW | open-sse/config/providers/registry/clinepass/index.ts | 1 | import type { RegistryEntry } from "../../shared.ts"; | COMMENT |
| LOW | open-sse/config/providers/registry/tokenrouter/index.ts | 1 | import type { RegistryEntry } from "../../shared.ts"; | COMMENT |
| LOW | open-sse/config/providers/registry/factory/index.ts | 1 | import type { RegistryEntry } from "../../shared.ts"; | COMMENT |
| LOW | open-sse/utils/proxyDispatcher.ts | 61 | keepAliveMaxTimeout: timeouts.fetchKeepAliveTimeoutMs, | COMMENT |
| LOW | open-sse/utils/proxyDispatcher.ts | 461 | : createSocksDispatcherWithFamily( | COMMENT |
| LOW | open-sse/utils/responsesCommentaryDrop.ts | 1 | // open-sse/utils/responsesCommentaryDrop.ts | COMMENT |
| LOW | open-sse/utils/stream.ts | 1601 | } | COMMENT |
| LOW | open-sse/utils/diagnostics.ts | 201 | const status = typeof body.status === "string" ? body.status : ""; | COMMENT |
| LOW | open-sse/utils/sha3-512.ts | 1 | // Runtime-portable SHA3-512 (FIPS-202). | COMMENT |
| LOW | open-sse/utils/cacheControlPolicy.ts | 81 | // #3088 — Xiaomi MiMo honors OpenAI-format cache_control breakpoints. Without | COMMENT |
| LOW | open-sse/translator/deepseekWebTools.ts | 1 | // DeepSeek-web-specific tool-call translation. | COMMENT |
| LOW | open-sse/translator/paramSupport.ts | 1 | // Strip request params a given provider/model rejects upstream (e.g. HTTP 400). | COMMENT |
| LOW | open-sse/translator/paramSupport.ts | 41 | drop: ["thinking", "reasoning_effort"], | COMMENT |
| LOW | open-sse/translator/response/openai-responses.ts | 1041 | // Emit as `delta.reasoning_content` — matches the shape used by the | COMMENT |
| LOW | open-sse/translator/response/openai-to-claude.ts | 221 | COMMENT | |
| LOW | open-sse/translator/request/openai-responses.ts | 81 | COMMENT | |
| LOW | open-sse/translator/request/openai-to-claude.ts | 141 | COMMENT | |
| LOW | open-sse/translator/request/openai-to-claude.ts | 641 | // outbound request has extended thinking enabled AND this assistant turn contains a | COMMENT |
| LOW | open-sse/translator/request/antigravity-to-openai.ts | 101 | // truncated history whose first turn is a `functionResponse` with no preceding | COMMENT |
| LOW | open-sse/translator/request/openai-to-kiro.ts | 401 | if (item.userInputMessage && !item.userInputMessage.modelId) { | COMMENT |
| LOW | open-sse/translator/helpers/openaiHelper.ts | 41 | // context growth — but reasoning-replay providers (DeepSeek V4, Kimi K2, etc.) | COMMENT |
| LOW | open-sse/translator/helpers/claudeHelper.ts | 1 | // Claude helper functions for translator | COMMENT |
| LOW | open-sse/translator/helpers/claudeHelper.ts | 241 | // and don't speak its signature scheme. They expect plain `thinking { text }` | COMMENT |
| LOW | open-sse/translator/helpers/claudeHelper.ts | 401 | // (translator/index.ts:165-168), so any provider that lands here has | COMMENT |
| LOW | open-sse/translator/helpers/claudeHelper.ts | 441 | for (const block of content) { | COMMENT |
| LOW | open-sse/translator/helpers/jsonUtil.ts | 1 | // Safe JSON.parse helper shared by the translator layer. | COMMENT |
| LOW | open-sse/executors/cursor.ts | 281 | // Captured tool calls (for JSON-mode aggregation). Each entry maps to | COMMENT |
| LOW | open-sse/executors/cursor.ts | 541 | // thinking field, after a final `</think>` marker. Emit the post-marker | COMMENT |
| LOW | open-sse/executors/cursor.ts | 601 | } else if (d.kind === "turn_ended") { | COMMENT |
| LOW | open-sse/executors/cursor.ts | 1101 | headers, | COMMENT |
| LOW | open-sse/executors/base.ts | 621 | // wiring so multi-account Codex (rotating refresh tokens) stops | COMMENT |
| LOW | open-sse/executors/base.ts | 801 | tb.tools = sanitizeClaudeToolSchemas(tb.tools); | COMMENT |
| LOW | open-sse/executors/base.ts | 1101 | // stripTrailingAssistantOrphanToolUse catches the case where the | COMMENT |
| LOW | open-sse/executors/base.ts | 1121 | tb.messages = stripTrailingAssistantForProvider(stripped, this.provider); | COMMENT |
| LOW | open-sse/executors/github.ts | 141 | // (tool_use, tool_result, thinking) untouched when using Claude models, which makes | COMMENT |
| LOW | open-sse/executors/windsurf.ts | 261 | // ─── Protobuf response decoder ─────────────────────────────────────────────── | COMMENT |
| 233 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | open-sse/mcp-server/toolCardinality.ts | 137 | // Step 1: filter by scope / explicit allow, then apply deny. | COMMENT |
| LOW | open-sse/mcp-server/toolCardinality.ts | 156 | // Step 2: cap by maxTools. A negative max would silently drop tail entries via | COMMENT |
| LOW | open-sse/translator/index.ts | 218 | // Step 1: source -> openai (if source is not openai) | COMMENT |
| LOW | open-sse/translator/index.ts | 248 | // Step 2: openai -> target (if target is not openai) | COMMENT |
| LOW | open-sse/translator/index.ts | 512 | // Step 1: target -> openai (if target is not openai) | COMMENT |
| LOW | open-sse/translator/index.ts | 525 | // Step 2: openai -> source (if source is not openai) | COMMENT |
| LOW | open-sse/handlers/videoGeneration.ts | 189 | // Step 1: create async task (X-DashScope-Async: enable) | COMMENT |
| LOW | open-sse/handlers/videoGeneration.ts | 212 | // Step 2: poll statusUrl/{task_id} until terminal | COMMENT |
| LOW⚡ | open-sse/handlers/audioTranscription.ts | 207 | // Step 1: Upload the audio file | COMMENT |
| LOW | open-sse/handlers/audioTranscription.ts | 224 | // Step 2: Submit transcription request | COMMENT |
| LOW | open-sse/handlers/audioTranscription.ts | 244 | // Step 3: Poll for completion (max 120s) | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 336 | // Step 1: Build base request | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 339 | // Step 2: Remap tool names | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 346 | // Step 5: Cache control | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 388 | // Step 6: Obfuscation (optional, per-provider setting) | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 393 | // Step 7: Serialize with CCH placeholder (strip internal sentinel fields) | COMMENT |
| LOW⚡ | open-sse/services/claudeCodeCompatible.ts | 397 | // Step 8: Sign with xxHash64 | COMMENT |
| LOW | open-sse/services/compression/aggressive.ts | 68 | // Step 1: Tool-result compression | COMMENT |
| LOW | open-sse/services/compression/aggressive.ts | 107 | // Step 2: Progressive aging | COMMENT |
| LOW | open-sse/services/compression/aggressive.ts | 121 | // Step 3: Fallback summarizer for remaining long messages | COMMENT |
| LOW⚡ | tests/unit/executor-huggingchat.test.ts | 76 | // Step 1: conversation creation succeeds. | COMMENT |
| LOW⚡ | tests/unit/executor-huggingchat.test.ts | 82 | // Step 2: the parent-message GET fails -> fetchInitialParentMessageId -> null. | COMMENT |
| LOW⚡ | tests/unit/antigravity-discovery-bootstrap.test.ts | 221 | // Step 1: bootstrap project (what route.ts now does before the models loop). | COMMENT |
| LOW⚡ | tests/unit/antigravity-discovery-bootstrap.test.ts | 224 | // Step 2: simulate a :models discovery request (what the loop does). | COMMENT |
| LOW | …nit/translator-resp-openai-responses-roundtrip.test.ts | 22 | // Step 1: Responses API format → Chat Completions format | COMMENT |
| LOW | …nit/translator-resp-openai-responses-roundtrip.test.ts | 62 | // Step 2: That Chat Completions chunk → Responses API events | COMMENT |
| LOW⚡ | …nit/translator-resp-openai-responses-roundtrip.test.ts | 116 | // Step 1: Responses → OpenAI (Chat Completions) | COMMENT |
| LOW | …nit/translator-resp-openai-responses-roundtrip.test.ts | 155 | // Step 2: OpenAI → Responses | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 411 | // Step 1: Initial state - track extra keys | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 415 | // Step 2: First request - should get primary key | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 420 | // Step 3: Simulate 401 failure on primary key | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 425 | // Step 4: Retry - should get a valid key (primary is still active, but round-robin may pick extra) | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 432 | // Step 5: Second 401 failure | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 437 | // Step 6: Third 401 failure - now primary becomes invalid | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 442 | // Step 7: Next request - should skip invalid primary and return extra key | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 449 | // Step 8: Verify the invalid key count | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 452 | // Step 9: A3 guard check - connection with extra keys should NOT be disabled | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 457 | // Step 10: Success on extra key - mark it as successful | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 463 | // Step 11: Recover primary key | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 468 | // Step 12: Next request - can use primary again | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 619 | // Step 1: T07 code in chatCore.ts records key failure | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 622 | // Step 2: A3 guard in chat.ts checks if connection has extra keys | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 627 | // Step 3: With A3 guard, markAccountUnavailable should be skipped | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 630 | // Step 4: Next request should get backup key | COMMENT |
| LOW⚡ | tests/unit/api-key-rotator-health.test.ts | 639 | // Step 5: Connection remains usable | COMMENT |
| LOW | tests/unit/combo-context-requirements.test.ts | 241 | // Step 1: Filter by minContextWindow | COMMENT |
| LOW | tests/unit/combo-context-requirements.test.ts | 255 | // Step 2: Sort by context size if preferLargeContext | COMMENT |
| LOW | tests/unit/dashboard/batch/sanitization.test.tsx | 156 | // Step 1: select provider + model → Next | COMMENT |
| LOW | tests/unit/dashboard/batch/sanitization.test.tsx | 170 | // Step 2: inject file | COMMENT |
| LOW⚡ | tests/integration/compression-pipeline.test.ts | 37 | // Step 1: Select strategy | COMMENT |
| LOW⚡ | tests/integration/compression-pipeline.test.ts | 41 | // Step 2: Apply compression | COMMENT |
| LOW⚡ | tests/integration/compression-pipeline.test.ts | 46 | // Step 3: Verify stats | COMMENT |
| LOW | src/app/api/translator/translate/route.ts | 96 | // Step 1: Client → Source (detect format) | COMMENT |
| LOW | src/app/api/translator/translate/route.ts | 112 | // Step 2: Source → OpenAI | COMMENT |
| LOW | src/app/api/translator/translate/route.ts | 137 | // Step 3: OpenAI → Target | COMMENT |
| LOW | src/app/api/translator/translate/route.ts | 162 | // Step 4: Build final request with real URL and headers | COMMENT |
| LOW | src/app/api/system/version/route.ts | 294 | // Step 1: Install | COMMENT |
| LOW | src/app/api/system/version/route.ts | 311 | // Step 2: Rebuild native modules (critical for better-sqlite3) | COMMENT |
| LOW | src/app/api/system/version/route.ts | 325 | // Step 3: Restart PM2 | COMMENT |
| LOW | src/app/api/sync/cloud/route.ts | 125 | // Step 1: Sync data to cloud | COMMENT |
| 33 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | open-sse/mcp-server/__tests__/httpAuthContext.test.ts | 54 | headers: { "x-api-key": "placeholder" }, | CODE |
| LOW | tests/unit/antigravity-weekly-quota-4017.test.ts | 186 | accessToken: "fake-token-weekly-unique", | CODE |
| LOW | tests/unit/antigravity-weekly-quota-4017.test.ts | 231 | accessToken: "fake-token-weekly-unavailable", | CODE |
| LOW | tests/unit/claudeAuthFile.test.ts | 250 | const email = "user@example.com"; | CODE |
| LOW | tests/unit/claudeAuthFile.test.ts | 328 | displayName: "John Doe", | CODE |
| LOW | tests/unit/claudeAuthFile.test.ts | 331 | assert.equal(extractClaudeEmail(conn), "John Doe"); | CODE |
| LOW⚡ | tests/unit/codex-import-route.test.ts | 53 | email: "user@example.com", | CODE |
| LOW⚡ | tests/unit/codex-import-route.test.ts | 58 | assert.equal(result.data.email, "user@example.com"); | CODE |
| LOW | tests/unit/antigravity-usage-service.test.ts | 26 | accessToken: "fake-token", | CODE |
| LOW | tests/unit/db-providers-access-token-1290.test.ts | 52 | email: "user@example.com", | CODE |
| LOW | tests/unit/db-providers-access-token-1290.test.ts | 59 | email: "user@example.com", | CODE |
| LOW | …nit/antigravity-oauth-postexchange-nonblocking.test.ts | 61 | if (u.includes("userinfo")) return jsonRes({ email: "user@example.com" }); | CODE |
| LOW | tests/unit/executor-command-code.test.ts | 48 | credentials: { apiKey: "fake-key" }, | CODE |
| LOW | tests/unit/openapi-spec-example-body.test.ts | 26 | "user@example.com" | CODE |
| LOW | tests/unit/db-api-key-groups.test.ts | 75 | const result = addKeyToGroup("fake-key-id", group.id); | CODE |
| LOW | tests/unit/codex-connection-edit-6562.test.ts | 75 | email: "user@example.com", | CODE |
| LOW | tests/unit/antigravity-discovery-bootstrap.test.ts | 48 | const projectId = await ensureAntigravityProjectAssigned("fake-token-1", mockFetch); | CODE |
| LOW | tests/unit/antigravity-discovery-bootstrap.test.ts | 54 | getAntigravityProjectFromCache("fake-token-1"), | CODE |
| LOW⚡ | tests/unit/antigravity-discovery-bootstrap.test.ts | 71 | await ensureAntigravityProjectAssigned("fake-token-2", mockFetch); | CODE |
| LOW⚡ | tests/unit/antigravity-discovery-bootstrap.test.ts | 72 | await ensureAntigravityProjectAssigned("fake-token-2", mockFetch); | CODE |
| LOW⚡ | tests/unit/antigravity-discovery-bootstrap.test.ts | 73 | await ensureAntigravityProjectAssigned("fake-token-2", mockFetch); | CODE |
| LOW | tests/unit/oauth-connection-test-timeout.test.ts | 41 | accessToken: "fake-token", | CODE |
| LOW | tests/unit/claudeAuthImport.test.ts | 217 | organization_name: "Acme Corp", | CODE |
| LOW | tests/unit/claudeAuthImport.test.ts | 246 | assert.equal(enriched.organizationName, "Acme Corp"); | CODE |
| LOW | tests/unit/codex-finalize-tokens.test.ts | 14 | email: "user@example.com", | CODE |
| LOW | tests/unit/codex-finalize-tokens.test.ts | 35 | assert.equal(tokenData.email, "user@example.com"); | CODE |
| LOW | tests/unit/oauth-connection-tokenexpiresat-5326.test.ts | 16 | email: "user@example.com", | CODE |
| LOW | tests/unit/deepseek-web.test.ts | 131 | data: { biz_data: { token: "test-access-token-123", email: "test@test.com" } }, | CODE |
| LOW | tests/unit/streamingPiiTransform.test.ts | 194 | !output.includes("user@example.com"), | CODE |
| LOW⚡ | tests/unit/antigravity-credits.test.ts | 70 | const credentials = { email: "user@example.com", sub: "abc123" }; | CODE |
| LOW⚡ | tests/unit/antigravity-credits.test.ts | 71 | const providerSpecificData = { email: "user@example.com", sub: "abc123" }; | CODE |
| LOW | tests/unit/codex-auth-import-expiry.test.ts | 31 | email: "user@example.com", | CODE |
| LOW | tests/unit/custom-headers-provider-nodes.test.ts | 272 | Authorization: "Bearer fake-token", | CODE |
| LOW | tests/unit/custom-headers-provider-nodes.test.ts | 273 | "x-api-key": "fake-key", | CODE |
| LOW⚡ | tests/unit/kiro-auto-import-name-dedup-3615.test.ts | 44 | email: "user@example.com", | CODE |
| LOW⚡ | tests/unit/kiro-auto-import-name-dedup-3615.test.ts | 49 | assert.equal(name, "user@example.com"); | CODE |
| LOW | tests/unit/oauth-connection-test-codex-endpoint.test.ts | 121 | accessToken: "fake-token", | CODE |
| LOW | tests/unit/antigravity-usage-fetcher.test.ts | 17 | accessToken: "fake-token", | CODE |
| LOW | …sts/unit/antigravity-local-usage-fallback-3821.test.ts | 73 | accessToken: "fake-token-local-usage-unique", | CODE |
| LOW | …sts/unit/antigravity-local-usage-fallback-3821.test.ts | 109 | accessToken: "fake-token-local-usage-empty", | CODE |
| LOW | tests/unit/agy-usage-quota.test.ts | 37 | accessToken: "fake-token", | CODE |
| LOW | …nit/ui/logs-page-detail-modal-reopen-on-close.test.tsx | 109 | account: "user@example.com", | CODE |
| LOW | tests/unit/ui/provider-plan-config.test.tsx | 43 | { id: "conn_2", provider: "anthropic", email: "user@example.com" }, | CODE |
| LOW | tests/unit/shared/components/ProxyConfigModal.test.tsx | 109 | (item) => item.getAttribute("placeholder") === placeholder | CODE |
| LOW | tests/unit/compression/benchmark.test.ts | 23 | "Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n".repeat(10) + | CODE |
| LOW | tests/unit/compression/benchmark.test.ts | 23 | "Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n".repeat(10) + | CODE |
| LOW | tests/unit/compression/harness.test.ts | 80 | const longInput = "lorem ipsum dolor sit amet ".repeat(40); | CODE |
| LOW | tests/unit/compression/harness.test.ts | 80 | const longInput = "lorem ipsum dolor sit amet ".repeat(40); | CODE |
| LOW | tests/integration/liveGeminiShared.ts | 1221 | street: "123 Main St", | CODE |
| LOW | src/app/api/openapi/spec/route.ts | 66 | if (schema.format === "email") return "user@example.com"; | CODE |
| LOW | …viders/[id]/components/modals/ImportCodexAuthModal.tsx | 424 | placeholder="user@example.com" | CODE |
| LOW | …s/[id]/components/modals/__tests__/connModals.test.tsx | 208 | email: "user@example.com", | CODE |
| LOW | …d/providers/[id]/components/__tests__/phase1d.test.tsx | 99 | email: "user@example.com", | CODE |
| LOW | src/lib/services/bootstrap.ts | 97 | ? await getOrCreateApiKey(cfg.tool).catch(() => "placeholder") | CODE |
| LOW | src/i18n/messages/tr.json | 5426 | "placeholder": "__MISSING__:/api/mcp/v2/", | CODE |
| LOW | src/i18n/messages/tr.json | 5436 | "placeholder": "__MISSING__:Current management password", | CODE |
| LOW | src/i18n/messages/hu.json | 5426 | "placeholder": "__MISSING__:/api/mcp/v2/", | CODE |
| LOW | src/i18n/messages/hu.json | 5436 | "placeholder": "__MISSING__:Current management password", | CODE |
| LOW | src/i18n/messages/mr.json | 5934 | "placeholder": "__MISSING__:/api/mcp/v2/", | CODE |
| LOW | src/i18n/messages/mr.json | 5944 | "placeholder": "__MISSING__:Current management password", | CODE |
| 80 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | tests/unit/guide-settings-route.test.ts | 179 | assert.ok(content.provider.omniroute.options.apiKey.startsWith("sk-")); | CODE |
| CRITICAL | tests/unit/guide-settings-route.test.ts | 253 | assert.ok(content.provider.omniroute.options.apiKey.startsWith("sk-")); | CODE |
| CRITICAL | tests/unit/i18n-cli-namespaces.test.ts | 46 | pt.cliCommon.concept.code.phrase.includes("código"), | CODE |
| CRITICAL | tests/unit/batch_api.test.ts | 452 | !result.response.body.error.message.includes("Unexpected token"), | CODE |
| CRITICAL | tests/unit/translator-openai-to-gemini.test.ts | 153 | assert.deepEqual(cleaned.properties.payload.properties.nested.required.sort(), ["a", "b"]); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | config/quality/file-size-baseline.json | 3 | "_rebaseline_2026_07_07_v3846_release_close": "Release v3.8.46 Phase 0 (generate-release) — drift de ciclo absorvido n | CODE |
| LOW⚡ | config/quality/file-size-baseline.json | 141 | "_rebaseline_2026_07_02_5816_qoder": "PR #5816 (@AgentKiller45, qoder PAT via qodercli): qoderCli.ts 666->989, new-a | CODE |
| LOW⚡ | config/quality/file-size-baseline.json | 143 | "_rebaseline_pr1043_minimax_tts": "Upstream port decolua/9router#1043 (toanalien) own growth: audioSpeech.ts 965->10 | CODE |
| MEDIUM⚡ | config/quality/file-size-baseline.json | 152 | "_rebaseline_2026_06_22_4644_deepseek_web_tools": "PR #4644 (BugsBag/robust deepseek-web tool-call parsing): open-ss | CODE |
| MEDIUM | config/quality/file-size-baseline.json | 359 | "_rebaseline_2026_06_13_2743d_skipbreaker": "Re-baseline #2743 gap-d (testar consumer do skipProviderBreaker): combo.t | CODE |
| MEDIUM | config/quality/file-size-baseline.json | 380 | "_rebaseline_2026_07_02_5899_airforce_v1_discovery": "PR #5904 own growth: provider-models-route.test.ts 1628->1752 (+ | CODE |
| MEDIUM | open-sse/config/codexInstructions.ts | 33 | ## Codex CLI harness, sandboxing, and approvals | COMMENT |
| MEDIUM | tests/unit/combo-response-validation-failover.test.ts | 4 | * Mirrors the #5085 empty-content failover harness (2 legs, different providers). | COMMENT |
| MEDIUM | scripts/i18n/i18n_autotranslate.py | 100 | # A true robust implementation would diff against the English source. | COMMENT |
| MEDIUM | .github/workflows/ci.yml | 297 | # authenticated via GITHUB_TOKEN (5000 req/hr) — robust under load. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | …nit/translator-resp-openai-responses-roundtrip.test.ts | 113 | print("Done") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/lib/providers/validation/audioMiscProviders.ts | 116 | // Use credit check endpoint as requested by user based on Kie.ai docs. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docker-compose.yml | 14 | # Usage: | COMMENT |
| LOW⚡ | docker-compose.prod.yml | 8 | # Usage: | COMMENT |
| LOW | scripts/ci/should-promote-latest.sh | 13 | # Usage: | COMMENT |
| LOW | scripts/release/merge-train.sh | 14 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | scripts/i18n/validate_translation.py | 371 | source_str = str(source_val)[:25] if source_val else "(null)" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/i18n/check_translations.py | 112 | # Check if key matches any full key in en.json | COMMENT |
| LOW | scripts/i18n/validate_translation.py | 598 | # Check if translation file exists | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/i18n/validate_translation.py | 99 | CODE | |
| LOW | scripts/i18n/validate_translation.py | 386 | CODE | |
| LOW | scripts/i18n/validate_translation.py | 581 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .github/workflows/electron-release.yml | 115 | # Create a clean temp profile directory to avoid this. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/i18n/i18n_autotranslate.py | 23 | CODE | |
| LOW | scripts/i18n/i18n_autotranslate.py | 24 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/i18n/i18n_autotranslate.py | 91 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/lib/evals/evalRunner/builtinSuites.ts | 578 | "Find and fix the bug: async function getData() { const response = fetch('/api/data'); return response.jso | CODE |