Zerowidth CleanerMeasured guides

CLAUDE WATERMARK REMOVER · DESTINATION TEST

Where does a named capture appear after cleaning?

The measured match has groups.code equal to AB, alongside the ordinary numbered capture.

Tested 1 November 2026 · Synthetic fixtures · Minimal DOM

What the test establishes

The marker is removed before the named expression runs. Both the numbered capture and the named member refer to the same two-letter result. A destination export can choose the named record for a declared field rather than treating every match-array property as a data column. Keep a no-match branch in real integrations: this successful fixture only demonstrates where the captured value resides when the expression matches.

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": "AB",
  "numbered": "AB",
  "named": "AB",
  "groupKeys": [
    "code"
  ]
}

Capability boundary

This is one required named group. It does not test optional group absence, duplicate names, global enumeration or regex compatibility in older browsers.

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.