diff --git a/plugins/voyage/tests/e2e/voyage-playground-a11y.spec.mjs b/plugins/voyage/tests/e2e/voyage-playground-a11y.spec.mjs index 8e5cec1..8f5fade 100644 --- a/plugins/voyage/tests/e2e/voyage-playground-a11y.spec.mjs +++ b/plugins/voyage/tests/e2e/voyage-playground-a11y.spec.mjs @@ -206,4 +206,27 @@ test.describe('voyage-playground a11y (axe-core)', () => { fullPage: false, }); }); + + // v4.3 Step 2 — Group D Playwright XSS injection runtime guard + // (finding 1d3591d4). Behavioral counterpart to the DOMPurify fix in + // renderArtifact (Step 1). Injects a markdown + // payload via scheduleRender and verifies neither a JS dialog fires nor + // a \n# title', + }); + }); + expect(dialogCount, `expected zero dialogs but got ${dialogCount}`).toBe(0); + expect(await page.locator('#voyage-viewport script').count()).toBe(0); + }); });