or run

npx @tessl/cli init
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-3/

{
  "context": "Evaluates how the solution uses @ckeditor/ckeditor5-mention's default upcast/downcast pipeline to round-trip mention spans, validate mention ids, and keep metadata intact.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Plugin setup",
      "description": "Loads the `Mention` plugin (with `MentionEditing` active) in the editor configuration and provides a feed marker matching the mention ids being round-tripped.",
      "max_score": 20
    },
    {
      "name": "Upcast via converters",
      "description": "Relies on the built-in `MentionEditing` upcast (or `Mention#toMentionAttribute` / `_toMentionAttribute`) to read `<span class=\"mention\" data-mention=\"...\">` elements into mention attributes instead of manual string parsing.",
      "max_score": 25
    },
    {
      "name": "Downcast serialization",
      "description": "Exports mention attributes through the default downcast so output spans keep `class=\"mention\"` plus `data-mention` JSON containing `id`, `_text`, and stable `uid` values.",
      "max_score": 25
    },
    {
      "name": "Invalid handling",
      "description": "Uses mention validation (e.g., `MentionCommand` or `_addMentionAttributes` checks) to enforce ids starting with the marker and depends on the mention post-fixer to drop or plain-text broken/partial mentions after edits.",
      "max_score": 20
    },
    {
      "name": "Extra data",
      "description": "Preserves additional mention fields (like `userId` or `role`) by merging them into the mention attribute so they survive both upcast and downcast.",
      "max_score": 10
    }
  ]
}