Repository Analysis

JetBrains/ideavim

IdeaVim – A Vim engine for JetBrains IDEs

14.2 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of JetBrains/ideavim, a Kotlin project with 10,257 GitHub stars. SynthScan v2.0 examined 333,969 lines of code across 2191 source files, recording 4126 pattern matches distributed across 14 syntactic categories. The overall adjusted score of 14.2 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).

14.2
Adjusted Score
14.2
Raw Score
100%
Time Factor
2026-08-28
Last Push
10.3K
Stars
Kotlin
Language
334.0K
Lines of Code
2.2K
Files
4.1K
Pattern Hits
2026-08-29
Scan Date
0.14
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 29HIGH 281MEDIUM 14LOW 3802

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 4126 distinct pattern matches across 14 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.

Fake / Example Data3713 hits · 2825 pts
SeverityFileLineSnippetContext
LOWCONTRIBUTING.md106Lorem IpsumCODE
LOWCONTRIBUTING.md108Lorem ipsum dolor sit amet,CODE
LOWCONTRIBUTING.md108Lorem ipsum dolor sit amet,CODE
LOW…ins/ideavim/propertybased/RandomActionsPropertyTest.kt97 ${c}Lorem ipsum dolor sit amet,CODE
LOW…ins/ideavim/propertybased/RandomActionsPropertyTest.kt97 ${c}Lorem ipsum dolor sit amet,CODE
LOW…ins/plugins/ideavim/propertybased/samples/LoremText.kt12 Lorem Ipsumm dolor sit amet, consectetur adipiscing elit. Morbi gravida commodo orci, egestas placerat purus rhoncus nCODE
LOW…ins/plugins/ideavim/propertybased/samples/LoremText.kt12 Lorem Ipsumm dolor sit amet, consectetur adipiscing elit. Morbi gravida commodo orci, egestas placerat purus rhoncus nCODE
LOW…ns/plugins/ideavim/propertybased/samples/SimpleText.kt12 Lorem IpsumCODE
LOW…ns/plugins/ideavim/propertybased/samples/SimpleText.kt14 Lorem ipsum dolor sit amet,CODE
LOW…ns/plugins/ideavim/propertybased/samples/SimpleText.kt14 Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt23 val before = """ Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt23 val before = """ Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt105 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt105 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt109 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt109 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt115 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt115 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt119 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt119 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt132 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt132 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt138 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt138 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt151 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt151 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt157 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt157 | Lorem ipsum dolor sit amet,CODE
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt32 val after = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt32 val after = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt43 val before = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt43 val before = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt52 val after = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt52 val after = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt63 val before = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt63 val before = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt72 val after = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt72 val after = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt83 val before = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt83 val before = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt92 val after = """ Lorem ipsum dolor sit amet,STRING
LOW…im/ex/implementation/commands/ShiftRightCommandTest.kt92 val after = """ Lorem ipsum dolor sit amet,STRING
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt23 val before = """ Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt23 val before = """ Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt125 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt125 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt129 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt129 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt135 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt135 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt139 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt139 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt152 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt152 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt158 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt158 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt171 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt171 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt177 | Lorem ipsum dolor sit amet,CODE
LOW…vim/ex/implementation/commands/ShiftLeftCommandTest.kt177 | Lorem ipsum dolor sit amet,CODE
3653 more matches not shown…
Cross-File Repetition277 hits · 1385 pts
SeverityFileLineSnippetContext
HIGH…ins/ideavim/propertybased/RandomActionsPropertyTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ion/multiplecursors/VimMultipleCursorsExtensionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…vim/ex/implementation/commands/JoinLinesCommandTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ction/motion/text/MotionSectionForwardEndActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ns/plugins/ideavim/propertybased/samples/SimpleText.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…im/ex/implementation/commands/ShiftRightCommandTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…vim/ex/implementation/commands/ShiftLeftCommandTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…lugins/ideavim/extension/signature/VimSignatureTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…avim/ex/implementation/commands/MapClearCommandTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ideavim/ex/implementation/commands/UnMapCommandTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…g/jetbrains/plugins/ideavim/action/RepeatActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…rg/jetbrains/plugins/ideavim/action/MacroActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…lugins/ideavim/action/change/RepeatChangeActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…brains/plugins/ideavim/action/change/UndoActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ideavim/action/change/change/ChangeVisualActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ction/change/delete/DeleteJoinLinesSpacesActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…action/change/delete/DeleteVisualLinesEndActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ideavim/action/change/delete/DeleteMotionActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…change/delete/DeleteJoinVisualLinesSpacesActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…motion/select/SelectEnableLineModeActionHandlerTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…s/ideavim/ex/implementation/commands/MapCommandTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…action/change/change/ChangeVisualLinesEndActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ideavim/ex/implementation/commands/PrintCommandTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…va/org/jetbrains/plugins/ideavim/action/ActionsTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ava/org/jetbrains/plugins/ideavim/action/EscapeTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…/ideavim/action/motion/updown/EnterNormalActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…im/action/change/delete/DeleteVisualLinesActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…m/action/change/insert/InsertAfterLineEndActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…m/action/change/insert/InsertNewLineAboveActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…n/change/insert/InsertBeforeFirstNonBlankActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ns/plugins/ideavim/action/copy/YankMotionActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…avim/action/ex/InsertCurrentLineLiterallyActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ugins/ideavim/action/ex/InsertCurrentLineActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…m/action/motion/object/MotionInnerBigWordActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…avim/action/motion/object/MotionInnerWordActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…m/action/motion/object/MotionOuterBigWordActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…avim/action/motion/object/MotionOuterWordActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…action/motion/visual/VisualToggleLineModeActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ction/motion/text/MotionSentenceNextStartActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…vim/action/motion/text/MotionWordEndRightActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…m/action/motion/text/MotionBigWordEndLeftActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…/action/motion/text/MotionBigWordEndRightActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…avim/action/motion/text/MotionWordEndLeftActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…deavim/action/motion/text/MotionWordRightActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…vim/action/motion/text/MotionBigWordRightActionTest.kt0|lorem ipsum dolor sit amet, consectetur adipiscing elit.... | ${c}sed in orci mauris. cras id tellus in ex imperdiet egSTRING
HIGH…ins/plugins/ideavim/propertybased/samples/LoremText.kt0lorem ipsum dolor sit amet, consectetur adipiscing elit. morbi gravida commodo orci, egestas placerat purus rhoncus non.STRING
HIGH…m/action/change/insert/InsertNewLineAboveActionTest.kt0lorem ipsum dolor sit amet, consectetur adipiscing elit. morbi gravida commodo orci, egestas placerat purus rhoncus non.STRING
HIGH…plugins/ideavim/action/copy/PutVisualTextActionTest.kt0lorem ipsum dolor sit amet, consectetur adipiscing elit. morbi gravida commodo orci, egestas placerat purus rhoncus non.STRING
HIGH…im/ex/implementation/commands/ShiftRightCommandTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…ion/multiplecursors/VimMultipleCursorsExtensionTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…/action/motion/search/SearchAgainPreviousActionTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…sion/replacewithregister/ReplaceWithRegisterNewTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…tension/replacewithregister/ReplaceWithRegisterTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…/plugins/ideavim/group/visual/IdeaVisualControlTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…plugins/ideavim/group/visual/NonVimVisualChangeTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…lugins/ideavim/action/change/RepeatChangeActionTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…tion/motion/updown/MotionShiftDownActionHandlerTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…action/motion/visual/VisualToggleLineModeActionTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…n/motion/visual/VisualToggleCharacterModeActionTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
HIGH…/motion/leftright/MotionShiftRightActionHandlerTest.kt0a discovery a discovery ${c}ound it in a legendary land rocks and lavender and tufted grass, re it was settled on some sSTRING
217 more matches not shown…
Hallucination Indicators29 hits · 335 pts
SeverityFileLineSnippetContext
CRITICALtests/ui-py-tests/src/test/kotlin/PyCharmTest.kt48 callJs<String>("com.intellij.openapi.wm.ToolWindowManager.getInstance(component.project).getToolWindow('Python ConsoCODE
CRITICAL…/ui-fixtures/src/testFixtures/kotlin/ui/utils/Utils.kt110 const actionManager = com.intellij.openapi.actionSystem.ActionManager.getInstance();CODE
CRITICAL…/ui-fixtures/src/testFixtures/kotlin/ui/utils/Utils.kt112 actionManager.tryToExecute(action, com.intellij.openapi.ui.playback.commands.ActionCommand.getInputEvent(actCODE
CRITICAL…ui-fixtures/src/testFixtures/kotlin/ui/pages/Editor.kt60 get() = callJs("com.maddyhome.idea.vim.helper.CaretVisualAttributesHelperKt.hasBlockOrUnderscoreCaret(component.getECODE
CRITICAL…ui-fixtures/src/testFixtures/kotlin/ui/pages/Editor.kt65 const app = com.intellij.openapi.application.ApplicationManager.getApplication()STRING
CRITICALscripts-ts/src/propertyTestFailures.test.ts38\tat com.intellij.util.text.ImmutableText.outOfRange(ImmutableText.java:273)CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts39\tat com.intellij.util.text.ImmutableText.findLeaf(ImmutableText.java:252)CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts40\tat com.intellij.util.text.ImmutableText.charAt(ImmutableText.java:237)CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts42\tat com.maddyhome.idea.vim.api.VimSearchHelperBase.findFilenameAtOrFollowingCursor(VimSearchHelperBase.kt:180)CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts43\tat com.maddyhome.idea.vim.action.ex.InsertFilenameUnderCaretAction.execute(InsertFilenameUnderCaretAction.kt:28)CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts44\tat com.maddyhome.idea.vim.action.ex.CommandLineActionHandler.execute(CommandLineActionHandler.kt:42)CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts49\tat com.maddyhome.idea.vim.yank.YankGroupBase.yankMotion(YankGroupBase.kt:77)CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts50\tat com.maddyhome.idea.vim.action.copy.YankMotionAction.execute(YankMotionAction.kt:36)CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts51\tat com.maddyhome.idea.vim.handler.VimActionHandler.baseExecute(VimActionHandler.kt:87)CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts98 "com.maddyhome.idea.vim.api.VimSearchHelperBase.findFilenameAtOrFollowingCursor(VimSearchHelperBase.kt:180)",CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts137 expect(plain.engineFrames[0]).toBe("com.maddyhome.idea.vim.yank.YankGroupBase.yankMotion(YankGroupBase.kt:77)");CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts237 "com.maddyhome.idea.vim.api.VimSearchHelperBase.findFilenameAtOrFollowingCursor(VimSearchHelperBase.kt:180)"CODE
CRITICALscripts-ts/src/propertyTestFailures.test.ts238 "com.maddyhome.idea.vim.yank.YankGroupBase.yankMotion(YankGroupBase.kt:77)",CODE
CRITICAL…vim/action/motion/visual/VisualSelectPreviousAction.kt39 editor.mode = com.maddyhome.idea.vim.state.mode.Mode.VISUAL(selectionType)CODE
CRITICAL.idea/fileTemplates/code/I18nized Concatenation.java1com.maddyhome.idea.vim.helper.MessageHelper.message("${PROPERTY_KEY}", ${PARAMETERS})CODE
CRITICAL.idea/fileTemplates/code/I18nized Expression.java1com.maddyhome.idea.vim.helper.MessageHelper.message("${PROPERTY_KEY}")CODE
CRITICAL…ideavim/action/macro/CommandHistoryWindowActionTest.kt112 com.maddyhome.idea.vim.options.OptionAccessScope.EFFECTIVE(fixture.editor.vim),CODE
CRITICAL…/com/maddyhome/idea/vim/listener/VimListenerManager.kt268 if (com.maddyhome.idea.vim.ide.isRider() || com.maddyhome.idea.vim.ide.isClionNova()) {CODE
CRITICAL…/java/com/maddyhome/idea/vim/listener/IdeaSpecifics.kt471 private val LOG = com.intellij.openapi.diagnostic.Logger.getInstance(RiderEscAwtKeyTracker::class.java)CODE
CRITICAL…ava/com/maddyhome/idea/vim/group/VimMarkServiceImpl.kt167 // (see com.intellij.openapi.application.Application.runReadAction())COMMENT
CRITICAL…/main/java/com/maddyhome/idea/vim/group/ChangeGroup.kt154 val textRange = com.intellij.openapi.util.TextRange.create(start, end)CODE
CRITICAL…/main/java/com/maddyhome/idea/vim/group/ChangeGroup.kt173 val text = document.getText(com.intellij.openapi.util.TextRange.create(start, end))CODE
CRITICAL…main/java/com/maddyhome/idea/vim/newapi/IjVimEditor.kt252 val fem = com.intellij.openapi.fileEditor.FileEditorManager.getInstance(project)CODE
CRITICAL…java/com/maddyhome/idea/vim/newapi/IjVimApplication.kt76 com.maddyhome.idea.vim.helper.runAfterGotFocus(runnable)CODE
Structural Annotation Overuse28 hits · 57 pts
SeverityFileLineSnippetContext
LOW.claude/skills/extensions-api-migration/SKILL.md109#### Step 1: Ensure Test CoverageCOMMENT
LOW.claude/skills/extensions-api-migration/SKILL.md116#### Step 2: Migrate in Small StepsCOMMENT
LOW.claude/skills/extensions-api-migration/SKILL.md123#### Step 3: Migrate Handlers One by OneCOMMENT
LOW.claude/skills/extensions-api-migration/SKILL.md127#### Step 4: Handler Migration ProcessCOMMENT
LOW.claude/skills/issues-deduplication/SKILL.md65### Step 1: Gather Issue DetailsCOMMENT
LOW.claude/skills/issues-deduplication/SKILL.md75### Step 2: Group DuplicatesCOMMENT
LOW.claude/skills/issues-deduplication/SKILL.md78### Step 3: Select Primary IssueCOMMENT
LOW.claude/skills/issues-deduplication/SKILL.md81### Step 4: Check for Unique InformationCOMMENT
LOW.claude/skills/issues-deduplication/SKILL.md84### Step 5: Transfer InformationCOMMENT
LOW.claude/skills/issues-deduplication/SKILL.md87### Step 6: Mark DuplicatesCOMMENT
LOW.claude/skills/issues-deduplication/SKILL.md92### Step 7: Leave a Courteous CommentCOMMENT
LOW.claude/skills/doc-sync/SKILL.md137### Step 0: Establish Ground Truth (CRITICAL - DO FIRST)COMMENT
LOW.claude/skills/doc-sync/SKILL.md143### Step 1: Understand the TaskCOMMENT
LOW.claude/skills/doc-sync/SKILL.md148### Step 2: Quick Pattern SearchCOMMENT
LOW.claude/skills/doc-sync/SKILL.md153### Step 3: Detailed VerificationCOMMENT
LOW.claude/skills/doc-sync/SKILL.md159### Step 4: Analyze DiscrepanciesCOMMENT
LOW.claude/skills/doc-sync/SKILL.md165### Step 5: Make Updates if NeededCOMMENT
LOW.claude/skills/doc-sync/SKILL.md170### Step 6: Report FindingsCOMMENT
LOW.github/workflows/youtrackAreaField.yml71 ### Step 1: Gather informationCOMMENT
LOW.github/workflows/youtrackAreaField.yml78 ### Step 2: Verify only what you are unsure aboutCOMMENT
LOW.github/workflows/youtrackAreaField.yml99 ### Step 3: Choose the valuesCOMMENT
LOW.github/workflows/youtrackAreaField.yml116 ### Step 4: Apply the resultCOMMENT
LOWapi/doc/Plugin-API-tutorial-replace-with-register.md56### Step 1: Create the init functionCOMMENT
LOWapi/doc/Plugin-API-tutorial-replace-with-register.md69### Step 2: Define MappingsCOMMENT
LOWapi/doc/Plugin-API-tutorial-replace-with-register.md83 // Step 1: Non-recursive <Plug> → action mappingsCOMMENT
LOWapi/doc/Plugin-API-tutorial-replace-with-register.md94 // Step 2: Recursive key → <Plug> mappingsCOMMENT
LOWapi/doc/Plugin-API-tutorial-replace-with-register.md115### Step 3: Implement Core FunctionalityCOMMENT
LOWapi/doc/Plugin-API-tutorial-replace-with-register.md193### Step 4: Handle Different Selection TypesCOMMENT
Over-Commented Block49 hits · 49 pts
SeverityFileLineSnippetContext
LOW…ains/plugins/ideavim/propertybased/samples/JavaText.kt441 @NotNull KeyMapping mapping,COMMENT
LOW…ains/plugins/ideavim/propertybased/samples/JavaText.kt561 // prevented by this handler. Make sure the currently unhandled keys are processed as normal.COMMENT
LOWvim-engine/src/test/resources/GraphemeBreakTest.txt1# GraphemeBreakTest-15.0.0.txtCOMMENT
LOW…otlin/com/maddyhome/idea/vim/helper/CodeWrapperTest.kt421 WrapTestCase(COMMENT
LOW…m/maddyhome/idea/vim/group/visual/EngineVisualGroup.kt41 val (nativeStart, nativeEnd) = lineToNativeSelection(editor, start, end)COMMENT
LOW…addyhome/idea/vim/key/consumers/EditorResetConsumer.kt121 // happen where NES manages to capture the Op-pending heavy underscore caret attributes, and it's very confusingCOMMENT
LOW…kotlin/com/maddyhome/idea/vim/state/KeyHandlerState.kt41 // Create a new command builder for commands entered inside the command line, which allows for nested commands, suchCOMMENT
LOW…main/kotlin/com/maddyhome/idea/vim/common/Graphemes.kt1package com.maddyhome.idea.vim.commonCOMMENT
LOW…main/kotlin/com/maddyhome/idea/vim/common/Graphemes.kt21// work to enable faster random access of the areas that were visited before by maintaining a partialCOMMENT
LOW…vim/action/motion/scroll/MotionScrollPageDownAction.kt21import com.maddyhome.idea.vim.handler.VimActionHandlerCOMMENT
LOW…in/kotlin/com/maddyhome/idea/vim/thinapi/VimApiImpl.kt161 return TextScopeImpl()COMMENT
LOW…in/kotlin/com/maddyhome/idea/vim/thinapi/VimApiImpl.kt181 // override fun splitWindowVertically(filePath: Path?) {COMMENT
LOW…otlin/com/maddyhome/idea/vim/api/VimOptionGroupBase.kt481 // Externally mapped options typically set the equivalent IDE setting's local value, rather than the persistentCOMMENT
LOW…otlin/com/maddyhome/idea/vim/api/VimOptionGroupBase.kt721 // change the local external value through the UI, so we don't need to worry about what the external value is. WeCOMMENT
LOW…otlin/com/maddyhome/idea/vim/api/VimOptionGroupBase.kt781 // But we do want to modify the external value if the option is being reset either to default or unset due toCOMMENT
LOW…tlin/com/maddyhome/idea/vim/api/VimDigraphGroupBase.kt301 // awk '{COMMENT
LOW…tlin/com/maddyhome/idea/vim/api/VimSearchHelperBase.kt521 bigWord: Boolean,COMMENT
LOW…tlin/com/maddyhome/idea/vim/api/VimSearchHelperBase.kt1741 // current whitespace, up to the character before the next word, or the end of the line.COMMENT
LOW…/src/main/kotlin/com/maddyhome/idea/vim/api/Options.kt341 // TODO: We should probably be doing this for other options tooCOMMENT
LOW.github/workflows/propertyTestsAutoFix.yml1# Reads the failures of the TeamCity "Property based tests" configuration (Ideavim_PropertyBased)COMMENT
LOW.github/workflows/codeql-analysis.yml1# For most projects, this workflow file will not need changing; you simply needCOMMENT
LOW.github/workflows/codeql-analysis.yml61 # Autobuild attempts to build any compiled languages (C/C++, C#, or Java).COMMENT
LOW.github/workflows/claude.yml41 # This is an optional setting that allows Claude to read CI results on PRsCOMMENT
LOWapi/src/main/kotlin/com/intellij/vim/api/VimApi.kt201 * }COMMENT
LOWapi/src/main/kotlin/com/intellij/vim/api/VimApi.kt381COMMENT
LOWapi/src/main/kotlin/com/intellij/vim/api/VimApi.kt401 // * @param index The index of the window to select (1-based).COMMENT
LOWapi/src/main/kotlin/com/intellij/vim/api/VimApi.kt421 // */COMMENT
LOW…/com/intellij/vim/api/scopes/editor/caret/CaretRead.kt221COMMENT
LOW.teamcity/_Self/buildTypes/Compatibility.kt41 scriptContent = """COMMENT
LOW…ains/plugins/ideavim/extension/matchit/MatchitCTest.kt161 fun `test jump from #endif to #if`() {COMMENT
LOW…ains/plugins/ideavim/option/OptionDeclaredScopeTest.kt441 @TestCOMMENT
LOW…avim/action/change/insert/InsertBackspaceActionTest.kt41 // screen is scrolled by 'sidescroll', which has the default value of 0, so we scroll until the caret is in theCOMMENT
LOWsrc/main/java/com/maddyhome/idea/vim/ui/OutputPanel.kt181 // if resizing the IDE frame forces the single-line output to wrap and become multi-line.COMMENT
LOWsrc/main/java/com/maddyhome/idea/vim/ui/OutputPanel.kt681COMMENT
LOW…/main/java/com/maddyhome/idea/vim/ui/ex/ExTextField.kt221 // If it's not a simple text character but a shortcut (i.e., a keypress with one or more modifiers), then it will beCOMMENT
LOW…ain/java/com/maddyhome/idea/vim/ui/ex/ExTextFieldUI.kt21 // accepts typed characters, but no other actions.COMMENT
LOW…/com/maddyhome/idea/vim/listener/VimListenerManager.kt341 fun add(editor: Editor, openingEditor: VimEditor, scenario: LocalOptionInitialisationScenario) {COMMENT
LOW…/com/maddyhome/idea/vim/listener/VimListenerManager.kt641 // Cmdwin is a synthetic buffer: no autocmd BufLeave and no fallback-window option capture.COMMENT
LOW…/com/maddyhome/idea/vim/listener/VimListenerManager.kt661 }COMMENT
LOW…m/maddyhome/idea/vim/listener/IJEditorFocusListener.kt41 // interactive stdin/stdout for console-based run configurations.COMMENT
LOW…tension/multiplecursors/VimMultipleCursorsExtension.kt181 abstract fun executeInWriteAction(editor: Editor, context: DataContext)COMMENT
LOW…/main/java/com/maddyhome/idea/vim/group/OptionGroup.kt161 if (current !is OptionValue.Default) returnCOMMENT
LOW…/main/java/com/maddyhome/idea/vim/group/OptionGroup.kt261 // This is a local Vim option, and its global value is only used for initialising new windows. Vim does not have aCOMMENT
LOW…/main/java/com/maddyhome/idea/vim/group/OptionGroup.kt1201 override fun resetLocalExternalValueToGlobal(editor: VimEditor) {COMMENT
LOW…/main/java/com/maddyhome/idea/vim/group/OptionGroup.kt1241 override fun setLocalExternalValue(editor: VimEditor, value: VimInt) {COMMENT
LOW…main/java/com/maddyhome/idea/vim/newapi/IjVimEditor.kt361 }COMMENT
LOW…va/com/maddyhome/idea/vim/newapi/IjClipboardManager.kt81 // TODO prefer methods with ranges, because they collect and preprocess for usCOMMENT
LOW…java/com/maddyhome/idea/vim/helper/ScrollViewHelper.kt61 val bottomLine = getVisualLineAtBottomOfScreen(editor)COMMENT
LOW…java/com/maddyhome/idea/vim/helper/ScrollViewHelper.kt81 // scrolloff above caretLine. If this takes the new top line above the current top line, we must scroll at leastCOMMENT
AI Response Leakage3 hits · 22 pts
SeverityFileLineSnippetContext
HIGHscripts/src/main/kotlin/scripts/youtrack.kt69 // I've updated default url in client, so this may be broken nowCOMMENT
HIGHscripts/src/main/kotlin/scripts/youtrack.kt124 // I've updated default url in client, so this may be broken nowCOMMENT
HIGHscripts/src/main/kotlin/scripts/youtrack.kt145 // I've updated default url in client, so this may be broken nowCOMMENT
Decorative Section Separators7 hits · 17 pts
SeverityFileLineSnippetContext
MEDIUM…com/maddyhome/idea/vim/split/IdeaVimStarterTestBase.kt128 // ── File helpers ────────────────────────────────────────────COMMENT
MEDIUM…com/maddyhome/idea/vim/split/IdeaVimStarterTestBase.kt138 // ── IDE interaction helpers ─────────────────────────────────COMMENT
MEDIUM…com/maddyhome/idea/vim/split/IdeaVimStarterTestBase.kt314 // ── Helpers for more than one editor ────────────────────────COMMENT
MEDIUM…com/maddyhome/idea/vim/split/IdeaVimStarterTestBase.kt417 // ── Editor state helpers ────────────────────────────────────COMMENT
MEDIUM…com/maddyhome/idea/vim/split/IdeaVimStarterTestBase.kt437 // ── Assertions ──────────────────────────────────────────────COMMENT
MEDIUM…otlin/com/maddyhome/idea/vim/helper/CodeWrapperTest.kt430 // ─────────────────────────────────────────────────────────────────────STRING
MEDIUM…otlin/com/maddyhome/idea/vim/helper/CodeWrapperTest.kt441 // ─────────────────────────────────────────────────────────────────────STRING
AI Slop Vocabulary5 hits · 15 pts
SeverityFileLineSnippetContext
MEDIUM…lin/com/maddyhome/idea/vim/command/MappingProcessor.kt131 // Essentially, if we've got a count, don't map.COMMENT
MEDIUM…eavim/ex/implementation/commands/HistoryCommandTest.kt94 // line window `q:` can interact with it, but also seems limited to while the command line is active). Essentially,COMMENT
MEDIUM…lugins/ideavim/action/scroll/ScrollPageUpActionTest.kt195 // Essentially, move top line up a multiple of (window height minus 2) +1. Not sure where the +1 comes from, but itCOMMENT
MEDIUM…lugins/ideavim/action/scroll/ScrollPageUpActionTest.kt208 // Essentially, move top line up a multiple of (window height minus 2) +1. Not sure where the +1 comes from, but itCOMMENT
MEDIUM…lugins/ideavim/action/scroll/ScrollPageUpActionTest.kt221 // Essentially, move top line up a multiple of (window height minus 2) +1. Not sure where the +1 comes from, but itCOMMENT
TODO Padding5 hits · 8 pts
SeverityFileLineSnippetContext
LOW…tions/handlers/listFunctions/IndexOfFunctionHandler.kt66 // TODO: Add test for funcref/expression returning wrong typeCOMMENT
LOW…ideavim/action/ex/InsertRegisterLiterallyActionTest.kt70 // TODO: Add test for not applying abbreviations, once we support abbreviationsCOMMENT
LOW…ideavim/action/ex/InsertRegisterLiterallyActionTest.kt71 // TODO: Add test to ensure command line completion is not triggered, once we support completionCOMMENT
LOW…/plugins/ideavim/action/ex/InsertRegisterActionTest.kt63 // TODO: Add test for not applying abbreviations, once we support abbreviationsCOMMENT
LOW…/plugins/ideavim/action/ex/InsertRegisterActionTest.kt64 // TODO: Add test to ensure command line completion is not triggered, once we support completionCOMMENT
Verbosity Indicators4 hits · 8 pts
SeverityFileLineSnippetContext
LOW.github/workflows/youtrackAreaField.yml71 ### Step 1: Gather informationCOMMENT
LOW.github/workflows/youtrackAreaField.yml78 ### Step 2: Verify only what you are unsure aboutCOMMENT
LOW.github/workflows/youtrackAreaField.yml99 ### Step 3: Choose the valuesCOMMENT
LOW.github/workflows/youtrackAreaField.yml116 ### Step 4: Apply the resultCOMMENT
Synthetic Comment Markers1 hit · 8 pts
SeverityFileLineSnippetContext
HIGH…es/kotlin/org/jetbrains/plugins/ideavim/VimTestCase.kt440 // We disable scrolloff + scrolljump, position as requested, and reset. When resetting scrolloff, Vim willCOMMENT
Hyper-Verbose Identifiers3 hits · 3 pts
SeverityFileLineSnippetContext
LOWscripts-ts/src/updateAuthors.ts125export function extractExistingGitHubUrls(content: string): Set<string> {CODE
LOWscripts-ts/src/collectPropertyTestFailures.ts117async function alreadyHandledFingerprints(): Promise<Set<string>> {CODE
LOWscripts-ts/src/propertyTestFailures.ts247export function selectFailedBuildsInWindow(CODE
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/syncDoc.yml45 # Define the directory you want to processCOMMENT
Slop Phrases1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/updateWhatsNewClaude.yml59 ## What you can changeCOMMENT