CLAUDE WATERMARK REMOVER · DESTINATION TEST
Does JSON.stringify retain a custom field attached to a URL object?
No. The measured URL exports as its URL string and omits the attached note field.
What the test establishes
The actual callback produces a URL without the marker. A note is then added directly to the URL object, and direct property access confirms it exists. JSON serialization nevertheless uses the URL serialization hook, yielding a string instead of an object with that note. Put review metadata beside the URL in an explicit record when both must survive an export.
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": "https://example.com/a",
"note": "reviewed",
"json": "{\"target\":\"https://example.com/a\"}"
}Capability boundary
No navigation or network request is made. This specializes the generic toJSON boundary to a native URL instance and does not test URL parameter ownership.
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.