Zerowidth CleanerMeasured guides

CLAUDE WATERMARK REMOVER · DESTINATION TEST

Will padEnd create a three-symbol field around an emoji?

Not in this fixture. An emoji already occupies two UTF-16 units, so padding to three adds one period.

Tested 30 October 2026 · Synthetic fixtures · Minimal DOM

What the test establishes

The source contains one astral symbol next to a removable marker. After cleaning, the symbol is intact but its string length is two. The destination width parameter therefore leaves room for only one padding unit. A fixed-display-width export needs a separately defined display-width calculation rather than treating string length as terminal columns.

Reproduce the observation

Save tested-app.js and reproduce.cjs together, then run node reproduce.cjs. Compare its output with the recorded observation. The harness executes the actual homepage callback in a minimal DOM and records its resulting field values and method calls. Destination operations run in Node.js; the homepage DOM is a controlled substitute. Runtime: v24.22.1. No submitted text or genuine Claude output is used.

{
  "cleaned": "😀",
  "padded": "😀.",
  "units": 2,
  "points": 1
}

Capability boundary

This is right-padding, not the earlier prefix-padding test. Neither code points nor UTF-16 units establish font width, terminal columns or grapheme boundaries.

This Claude watermark remover edits a small selected character set. These callback observations do not establish authorship, detector scores, statistical-watermark removal or end-to-end browser behavior. For real work, keep the original and compare the exact result at its destination.

Primary material and next step

The tested first-party source snapshot and complete harness are the primary material for this page. For broader scope, read invisible Unicode versus AI watermarks, or return to the cleaner.