CLAUDE WATERMARK REMOVER · MARKDOWN TEST
Why does a seemingly empty Markdown bullet show as a paragraph?
U+200B directly after a lone hyphen made this line a paragraph. Removing it produced an empty list item.
What changed in the preview
The line has no visible item text in either input. What changes is whether the marker is immediately followed by end of line. Delete the whole line if the bullet is accidental; give it a label if the list is intentional.
What this test covers
This marker has no adjacent list items. With neighbors, inspect how the items group as well. Compare the two rendered outputs below with the original and cleaned source.
Measured source and preview
Original Markdown
-\u200B
Cleaned Markdown
-
The original source and its preview contain a literal U+200B, displayed below as \u200B. The HTML is shown as text.
Before cleanup
<p>-\u200B</p>
After cleanup
<ul> <li></li> </ul>
Reproduce locally
Save reproduce.cjs and tested-app.js together. Run npm install --no-save commonmark@0.31.2, then node reproduce.cjs. Compare with the recorded input, output and HTML. The test uses the homepage callback with a minimal DOM. It does not use Claude output or test statistical watermark detection.
See the CommonMark specification and another measured Markdown case.