Link extension for tiptap rich text editor providing automatic link detection, paste handling, click behavior, and XSS protection.
88
{
"context": "This criteria evaluates how well the engineer uses @tiptap/extension-link's transaction metadata control features to prevent autolink plugin interference when programmatically creating links. The focus is on proper use of the preventAutolink metadata flag and correct transaction composition.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Transaction metadata usage",
"description": "Uses transaction.setMeta() or tr.setMeta() to set the 'preventAutolink' metadata flag to true, preventing the autolink plugin from processing the transaction.",
"max_score": 30
},
{
"name": "Link mark application",
"description": "Uses the link mark type (e.g., editor.schema.marks.link or this.editor.schema.marks.link) and applies it correctly using addMark() or a similar method with the href attribute set to the provided URL.",
"max_score": 25
},
{
"name": "Transaction creation",
"description": "Creates a proper ProseMirror transaction using editor.state.tr or editor.view.state.tr to perform the insertion and mark application operations.",
"max_score": 20
},
{
"name": "Text insertion",
"description": "Correctly inserts text at the specified position using transaction methods like insert() or replaceWith() with a text node.",
"max_score": 15
},
{
"name": "Position validation",
"description": "Validates that the position is within document bounds (e.g., position >= 0 and position <= doc.content.size) and returns false for invalid positions.",
"max_score": 10
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-tiptap--extension-linkdocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10