From 8acb55788b17ba5f914628a6de2146c248240ff4 Mon Sep 17 00:00:00 2001 From: Swately Date: Fri, 12 Jun 2026 12:52:40 -0600 Subject: [PATCH] fix: sanitize AI review HTML before rendering to prevent stored XSS ViewAiReviewView renders marked.parse(review.ai_review_text) directly into dangerouslySetInnerHTML. marked does not sanitize, so any HTML/script the registry returns in ai_review_text executes in the user's DOM. Wrap the parsed output in DOMPurify.sanitize. Adds dompurify as a runtime dependency and a regression test (jsdom + the real DOMPurify pipeline) covering onerror, " + const safe = renderAiReview(payload) + expect(safe).not.toContain("