{ "version": "v3", "timestamp": 1780873322317, "ruleHash": "4010f87c1d6dc673", "queries": [ { "id": "dangerously-set-inner-html", "name": "Dangerously Set Inner HTML", "severity": "error", "language": "tsx", "message": "dangerouslySetInnerHTML — XSS risk, sanitize user input", "query": " (jsx_attribute\n (property_identifier) @ATTR\n (#match? @ATTR \"dangerouslySetInnerHTML\"))", "metavars": [ "ATTR" ], "defect_class": "injection", "inline_tier": "blocking", "has_fix": false, "filePath": "C:\\Users\\Evandro\\.pi\\agent\\npm\\node_modules\\pi-lens\\rules\\tree-sitter-queries\\tsx\\dangerously-set-inner-html.yml" }, { "id": "no-nested-links", "name": "Nested anchor tags", "severity": "error", "language": "tsx", "message": "Nested tags are invalid HTML and cause unexpected behavior", "query": " (jsx_element\n open_tag: (jsx_opening_element\n (identifier) @OUTER\n (#eq? @OUTER \"a\"))\n (jsx_element\n open_tag: (jsx_opening_element\n (identifier) @INNER\n (#eq? @INNER \"a\"))))", "metavars": [ "OUTER", "INNER" ], "defect_class": "correctness", "inline_tier": "blocking", "has_fix": false, "filePath": "C:\\Users\\Evandro\\.pi\\agent\\npm\\node_modules\\pi-lens\\rules\\tree-sitter-queries\\tsx\\no-nested-links.yml" } ] }