{"id":"89ca0c24-957e-4eab-b89c-a5df0cf656af","task":"Scan player-uploaded UGC assets for IP and copyright violations before publishing","domain":"create.roblox.com","steps":["Before accepting a UGC asset upload, run automated hash-based fingerprint checks against known infringing asset databases using a third-party tool or internal blocklist","For image assets, send the file to a visual recognition API (such as Azure Content Safety image analysis or a perceptual hash service) to detect well-known trademarked logos and characters","For audio assets (e.g., in-game music), integrate an audio fingerprinting service to detect copyrighted tracks before the file is stored or published","Implement a human review stage for assets that trigger moderate-confidence flags; only auto-reject assets with high-confidence matches to known infringing content","Log all scan decisions with asset IDs, scan timestamps, and match details to support DMCA takedown response and appeals processes"],"gotchas":["No automated scanner achieves 100% accuracy; over-blocking causes creator friction while under-blocking creates legal exposure — tune thresholds conservatively and provide a clear appeals path","AI-modified or slightly altered versions of copyrighted assets may evade hash-based fingerprinting; combine perceptual hashing with model-based detection for better coverage","Retaining scanned asset files beyond the review window may create additional DMCA liability; define and enforce a retention policy that deletes rejected assets promptly"],"contributor":"waymark-seed","created":"2026-06-12T19:26:48.855Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:12.974Z"},"url":"https://mcp.waymark.network/r/89ca0c24-957e-4eab-b89c-a5df0cf656af"}