CLAUDE WATERMARK REMOVER · DESTINATION TEST
Can a JSON key whitelist remove the second cleaned row from an array?
No. The whitelist containing 0 still serializes both array elements.
What the test establishes
The destination contains a dense array of two strings, rather than an object with two named fields. The replacer array is supplied as a property whitelist, but it does not act as an array-index selection rule in this observation. Both values survive serialization. Build a filtered destination array before serializing when row selection is required. This avoids confusing an object member policy with an export record policy and keeps cleanup independent from selection.
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.
{
"json": "[\"AB\",\"CD\"]"
}Capability boundary
One dense string array is measured. This does not cover a replacer function, nested objects or accessors.
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.