Repository Analysis

OtterMind/Chat2DB

AI-driven database tool and SQL client, The hottest GUI client, supporting MySQL, Oracle, PostgreSQL, DB2, SQL Server, DB2, SQLite, H2, ClickHouse, and more.

2.5 Likely human-written View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of OtterMind/Chat2DB, a Java project with 25,862 GitHub stars. SynthScan v2.0 examined 335,900 lines of code across 3216 source files, recording 233 pattern matches distributed across 12 syntactic categories. The overall adjusted score of 2.5 places this repository in the Likely human-written 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).

2.5
Adjusted Score
2.5
Raw Score
100%
Time Factor
2026-07-14
Last Push
25.9K
Stars
Java
Language
335.9K
Lines of Code
3.2K
Files
233
Pattern Hits
2026-07-14
Scan Date
0.02
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

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.

Severity Breakdown

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.

CRITICAL 46HIGH 10MEDIUM 2LOW 175

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 233 distinct pattern matches across 12 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.

Hallucination Indicators46 hits · 605 pts
SeverityFileLineSnippetContext
CRITICAL…i/src/main/java/ai/chat2db/spi/DefaultSQLExecutor.java750 if (type == null || !StringUtils.equals(type, ai.chat2db.community.domain.api.enums.parser.SqlTypeEnCODE
CRITICAL…i/src/main/java/ai/chat2db/spi/DefaultSQLExecutor.java769 if (type != null && StringUtils.equalsAnyIgnoreCase(type, ai.chat2db.community.domain.api.enums.parser.SCODE
CRITICAL…i/src/main/java/ai/chat2db/spi/DefaultSQLExecutor.java770 ai.chat2db.community.domain.api.enums.parser.SqlTypeEnum.ANONYMOUS_BLOCK.name())) {CODE
CRITICAL…i/src/main/java/ai/chat2db/spi/DefaultSQLExecutor.java824 if (type == null || !StringUtils.equals(type, ai.chat2db.community.domain.api.enums.parser.SqlTypeEnCODE
CRITICAL…i/src/main/java/ai/chat2db/spi/DefaultSQLExecutor.java845 if (type != null && StringUtils.equalsAnyIgnoreCase(type, ai.chat2db.community.domain.api.enums.parser.SCODE
CRITICAL…i/src/main/java/ai/chat2db/spi/DefaultSQLExecutor.java846 ai.chat2db.community.domain.api.enums.parser.SqlTypeEnum.ANONYMOUS_BLOCK.name())) {CODE
CRITICAL…i/src/main/java/ai/chat2db/spi/DefaultSQLExecutor.java885 if (type == null || !StringUtils.equals(type, ai.chat2db.community.domain.api.enums.parser.SqlTypeEnum.SCODE
CRITICAL…i/src/main/java/ai/chat2db/spi/DefaultSQLExecutor.java933 if (type == null || !StringUtils.equals(type, ai.chat2db.community.domain.api.enums.parser.SqlTypeEnum.SCODE
CRITICAL…va/ai/chat2db/community/tools/util/ExceptionUtils.java25 Throwable thr = org.apache.commons.lang3.exception.ExceptionUtils.getRootCause(throwable);CODE
CRITICAL…a/ai/chat2db/community/tools/util/EasyStringUtils.java20 if (!org.apache.commons.lang3.StringUtils.isNumeric(userId)) {CODE
CRITICAL…ai/chat2db/plugin/snowflake/SnowFlakeSyntaxPlugin.java11 return ai.chat2db.community.domain.api.enums.parser.DatabaseTypeEnum.SNOWFLAKE.name();CODE
CRITICAL…/java/ai/chat2db/plugin/oracle/OracleSyntaxPlugin.java10 return ai.chat2db.community.domain.api.enums.parser.DatabaseTypeEnum.ORACLE.name();CODE
CRITICAL…n/java/ai/chat2db/plugin/redis/type/SetTypeScript.java97 if (ai.chat2db.plugin.redis.constant.ActionConstants.DELETE.equals(field.getAction())) {CODE
CRITICAL…n/java/ai/chat2db/plugin/redis/type/SetTypeScript.java101 if (ai.chat2db.plugin.redis.constant.ActionConstants.CREATE.equals(field.getAction())) {CODE
CRITICAL…n/java/ai/chat2db/plugin/redis/type/SetTypeScript.java105 if (ai.chat2db.plugin.redis.constant.ActionConstants.UPDATE.equals(field.getAction())) {CODE
CRITICAL…ava/ai/chat2db/plugin/redis/type/StreamTypeScript.java109 if (ai.chat2db.plugin.redis.constant.ActionConstants.DELETE.equals(field.getAction())) {CODE
CRITICAL…ava/ai/chat2db/plugin/redis/type/StreamTypeScript.java113 if (ai.chat2db.plugin.redis.constant.ActionConstants.CREATE.equals(field.getAction())) {CODE
CRITICAL…ava/ai/chat2db/plugin/redis/type/StreamTypeScript.java117 if (ai.chat2db.plugin.redis.constant.ActionConstants.UPDATE.equals(field.getAction())) {CODE
CRITICAL…/java/ai/chat2db/plugin/redis/type/ListTypeScript.java97 if (ai.chat2db.plugin.redis.constant.ActionConstants.DELETE.equals(field.getAction())) {CODE
CRITICAL…/java/ai/chat2db/plugin/redis/type/ListTypeScript.java101 if (ai.chat2db.plugin.redis.constant.ActionConstants.CREATE.equals(field.getAction())) {CODE
CRITICAL…/java/ai/chat2db/plugin/redis/type/ListTypeScript.java105 if (ai.chat2db.plugin.redis.constant.ActionConstants.UPDATE.equals(field.getAction())) {CODE
CRITICAL…/java/ai/chat2db/plugin/redis/type/HashTypeScript.java88 if (ai.chat2db.plugin.redis.constant.ActionConstants.DELETE.equals(field.getAction())) {CODE
CRITICAL…/java/ai/chat2db/plugin/redis/type/HashTypeScript.java92 if (ai.chat2db.plugin.redis.constant.ActionConstants.CREATE.equals(field.getAction())) {CODE
CRITICAL…/java/ai/chat2db/plugin/redis/type/HashTypeScript.java96 if (ai.chat2db.plugin.redis.constant.ActionConstants.UPDATE.equals(field.getAction())) {CODE
CRITICAL…/java/ai/chat2db/plugin/redis/type/ZSetTypeScript.java80 if (ai.chat2db.plugin.redis.constant.ActionConstants.DELETE.equals(field.getAction())) {CODE
CRITICAL…/java/ai/chat2db/plugin/redis/type/ZSetTypeScript.java84 if (ai.chat2db.plugin.redis.constant.ActionConstants.CREATE.equals(field.getAction())) {CODE
CRITICAL…/java/ai/chat2db/plugin/redis/type/ZSetTypeScript.java88 if(ai.chat2db.plugin.redis.constant.ActionConstants.UPDATE.equals(field.getAction())){CODE
CRITICAL…/ai/chat2db/community/jcef/utils/NetworkProxyUtil.java17 NetworkProxySettings settings = ai.chat2db.community.tools.network.NetworkProxyUtil.getSettings();CODE
CRITICAL…/ai/chat2db/community/jcef/utils/NetworkProxyUtil.java25 ai.chat2db.community.tools.network.NetworkProxyUtil.validate(settings);CODE
CRITICAL…/ai/chat2db/community/jcef/utils/NetworkProxyUtil.java27 ai.chat2db.community.tools.network.NetworkProxyUtil.toChromiumProxyServer(settings));CODE
CRITICAL…/ai/chat2db/community/jcef/utils/NetworkProxyUtil.java28 String bypassList = ai.chat2db.community.tools.network.NetworkProxyUtil.toChromiumBypassList(settings.getNoProxyCODE
CRITICAL…i/chat2db/community/jcef/utils/SystemSettingsUtil.java21 return ai.chat2db.community.tools.util.SystemSettingsUtil.getCachePath();CODE
CRITICAL…i/chat2db/community/jcef/utils/SystemSettingsUtil.java25 ai.chat2db.community.tools.util.SystemSettingsUtil.setProperty(key, newValue);CODE
CRITICAL…i/chat2db/community/jcef/utils/SystemSettingsUtil.java29 return ai.chat2db.community.tools.util.SystemSettingsUtil.getProperty(key);CODE
CRITICAL…i/chat2db/community/jcef/utils/SystemSettingsUtil.java33 return ai.chat2db.community.tools.util.SystemSettingsUtil.getBooleanProperty(key, defaultValue);CODE
CRITICAL…i/chat2db/community/jcef/utils/SystemSettingsUtil.java37 return ai.chat2db.community.tools.util.SystemSettingsUtil.isMcpEnabled();CODE
CRITICAL…i/chat2db/community/jcef/utils/SystemSettingsUtil.java41 return ai.chat2db.community.tools.util.SystemSettingsUtil.getOrCreateMcpAuthToken();CODE
CRITICAL…i/chat2db/community/jcef/utils/SystemSettingsUtil.java45 return ai.chat2db.community.tools.util.SystemSettingsUtil.resetMcpAuthToken();CODE
CRITICAL…b/api/model/response/db/SqlCompletionResponseTest.java18 ai.chat2db.community.domain.api.model.completion.result.SqlCompletionResponse.success(7, 10,CODE
CRITICAL…nity/web/api/converter/cli/CliDatasourceConverter.java35 new ai.chat2db.community.domain.api.model.request.cli.CliConnectionTestRequest();CODE
CRITICAL…b/community/web/api/converter/cli/CliWebConverter.java41 new ai.chat2db.community.domain.api.model.request.cli.CliTablesListRequest();CODE
CRITICAL…b/community/web/api/converter/cli/CliWebConverter.java49 new ai.chat2db.community.domain.api.model.request.cli.CliTableDetailRequest();CODE
CRITICAL…b/community/web/api/converter/cli/CliWebConverter.java57 new ai.chat2db.community.domain.api.model.request.cli.CliSqlQueryRequest();CODE
CRITICAL…db/community/web/api/config/console/ConsoleHelper.java354 if (com.dtflys.forest.utils.StringUtils.isNotEmpty(language)) {CODE
CRITICAL…unity/web/api/adapter/db/cell/CellValueWebAdapter.java132 return org.apache.commons.lang3.StringUtils.defaultIfBlank(prefix, "cell-value");CODE
CRITICAL…/main/java/ai/chat2db/community/start/Application.java113 if (org.apache.commons.lang3.StringUtils.isEmpty(x)) {CODE
Hyper-Verbose Identifiers130 hits · 137 pts
SeverityFileLineSnippetContext
LOW…db/plugin/oracle/value/sub/OracleAnyDataProcessor.java8public class OracleAnyDataProcessor extends DefaultValueProcessor {CODE
LOWchat2db-community-client/src/blocks/AI/index.tsx42function splitIncompleteChartBlock(text: string): { textBeforeChart: string; hasIncompleteChart: boolean } {CODE
LOWchat2db-community-client/src/blocks/AI/index.tsx450function truncateCollapsedThoughtPreview(text?: string, maxLength = COLLAPSED_THOUGHT_PREVIEW_MAX_LENGTH) {CODE
LOWchat2db-community-client/src/blocks/AI/index.tsx461function isLikelySameSessionFromPrefix(serverMessages: IChatItem[], snapshotMessages: IChatItem[]) {CODE
LOW…cks/SearchResult/components/ViewData/largeCellValue.ts81export function getLargeCellRequestFormat(CODE
LOW…cks/SearchResult/components/ViewData/largeCellValue.ts88export function getLargeCellDownloadFormat(displayMode?: LargeValueType | string): LargeCellDownloadFormat {CODE
LOW…cks/SearchResult/components/ViewData/largeCellValue.ts101export function getNextLargeCellChunkLimit(params: {CODE
LOW…cks/SearchResult/components/ViewData/largeCellValue.ts133export function getLargeCellImagePreviewSrc(params: {CODE
LOW…cks/SearchResult/components/ViewData/largeCellValue.ts153export function isLargeCellTokenExpiredError(error: any) {CODE
LOW…cks/SearchResult/components/ViewData/largeCellValue.ts157export function getLargeCellDisplayMessage(message?: string | null) {CODE
LOW…SearchResult/components/SQLPreviewExecute/updateSql.ts28export function buildUpdateSqlRequestParams(operations: UpdateSqlOperation[], resultData: UpdateSqlResultData) {CODE
LOW…SearchResult/components/SQLPreviewExecute/updateSql.ts37export async function resolveUpdateExecuteParams(params: {CODE
LOW…mponents/ResultSetTable/event/onPasteData/pasteData.ts70function normalizeCreateRowPasteCell(CODE
LOWchat2db-community-client/src/utils/url.ts93export function updateQueryStringParameter(key, value) {CODE
LOWchat2db-community-client/src/utils/sqlInClipboard.ts1export function parseClipboardTextToSqlInTokens(text: string): string[] {CODE
LOWchat2db-community-client/src/utils/index.ts159export function logoutClearSomeLocalStorage() {CODE
LOWchat2db-community-client/src/utils/dom.tsx5export function insertOpenScreenAnimationExpand(element: React.ReactElement) {CODE
LOWchat2db-community-client/src/utils/dom.tsx13export function removeOpenScreenAnimation() {CODE
LOWchat2db-community-client/src/components/Tabs/index.tsx361 function isContextMenuTargetCurrent(intent: TabContextIntent) {CODE
LOWchat2db-community-client/src/components/Tabs/index.tsx380 function createTabContextMenuActions(tab: ITabItem): ContextMenuEntry<TabContextIntent>[] {CODE
LOW…omponents/SQLEditor/core/registerCompletionProvider.ts26export function registerCompletionProvider() {CODE
LOW…nents/SQLEditor/core/sqlCompletionSnippetNavigation.ts8export function shouldTriggerSnippetPlaceholderCompletion(CODE
LOW…rc/components/SQLEditor/core/sqlCompletionHintStore.ts62export function createSqlCompletionHintStore(): SqlCompletionHintStore {CODE
LOW…rc/components/SQLEditor/core/sqlCompletionHintStore.ts66export function sqlCompletionHintScopeFromRange(CODE
LOW…rc/components/SQLEditor/core/sqlCompletionModelMode.ts14export function isBackendCompletionDatabaseType(databaseType: DatabaseTypeCode | null | undefined): boolean {CODE
LOW…rc/components/SQLEditor/core/sqlCompletionModelMode.ts18export function setBackendCompletionModel(CODE
LOW…nents/SQLEditor/core/sqlCompletionBackendSuggestion.ts27export function getBackendCompletionItemLabel(CODE
LOW…nents/SQLEditor/core/sqlCompletionBackendSuggestion.ts44export function getBackendCompletionItemFilterText(candidate: BackendCompletionLabelSource): string {CODE
LOW…nents/SQLEditor/core/sqlCompletionBackendSuggestion.ts48export function getBackendCompletionItemInsertText(CODE
LOW…nents/SQLEditor/core/sqlCompletionBackendSuggestion.ts58export function getBackendCompletionItemEffectiveFilterText(CODE
LOW…nents/SQLEditor/core/sqlCompletionBackendSuggestion.ts68export function shouldTriggerQualifiedReferenceCompletion(candidate: BackendCompletionLabelSource): boolean {CODE
LOW…nents/SQLEditor/core/sqlCompletionBackendSuggestion.ts75export function getBackendCompletionItemDetail(candidate: BackendCompletionLabelSource): string {CODE
LOW…nents/SQLEditor/core/sqlCompletionBackendSuggestion.ts85export function getBackendCompletionItemDescription(candidate: BackendCompletionLabelSource): string {CODE
LOW…components/SQLEditor/core/sqlCompletionSuggestWidth.ts58export function measureCompletionSuggestWidth(CODE
LOW…components/SQLEditor/core/sqlCompletionSuggestWidth.ts84export function applyBackendCompletionSuggestWidth(CODE
LOW…components/SQLEditor/core/sqlCompletionSuggestWidth.ts99export function clearBackendCompletionSuggestWidth(): void {CODE
LOW…components/SQLEditor/core/sqlCompletionSuggestWidth.ts153function scheduleSuggestWidgetLayout(editor: monaco.editor.ICodeEditor | null | undefined, width: number): void {CODE
LOW…components/SQLEditor/core/sqlCompletionSuggestWidth.ts221function prepareSuggestWidgetForEditorBoundary(editor: monaco.editor.ICodeEditor | null | undefined): void {CODE
LOW…components/SQLEditor/core/sqlCompletionSuggestWidth.ts260export function getBoundedEditorSuggestMaxWidth(editorWidth: number): number {CODE
LOW…components/SQLEditor/core/sqlCompletionSuggestWidth.ts270function getEditorSuggestMaxHeightBelow(editor: monaco.editor.ICodeEditor): number | null {CODE
LOW…components/SQLEditor/core/sqlCompletionSuggestWidth.ts286function applySuggestWidgetHorizontalBoundary(editor: monaco.editor.ICodeEditor, widgetNode?: HTMLElement): void {CODE
LOW…components/SQLEditor/core/sqlCompletionSuggestWidth.ts310export function getSuggestWidgetHorizontalOffset(CODE
LOW…src/components/SQLEditor/helper/sqlInputPunctuation.ts107export function sqlPunctuationFromKeyboardEvent(event: KeyboardLikeEvent | null | undefined) {CODE
LOW…src/components/SQLEditor/helper/sqlInputPunctuation.ts125export function normalizeSqlInputPunctuation(text: string | null | undefined) {CODE
LOW…src/components/SQLEditor/helper/sqlInputPunctuation.ts134export function shouldNormalizeSqlInputPunctuation(sql: string | null | undefined, offset: number) {CODE
LOW…src/components/SQLEditor/helper/sqlInputPunctuation.ts138function sqlPunctuationContextAtOffset(sql: string, offset: number): SqlPunctuationContext {CODE
LOW…lient/src/components/SQLEditor/helper/parameterHint.ts29export function parameterHintContextFromInsertValue(CODE
LOW…lient/src/components/SQLEditor/helper/parameterHint.ts52export function parameterHintContextFromRoutine(CODE
LOW…lient/src/components/SQLEditor/helper/parameterHint.ts73export function parameterHintContextFromEditorHints(CODE
LOW…lient/src/components/SQLEditor/helper/parameterHint.ts93function markActiveParameterHintItem(CODE
LOW…lient/src/components/SQLEditor/helper/parameterHint.ts114function getActiveParameterHintItemIndex(items: ParameterHintItem[], position: TextPosition): number {CODE
LOW…lient/src/components/SQLEditor/helper/parameterHint.ts141function isEditorHintActiveAtPosition(editorHint: ISqlEditorHintVO, position?: TextPosition | null) {CODE
LOW…rc/components/SQLEditor/helper/routineParameterHint.ts33export function isRoutineParameterHintPayload(value: unknown): value is RoutineParameterHintPayload {CODE
LOW…rc/components/SQLEditor/helper/routineParameterHint.ts41export function parseRoutineParameterDetail(detail: string | null | undefined): ParsedRoutineParameter[] {CODE
LOW…rc/components/SQLEditor/helper/routineParameterHint.ts52export function getRoutineParameterHintContext(CODE
LOW…rc/components/SQLEditor/helper/routineParameterHint.ts97export function routineParameterHintContextFromEditorHint(CODE
LOW…rc/components/SQLEditor/helper/routineParameterHint.ts135function parseRoutineParameterSegment(segment: string): ParsedRoutineParameter | null {CODE
LOW…rc/components/SQLEditor/helper/routineParameterHint.ts254function getNextOpenParenthesisIndex(lineContent: string, fromIndex: number) {CODE
LOW…/components/SQLEditor/helper/databaseObjectTreeNode.ts188function normalizeTreeNodeMatchValue(CODE
LOW…rc/components/SQLEditor/helper/insertValueHighlight.ts48export function getInsertValueHighlightRanges(statement: SqlStatement | null | undefined, selection: TextRange | null) {CODE
70 more matches not shown…
Cross-File Repetition10 hits · 50 pts
SeverityFileLineSnippetContext
HIGH…/src/test/java/PrestoCompletionSyntaxCoverageTest.java0commit; rollback; explain select * from events; show tables; describe events; call refresh_stats(); with daily as (selecSTRING
HIGH…ve/src/test/java/HiveCompletionSyntaxCoverageTest.java0commit; rollback; explain select * from events; show tables; describe events; call refresh_stats(); with daily as (selecSTRING
HIGH…c/test/java/SnowFlakeCompletionSyntaxCoverageTest.java0commit; rollback; explain select * from events; show tables; describe events; call refresh_stats(); with daily as (selecSTRING
HIGH…/src/test/java/DuckDBCompletionSyntaxCoverageTest.java0commit; rollback; explain select * from events; show tables; describe events; call refresh_stats(); with daily as (selecSTRING
HIGH…c/test/java/SnowFlakeCompletionSyntaxCoverageTest.java0merge into target_table t using source_table s on t.id = s.id when matched then update set name = s.name;STRING
HIGH…ve/src/test/java/HiveCompletionSyntaxCoverageTest.java0merge into target_table t using source_table s on t.id = s.id when matched then update set name = s.name;STRING
HIGH…c/test/java/StarrocksCompletionSyntaxCoverageTest.java0merge into target_table t using source_table s on t.id = s.id when matched then update set name = s.name;STRING
HIGH…completion/MysqlSqlCompletionScenarioCoverageTest.java0with paid_orders as( select * from orders where status='paid' ) select * from pa{caret}STRING
HIGH…lver/MysqlSqlCompletionLocalResultSetResolverTest.java0with paid_orders as( select * from orders where status='paid' ) select * from pa{caret}STRING
HIGH…olver/MysqlSqlCompletionRelationScopeResolverTest.java0with paid_orders as( select * from orders where status='paid' ) select * from pa{caret}STRING
Over-Commented Block35 hits · 35 pts
SeverityFileLineSnippetContext
LOW…ent/src/blocks/BI/Chart/form/config/wordCloudConfig.ts21 // component: 'ChartOptionCheckbox',COMMENT
LOW…client/src/blocks/BI/Chart/form/config/funnelConfig.ts21 title: i18n('dashboard.chart.chartOption'),COMMENT
LOW…ty-client/src/blocks/BI/Chart/form/config/pieConfig.ts41 // {COMMENT
LOW…s/ResultSetTable/event/onContextmenuCell/handleCopy.ts21 // //white-space:normal, continuous whitespace characters will be merged into one space, and the text will be COMMENT
LOW…s/ResultSetTable/event/onContextmenuCell/handleCopy.ts41 // .replace(/>/g, '&gt;') // replace > with &gt; to prevent XSS attacksCOMMENT
LOW…s/ResultSetTable/event/onContextmenuCell/handleCopy.ts61 // const dataHTML = setDataToHTML(copyData);COMMENT
LOW…ResultSetTable/event/onContextmenuCell/handlePaste.tsx221 // for (const item of clipboardItems) {COMMENT
LOW…b-community-client/src/blocks/PersonalCenter/index.tsx121 // {COMMENT
LOWchat2db-community-client/src/blocks/NewTree/index.tsx201COMMENT
LOW…2db-community-client/src/blocks/NewTree/treeConfig.tsx821 mysqlServerCOMMENT
LOW…t/src/blocks/NewTree/hooks/useCreateRightClickMenu.tsx1301 // handle: () => {COMMENT
LOWchat2db-community-client/src/typings/chat.ts261COMMENT
LOWchat2db-community-client/src/typings/chat.ts281// badFeedback?: boolean;COMMENT
LOWchat2db-community-client/src/typings/chat.ts301// questionId?: number;COMMENT
LOWchat2db-community-client/src/typings/dashboard.ts41 databaseInfo?: IDatabaseBaseInfo;COMMENT
LOWchat2db-community-client/src/typings/dashboard.ts61// dataSourceName?: string;COMMENT
LOWchat2db-community-client/src/utils/index.ts441 }COMMENT
LOWchat2db-community-client/src/utils/clear.ts1// import { clearOrgStore } from '@/store/organization';COMMENT
LOW…at2db-community-client/src/utils/sql/refreshTargets.ts61COMMENT
LOW…t/src/components/MonacoEditor/plugIn/arouseCopilot.tsx41 // const position = editorIns.getPosition();COMMENT
LOW…client/src/components/SQLEditor/core/setDecorations.ts61 rangeList[rangeList.length - 1].endColumn,COMMENT
LOW…components/SQLEditor/core/completionProviderManager.ts1461 applyBackendCompletionSuggestWidth(tips, this.findEditor(model.uri.toString()));COMMENT
LOW…b-community-client/src/components/UserStatus/index.tsx121 // Hide when more than one month remains.COMMENT
LOW…nity-client/src/components/ChangeAiTableInfo/index.tsx221 },COMMENT
LOW…community-client/src/components/NewBaseTable/index.tsx101 { isHighlightColumns: isHighlightColumns },COMMENT
LOW…-client/src/layouts/GlobalLayout/AppTitleBar/index.tsx81 ];COMMENT
LOW…-client/src/layouts/GlobalLayout/AppTitleBar/index.tsx101 // };COMMENT
LOWchat2db-community-client/src/hooks/useAbortRequest.ts61// xxxServer.xxx(params, { signal })COMMENT
LOWchat2db-community-client/src/main/src/menu.ts61 {COMMENT
LOWchat2db-community-client/src/pages/demo2/index.tsx21 // Instance-level hover provider.COMMENT
LOWchat2db-community-client/src/pages/demo2/index.tsx41 // const handleSql1Change = (value: string) => {COMMENT
LOWchat2db-community-client/src/pages/invite/style.ts41 `,COMMENT
LOWchat2db-community-client/src/pages/main/index.tsx81 // isLoad: false,COMMENT
LOW…nity-client/src/pages/main/chat/chatMenuList/index.tsx101 items: [COMMENT
LOW…-client/src/store/global/slices/hotUpdate/selectors.ts1// import { GlobalStore } from '@/store/global';COMMENT
Decorative Section Separators2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMchat2db-community-client/src/pages/main/index.tsx106 // ── Sidebar expand/collapse ──────────────────────────────────────────────COMMENT
MEDIUMchat2db-community-client/src/pages/main/index.tsx122 // ── Sidebar session history ──────────────────────────────────────────────COMMENT
Verbosity Indicators2 hits · 4 pts
SeverityFileLineSnippetContext
LOWchat2db-community-client/scripts/jcef-test.yml317 # Step 1: Get the SHA512 hash of the file using CertUtilCOMMENT
LOWchat2db-community-client/scripts/jcef-test.yml324 # Step 2: Convert hex string to bytes and then to Base64COMMENT
Structural Annotation Overuse2 hits · 4 pts
SeverityFileLineSnippetContext
LOWchat2db-community-client/scripts/jcef-test.yml317 # Step 1: Get the SHA512 hash of the file using CertUtilCOMMENT
LOWchat2db-community-client/scripts/jcef-test.yml324 # Step 2: Convert hex string to bytes and then to Base64COMMENT
Fake / Example Data2 hits · 2 pts
SeverityFileLineSnippetContext
LOW…db-community-oracle/src/main/resources/TEST_USER_1.sql220INSERT INTO "DEMO_TABLE" ("TEST_ID","TEST_VARCHAR2","TEST_NUMBER","TEST_DECIMAL","TEST_DATE","TEST_TIMESTAMP","TEST_CHARCODE
LOW…ent/src/components/SQLEditor/helper/keywords/oracle.ts1405 example: "SELECT JSON_OBJECT('id' VALUE 1, 'name' VALUE 'John Doe') AS json_object FROM DUAL;",CODE
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWchat2db-community-client/src/utils/cryptography.ts141// Usage exampleCOMMENT
TODO Padding1 hit · 2 pts
SeverityFileLineSnippetContext
LOWchat2db-community-client/src/service/base.tsx85 // TODO: Fix errorLevel errorCOMMENT
Excessive Try-Catch Wrapping1 hit · 1 pts
SeverityFileLineSnippetContext
LOW.github/workflows/jcef_release.yml555 except Exception as exc:CODE
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippetContext
LOW…mmunity-client/src/components/ConnectionEdit/index.tsx324 function getData() {CODE