CLAUDE WATERMARK REMOVER · DESTINATION TEST
Can I snapshot a cleaned review record that points to itself?
structuredClone preserves the self-link; JSON.stringify throws TypeError.
What the test establishes
The review record deliberately has a back reference. The observation checks identity rather than attempting to serialize the cyclic clone again. A local snapshot and a JSON export have different structural contracts. If the application needs an interchange file, it must choose a representation for links instead of assuming a successful clone guarantees a successful export. The text remains AB in both the source record and the clone. Removing a selected character from that text cannot remove a reference edge elsewhere in the object graph. This experiment isolates a container failure that could otherwise be misreported as cleanup failure.
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.
{
"text": "AB",
"selfLink": true,
"newRoot": true,
"jsonError": "TypeError"
}Capability boundary
One self-reference and one string field are measured. Transfer lists and file persistence are excluded.
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.