AI Slop Code Risk Monitor

facebook/lexical

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

Lexical is an extensible text editor framework that provides excellent reliability, accessibility and performance.

0.9 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for facebook/lexical, a TypeScript project with 23,991 GitHub stars. SynthScan examined 621,776 lines of code across 2257 source files, recording 540 pattern matches distributed across 10 syntactic categories. The legacy adjusted pattern signal is 0.9 (Low pattern signal); it is not an authorship estimate.

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

0.9
Adjusted Signal
0.9
Raw Pattern Score
100%
Time Factor
2026-10-31
Last Push
24.0K
Stars
TypeScript
Language
621.8K
Lines of Code
2.3K
Files
540
Pattern Hits
2026-10-31
Scan Date
0.00
HC Hit Rate

Risk Review · Payload v1

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

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 4.3/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 0.2/100 · LOW

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

Agent Over-Engineering Ratio 1.9/100 · LOW

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

PR Review Velocity Impact 4.4/100 · LOW

Which changes need focused human review? 540 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 1HIGH 0MEDIUM 5LOW 534

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 540 distinct pattern matches across 10 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Over-Commented Block245 hits · 242 pts
SeverityFileLineSnippetContext
LOW…es/mdast-editor/src/extensions/MdastEditorExtension.ts121 // The grammar is granular: CommonMark and GFM are separate bundles,COMMENT
LOW…mdast-editor/src/extensions/HtmlTextFormatExtension.ts21import {COMMENT
LOWexamples/vanilla-js/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/node-replacement/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/website-notion/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/shadow-dom-web-component/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOW…s/shadow-dom-web-component/src/LexicalEditorElement.ts501 // shadow root and clear its children so the flow below rebuilds themCOMMENT
LOWexamples/node-state-style/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/react-rich-collab/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/node-state-review/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/markdown-editor/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOW…arkdown-editor/src/extensions/ToolbarStateExtension.ts101 // The HistoryState object the signal holds is mutated inCOMMENT
LOWexamples/react-table/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/react-mathtype/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/react-plain-text/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/website-chat/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOW…xtension-vanilla-react-plugin-host/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOW…tension-sveltekit-ssr-hydration/vitest-setup-client.ts1/// <reference types="@vitest/browser/matchers" />COMMENT
LOW…/extension-sveltekit-ssr-hydration/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/vanilla-js-plugin/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/react-rich/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/nextjs-code-shiki/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/extension-react-table/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/website-toolbar/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/website-rich-input/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/vanilla-js-iframe/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/shadow-dom/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWexamples/extension-vanilla-tailwind/pnpm-workspace.yaml1# This example is a standalone project rather than a member of the LexicalCOMMENT
LOWscripts/__tests__/unit/treeShakingSource.test.ts121COMMENT
LOWscripts/__tests__/unit/flowCompactSignatures.test.ts101 // `trailingComma: "all"`: the moment a declaration is wrapped acrossCOMMENT
LOWpackages/lexical-mdast/src/MdastHtmlExtension.ts101// CommonMark parses raw HTML blocks by blank lines, not by tag structure, soCOMMENT
LOWpackages/lexical-mdast/src/MdastHtmlExtension.ts561 // line); the block wrapping, if any, belongs to the surrounding HTMLCOMMENT
LOWpackages/lexical-devtools/wxt.config.ts61 ],COMMENT
LOWpackages/lexical-tailwind/src/index.ts41 // attr: 'PlaygroundEditorTheme__tokenAttr',COMMENT
LOWpackages/lexical-tailwind/src/index.ts61 // property: 'PlaygroundEditorTheme__tokenProperty',COMMENT
LOWpackages/lexical-tailwind/src/index.ts141 // },COMMENT
LOWpackages/lexical-code-core/src/CodeNode.ts201 }COMMENT
LOW…de-core/src/__tests__/unit/CodeImportExtension.test.ts201});COMMENT
LOW…kages/lexical-react/src/shared/useYjsCollaboration.tsx661 // The Yjs write happens in the update listener during the commit, which isCOMMENT
LOW…t/src/__tests__/unit/LexicalExtensionComposer.test.tsx61 );COMMENT
LOWpackages/lexical/src/LexicalMutations.ts201 // Not when it has moved on: scaffolding is put back below.COMMENT
LOWpackages/lexical/src/LexicalMutations.ts281 // to restore their contents back to the source of truth, whichCOMMENT
LOWpackages/lexical/src/LexicalSchema.ts1221 // straight to $getState for a node that has none of its own. Freezing itCOMMENT
LOWpackages/lexical/src/LexicalSchema.ts1601function $fitOf(schema: AnySerializationSchema, value: unknown): number {COMMENT
LOWpackages/lexical/src/LexicalSchema.ts1621 // `{width: undefined}` field went from a whole fit to none and took itsCOMMENT
LOWpackages/lexical/src/LexicalSchema.ts2101 // membership from a parse, and a caller that only wanted the answer — anCOMMENT
LOWpackages/lexical/src/LexicalSchema.ts2381 members: M,COMMENT
LOWpackages/lexical/src/LexicalSchema.ts2441 return fallback;COMMENT
LOWpackages/lexical/src/LexicalSchema.ts2461 //COMMENT
LOWpackages/lexical/src/LexicalSchema.ts2761 const schema = makeSchema<Out, never, In>(COMMENT
LOWpackages/lexical/src/LexicalSchema.ts2781 );COMMENT
LOWpackages/lexical/src/LexicalSchema.ts2821> {COMMENT
LOWpackages/lexical/src/LexicalSchema.ts2901 //COMMENT
LOWpackages/lexical/src/LexicalSchema.ts3201 // the field comparators away from inputs.COMMENT
LOWpackages/lexical/src/LexicalGeneratedJSON.ts41 // Method syntax, so TypeScript checks the parameter bivariantly and aCOMMENT
LOWpackages/lexical/src/LexicalNodeState.ts481 // caller declared its own. Without this a reference-typed schemaCOMMENT
LOWpackages/lexical/src/LexicalReconciler.ts121// its size via `getTextContentSize()` (its shared keyed-DOM cache may alreadyCOMMENT
LOWpackages/lexical/src/LexicalReconciler.ts481// lexical-react's `useLexicalSlotRef`), which reveals it — mirroring howCOMMENT
LOWpackages/lexical/src/LexicalReconciler.ts581// Resolving by the slotted key (rather than scanning the host's direct childrenCOMMENT
LOWpackages/lexical/src/LexicalReconciler.ts681}COMMENT
185 more matches not shown…
Hyper-Verbose Identifiers236 hits · 239 pts
SeverityFileLineSnippetContext
LOW⚡libdefs/yjs.js725 declare export function createRelativePositionFromTypeIndex(CODE
LOW⚡libdefs/yjs.js731 declare export function createRelativePositionFromJSON(CODE
LOW⚡libdefs/yjs.js735 declare export function createAbsolutePositionFromRelativePosition(CODE
LOW…/mdast-editor/src/extensions/MdastFootnoteExtension.ts927function collectFootnoteReferenceIds(CODE
LOW…s/shadow-dom-web-component/src/LexicalEditorElement.ts769export function defineLexicalEditorElement(tagName = 'lexical-editor'): void {CODE
LOW…mples/node-state-style/src/plugins/StyleViewPlugin.tsx455function LexicalTextSelectionPaneContents({node}: {node: LexicalNode}) {CODE
LOW…mples/node-state-style/src/plugins/StyleViewPlugin.tsx557function initTextSelectionPaneReducer(action: SelectedNodeStateAction) {CODE
LOW…mples/node-state-style/src/plugins/StyleViewPlugin.tsx619function useSuggestedStylesCombobox(props: CSSPropertyComboBoxProps) {CODE
LOWexamples/react-mathtype/src/MathTypeExtension.tsx258export function MathTypeIntegrationComponent(): JSX.Element {CODE
LOWexamples/agent-example/src/ai/AIExtension.ts266 function extractEntitiesFromWorker(CODE
LOWpackages/lexical-mdast/src/MdastHtmlExtension.ts379function replaceMarkdownTextSegments(CODE
LOWpackages/lexical-mdast/src/MdastHtmlExtension.ts720function createExportMarkSplitRegExp(): RegExp {CODE
LOWpackages/lexical-mdast/src/MdastHtmlExtension.ts753function breakAfterLeadingCustomTag(segment: string): string {CODE
LOWpackages/lexical-mdast/src/MdastHtmlExtension.ts764function breakBeforeTrailingCustomTag(segment: string): string {CODE
LOWpackages/lexical-mdast/src/handlers.ts646export function phrasingFromFormattedText(CODE
LOWpackages/lexical-mdast/src/MdastShortcuts.ts339export function registerMarkdownShortcuts(CODE
LOWpackages/lexical-code-core/src/CodeImportExtension.ts154function splitMonospaceWrapperLines(el: HTMLElement): string[] | null {CODE
LOW…/lexical-code-core/src/LexicalCodeCoreGeneratedJSON.ts207export function afterCloneCodeHighlightNode(CODE
LOW…/lexical-code-core/src/LexicalCodeCoreGeneratedJSON.ts265 function exportCompactCodeHighlightNode(node: CodeHighlightNode): {CODE
LOWpackages/lexical-dragon/src/index.ts45function getOrCreateWindowState(CODE
LOWpackages/lexical-hashtag/src/LexicalHashtagExtension.ts14function getHashtagRegexStringChars(): Readonly<{CODE
LOWpackages/lexical-react/src/TreeViewExtension.tsx29export function TreeViewExtensionComponent(CODE
LOW…exical-react/src/LexicalBlockWithAlignableContents.tsx48export function BlockWithAlignableContents({CODE
LOWpackages/lexical-react/src/LexicalComposerContext.ts60export function createLexicalComposerContext(CODE
LOWpackages/lexical-react/src/LexicalComposerContext.ts91export function useLexicalComposerContext(): LexicalComposerContextWithEditor {CODE
LOW…s/lexical-react/src/LexicalTypeaheadMenuPluginUtils.ts47export function useBasicTypeaheadTriggerMatch(CODE
LOWpackages/lexical-react/src/ReactExtension.tsx42export function DefaultEditorChildrenComponent({CODE
LOW…kages/lexical-react/src/LexicalTypeaheadMenuPlugin.tsx95function isSelectionOnEntityBoundary(CODE
LOW…ages/lexical-react/src/useLexicalIsTextContentEmpty.ts23export function useLexicalIsTextContentEmpty(CODE
LOW…s/lexical-react/src/LexicalExtensionEditorComposer.tsx41export function LexicalExtensionEditorComposer({CODE
LOW…kages/lexical-react/src/useLexicalRovingTabIndexRef.ts34export function useLexicalRovingTabIndexRef(CODE
LOWpackages/lexical-react/src/useLexicalFocusManagerRef.ts31export function useLexicalFocusManagerRef(CODE
LOW…/lexical-react/src/shared/LexicalReactGeneratedJSON.ts25export function afterCloneDecoratorBlockNode(CODE
LOW…/lexical-react/src/shared/LexicalReactGeneratedJSON.ts46 function exportCompactDecoratorBlockNode(node: DecoratorBlockNode): {CODE
LOW…ages/lexical-react/src/shared/useCanShowPlaceholder.ts15function canShowPlaceholderFromCurrentEditorState(CODE
LOWpackages/lexical-react/src/shared/LexicalMenu.tsx176function isTriggerVisibleInNearestScrollContainer(CODE
LOWpackages/lexical-react/src/shared/LexicalMenu.tsx625function setContainerDivAttributes(CODE
LOWpackages/lexical-react/src/shared/LexicalMenu.tsx644function establishesContainingBlock(style: CSSStyleDeclaration): boolean {CODE
LOW…cal-react/src/shared/LexicalContentEditableElement.tsx60function ContentEditableElementImpl(CODE
LOW…lexical-react/src/__tests__/unit/Collaboration.test.ts50 async function expectCorrectInitialContent(client1: Client, client2: Client) {CODE
LOW…eact/src/__tests__/unit/LexicalNodeMenuPlugin.test.tsx41function NodeMenuPluginWithMenuRenderFn({CODE
LOW…eact/src/__tests__/unit/LexicalNodeMenuPlugin.test.tsx90function NodeMenuPluginWithoutMenuRenderFn({CODE
LOW…src/__tests__/unit/LexicalTypeaheadMenuPlugin.test.tsx52function TypeaheadPluginWithMenuRenderFn({CODE
LOW…src/__tests__/unit/LexicalTypeaheadMenuPlugin.test.tsx117function TypeaheadPluginWithoutMenuRenderFn({CODE
LOWpackages/lexical/src/LexicalDOMSlot.ts95export function isDecoratorBoundaryAnchorDOM(CODE
LOWpackages/lexical/src/LexicalMutations.ts92function shouldUpdateTextNodeFromMutation(CODE
LOWpackages/lexical/src/LexicalEditor.ts894function initializeConversionCache(CODE
LOWpackages/lexical/src/LexicalGeneratedJSON.ts413 function exportCompactParagraphNode(node: ParagraphNode): {CODE
LOWpackages/lexical/src/LexicalGeneratedJSON.ts491 function exportCompactLineBreakNode(node: LineBreakNode): {CODE
LOWpackages/lexical/src/LexicalNodeState.ts1222function parseAndPruneNextUnknownState(CODE
LOWpackages/lexical/src/LexicalReconciler.ts2218function getPrevElementByKeyOrThrow(key: NodeKey): HTMLElement {CODE
LOWpackages/lexical/src/LexicalSelection.ts2907function shouldDeleteExactlyOneCodeUnit(text: string) {CODE
LOWpackages/lexical/src/LexicalSelection.ts3428function getIndexOfChildContaining(parent: Node, node: Node): number {CODE
LOWpackages/lexical/src/LexicalSelection.ts3900export function moveSelectionPointToSibling(CODE
LOWpackages/lexical/src/LexicalSelection.ts3929export function adjustPointOffsetForMergedSibling(CODE
LOWpackages/lexical/src/LexicalSelection.ts3943function setDOMSelectionBaseAndExtent(CODE
LOWpackages/lexical/src/LexicalEvents.ts294function shouldSkipSelectionChange(CODE
LOW⚡packages/lexical/src/LexicalEvents.ts1121function isPossiblyAndroidKeyPress(CODE
LOW⚡packages/lexical/src/LexicalEvents.ts1131function clearHandledSelectionCommandInsertText(inputState: InputState): void {CODE
LOW⚡packages/lexical/src/LexicalEvents.ts1139function markHandledSelectionCommandInsertText(inputState: InputState): void {CODE
176 more matches not shown…
Verbosity Indicators15 hits · 28 pts
SeverityFileLineSnippetContext
LOW⚡…ical/src/__tests__/unit/IosKeyboardSuggestions.test.ts155 // Step 1: keydown Backspace (should not preventDefault).COMMENT
LOW⚡…ical/src/__tests__/unit/IosKeyboardSuggestions.test.ts160 // Step 2: iOS fires beforeinput deleteContentBackward with a collapsedCOMMENT
LOW…c/__tests__/unit/RichTextBlockCursorShadowRoot.test.ts513 // Step 1: ArrowRight → block cursor at root:1COMMENT
LOW…c/__tests__/unit/RichTextBlockCursorShadowRoot.test.ts525 // Step 2: ArrowRight → enter shadow root (selectStart → text:0)COMMENT
LOW…c/__tests__/unit/RichTextBlockCursorShadowRoot.test.ts542 // Step 3: Place cursor at end of text (jsdom doesn't supportCOMMENT
LOW…c/__tests__/unit/RichTextBlockCursorShadowRoot.test.ts557 // Step 4: ArrowRight → exit shadow root → block cursor at root:2COMMENT
LOWpackages/lexical-table/src/LexicalTableUtils.ts1615 // Step 1: Unmerge all merged cells within the affected areaCOMMENT
LOWpackages/lexical-table/src/LexicalTableUtils.ts1643 // Step 2: Expand current table (if needed)COMMENT
LOWpackages/lexical-table/src/LexicalTableUtils.ts1661 // Step 3: Merge cells and set cell content, to match template gridCOMMENT
LOW⚡…rc/__tests__/unit/LexicalTableMobileSelection.test.tsx287 // Step 1: Start a mouse drag selection (pointerdown with buttons: 1)COMMENT
LOW⚡…rc/__tests__/unit/LexicalTableMobileSelection.test.tsx293 // Step 2: Move to another cell (normal drag, buttons: 1)COMMENT
LOW⚡…rc/__tests__/unit/LexicalTableMobileSelection.test.tsx299 // Step 3: Simulate mouse re-entering window after leavingCOMMENT
LOW…-playground/__tests__/unit/LayoutContainerNode.test.ts106 // Step 1: Create a layout container and export to HTMLCOMMENT
LOW⚡…-playground/__tests__/unit/LayoutContainerNode.test.ts118 // Step 2: Clear the editor and re-import the exported HTMLCOMMENT
LOW⚡…-playground/__tests__/unit/LayoutContainerNode.test.ts127 // Step 3: Verify the imported node has the correct templateColumnsCOMMENT
Structural Annotation Overuse15 hits · 28 pts
SeverityFileLineSnippetContext
LOW⚡…ical/src/__tests__/unit/IosKeyboardSuggestions.test.ts155 // Step 1: keydown Backspace (should not preventDefault).COMMENT
LOW⚡…ical/src/__tests__/unit/IosKeyboardSuggestions.test.ts160 // Step 2: iOS fires beforeinput deleteContentBackward with a collapsedCOMMENT
LOW…c/__tests__/unit/RichTextBlockCursorShadowRoot.test.ts513 // Step 1: ArrowRight → block cursor at root:1COMMENT
LOW…c/__tests__/unit/RichTextBlockCursorShadowRoot.test.ts525 // Step 2: ArrowRight → enter shadow root (selectStart → text:0)COMMENT
LOW…c/__tests__/unit/RichTextBlockCursorShadowRoot.test.ts542 // Step 3: Place cursor at end of text (jsdom doesn't supportCOMMENT
LOW…c/__tests__/unit/RichTextBlockCursorShadowRoot.test.ts557 // Step 4: ArrowRight → exit shadow root → block cursor at root:2COMMENT
LOWpackages/lexical-table/src/LexicalTableUtils.ts1615 // Step 1: Unmerge all merged cells within the affected areaCOMMENT
LOWpackages/lexical-table/src/LexicalTableUtils.ts1643 // Step 2: Expand current table (if needed)COMMENT
LOWpackages/lexical-table/src/LexicalTableUtils.ts1661 // Step 3: Merge cells and set cell content, to match template gridCOMMENT
LOW⚡…rc/__tests__/unit/LexicalTableMobileSelection.test.tsx287 // Step 1: Start a mouse drag selection (pointerdown with buttons: 1)COMMENT
LOW⚡…rc/__tests__/unit/LexicalTableMobileSelection.test.tsx293 // Step 2: Move to another cell (normal drag, buttons: 1)COMMENT
LOW⚡…rc/__tests__/unit/LexicalTableMobileSelection.test.tsx299 // Step 3: Simulate mouse re-entering window after leavingCOMMENT
LOW…-playground/__tests__/unit/LayoutContainerNode.test.ts106 // Step 1: Create a layout container and export to HTMLCOMMENT
LOW⚡…-playground/__tests__/unit/LayoutContainerNode.test.ts118 // Step 2: Clear the editor and re-import the exported HTMLCOMMENT
LOW⚡…-playground/__tests__/unit/LayoutContainerNode.test.ts127 // Step 3: Verify the imported node has the correct templateColumnsCOMMENT
Fake / Example Data21 hits · 21 pts
SeverityFileLineSnippetContext
LOW…cal-react/src/shared/LexicalContentEditableElement.tsx58} & Omit<React.AllHTMLAttributes<HTMLDivElement>, 'placeholder'>;CODE
LOW…ct/src/__tests__/unit/useExtensionSignalValue.test.tsx346 name: 'John Doe',CODE
LOW…-react/src/__tests__/unit/PlainRichTextPlugin.test.tsx209 <span className="placeholder">My placeholder</span>CODE
LOW…-react/src/__tests__/unit/PlainRichTextPlugin.test.tsx219 <span className="placeholder">My placeholder</span>CODE
LOW…__tests__/unit/ManagedLineBreakObservedRemoval.test.ts303 block.insertBefore(unmanagedSpan('placeholder'), block.firstChild);CODE
LOW…xical/src/__tests__/browser/Issue7158MouseDrag.test.ts70 'lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod';CODE
LOW…xical/src/__tests__/browser/Issue7158MouseDrag.test.ts70 'lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod';CODE
LOW…xical/src/__tests__/browser/Issue7158MouseDrag.test.ts2620 'lorem ipsum dolor sit amet consectetur adipiscing elit sed do ' +CODE
LOW…xical/src/__tests__/browser/Issue7158MouseDrag.test.ts2620 'lorem ipsum dolor sit amet consectetur adipiscing elit sed do ' +CODE
LOW…s/lexical-y/src/__tests__/unit/ShadowRootQuote.test.ts94 () => $getRoot().append($p('one'), $p('Lorem ipsum'), $p('end')),CODE
LOW…s/lexical-y/src/__tests__/unit/ShadowRootQuote.test.ts216 $component({body: $body($p('Lorem ipsum'))}),CODE
LOW…s/lexical-y/src/__tests__/unit/ShadowRootQuote.test.ts244 expect(body).toContain('Lorem ipsum');CODE
LOW…exical-link/src/__tests__/unit/LexicalLinkNode.test.ts333 {input: 'user@example.com', output: 'mailto:user@example.com'},CODE
LOW…exical-link/src/__tests__/unit/LexicalLinkNode.test.ts982 expect(formatUrl('user@example.com')).toBe('mailto:user@example.com');CODE
LOW…rc/__tests__/unit/no-unscoped-window-messaging.test.ts140 code: `${IMPORT}\nlet ns = 'placeholder';\nns = crypto.randomUUID();\ninitPegasusTransport({namespace: ns});`,CODE
LOW…al-extension/src/__tests__/browser/SelectBlock.test.ts85 $createTextNode('Lorem ipsum dolor '),CODE
LOW…s/lexical-playground/__tests__/unit/ReviewNode.test.ts49 author.append($createTextNode('Jane Doe'));CODE
LOW…s/lexical-playground/__tests__/unit/ReviewNode.test.ts88 expect($getSlot(review, 'author')?.getTextContent()).toBe('Jane Doe');CODE
LOW…s/lexical-playground/__tests__/unit/ReviewNode.test.ts119 expect(html).toContain('Jane Doe');CODE
LOW…al-playground/src/__tests__/browser/Navigation.test.ts35 'Lorem Ipsum is simply dummy text of the printing and typesetting industry.',CODE
LOW…al-playground/src/__tests__/browser/Navigation.test.ts37 'It was popularised in the 1960s with the release of Letraset sheets containing lorem ipsum passages.',CODE
AI Slop Vocabulary4 hits · 12 pts
SeverityFileLineSnippetContext
MEDIUMpackages/lexical/src/LexicalUpdates.ts351 // We leverage editor._dirtyLeaves to track the new dirty leaves after the transformsCOMMENT
MEDIUMpackages/lexical/src/LexicalUpdates.ts1043 // makes the guard robust to fast/synchronous input bursts (rapid typing, keyCOMMENT
MEDIUM…ages/lexical/src/__tests__/unit/LexicalEditor.test.tsx870 // Add transform makes everything dirty the first time (let's not leverage this here)COMMENT
MEDIUM…playground/src/plugins/AutocompleteExtension/index.tsx392 // (rather than tracked via FOCUS/BLUR) so it is robust to autofocus racingCOMMENT
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippetContext
CRITICAL…kages/lexical-y/src/__tests__/unit/UndoRunEnds.test.ts1444 for (const structs of t.a.doc.store.clients.values()) {CODE
Modern AI Meta-Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM…ges/lexical-playground/__tests__/unit/CardNode.test.ts583 // scaffold wrapper that carries no `__lexicalKey_*`. The playground CSS givesCOMMENT
TODO Padding1 hit · 2 pts
SeverityFileLineSnippetContext
LOWpackages/lexical-utils/src/index.ts674 // TODO: implement this functionalityCOMMENT
Slop Phrases1 hit · 1 pts
SeverityFileLineSnippetContext
LOW…exical/src/__tests__/unit/LexicalSerialization.test.ts114 const expectedStringifiedEditorState = `{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","CODE