evals
scenario-1
scenario-10
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
{
"context": "Evaluates whether the solution uses @ckeditor/ckeditor5-mention’s built-in UI to anchor the dropdown to the caret with RTL-aware contextual balloon fallbacks. Checks rely on the package’s Mention, MentionUI, and ContextualBalloon helpers rather than custom popups, plus correct hide/reposition behavior during lookup changes.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Mention config",
"description": "Enables the Mention plugin and wires feeds through config.mention.feeds (including marker, dropdownLimit/minimumCharacters) so lookup text and limits are driven by the package instead of bespoke parsing.",
"max_score": 20
},
{
"name": "Contextual balloon",
"description": "Shows the dropdown via ContextualBalloon#add (or MentionUI’s equivalent) with the mentions view and singleViewMode/ck-mention-balloon class instead of manually positioned DOM.",
"max_score": 25
},
{
"name": "RTL positions",
"description": "Builds position data with getBalloonPanelPositions/_getBalloonPanelPositionData so caret_se/caret_sw/caret_ne/caret_nw order flips when editor.locale.uiLanguageDirection === 'rtl', providing the mirrored fallback stack.",
"max_score": 25
},
{
"name": "Live reposition",
"description": "On active lookups, calls ContextualBalloon#updatePosition with new _getBalloonPanelPositionData when the caret moves, view rerenders, or the mention view size changes, mirroring MentionUI._showOrUpdateUI behavior.",
"max_score": 15
},
{
"name": "Hide cleanup",
"description": "Uses MentionUI-style cleanup (e.g., _hideUIAndRemoveMarker) to remove the mentions view from ContextualBalloon and drop the 'mention' marker when markers disappear, feeds return empty, or focus/selection leaves the editor.",
"max_score": 15
}
]
}