Methodology
How MetaRinse validates files, parses readable metadata, re-encodes pixels in the browser, and verifies each output.
Tested product scope
Last automated review: 2026-07-12. JPEG and PNG are supported. WebP is feature-detected. HEIC, HEIF, AVIF, GIF, TIFF, BMP, SVG, RAW, PDF, and video are rejected rather than silently converted.
These are Playwright-bundled browser engines, not recorded manual results from installed stable Safari, Chrome, or Edge.
| Date | Automated environment | Coverage |
|---|---|---|
| 2026-07-12 | Chromium 149.0.7827.55 · Playwright 1.61.1 · Windows 11 10.0.26200 | Fixture upload, inspection, cleaning, download, output re-parse, accessibility, and no-upload checks |
| 2026-07-12 | Firefox 151.0 · Playwright 1.61.1 · Windows 11 10.0.26200 | Fixture upload, inspection, cleaning, download, output re-parse, accessibility, and no-upload checks |
| 2026-07-12 | WebKit 26.5 · Playwright 1.61.1 · Windows 11 10.0.26200 | Fixture upload, inspection, cleaning, download, output re-parse, accessibility, and no-upload checks |
| 2026-07-12 | Mobile Chromium 149.0.7827.55 · Pixel 7 emulation · Playwright 1.61.1 · Windows 11 10.0.26200 | Fixture upload, inspection, cleaning, download, output re-parse, accessibility, and no-upload checks |
| Required before launch | Current stable Safari, Chrome, Edge, Firefox, and assistive technology | Manual real-device results are not yet recorded and must be completed on the production domain |
Validation and inspection
- Checks filename extension, reported MIME type, and JPEG/PNG/WebP magic bytes.
- Rejects files above 25 MB, batches above 20 files or 150 MB, and decoded images above 60 megapixels.
- Uses exifr 7.1.3 together with small local PNG/WebP container readers. The readers add WebP EXIF/XMP/ICC support plus PNG zTXt and non-XMP iTXt text inspection.
- Renders all extracted values as text and masks serial-like values by default.
Processing model
Supported browsers use a Web Worker with createImageBitmap and OffscreenCanvas. The original file is decoded with displayed orientation, drawn to a new canvas, and re-encoded in the same format. Browsers without OffscreenCanvas use a sequential HTML canvas fallback. JPEG and WebP are lossy; PNG is also regenerated and may change profile behavior.
Verification
The output Blob is parsed with the same metadata adapter. A result is downloadable only when no readable private or descriptive category remains. Technical dimensions may still be readable. This approach does not establish forensic cleanliness or anonymity.
Fixtures and automated checks
- Original project fixtures include metadata-bearing JPEG, PNG, and WebP files, EXIF UserComment, PNG zTXt/iTXt, clean images, an orientation sample, and a corrupt image.
- Unit tests cover signatures, limits, naming, classification, masking, routes, quality settings, reducer transitions, and verification.
- Playwright tests exercise upload, inspection, cleaning, download, ZIP, cancellation, errors, localization, legal routes, mobile layout, axe checks, and the no-upload network rule.
- Fixture generation is reproducible through the repository script and documented in README.md.
Known limitations
- Vendor-specific metadata may not be understood by exifr.
- Canvas re-encoding can change compression, file size, color profiles, and subtle pixel values.
- Visible information, filenames, cloud copies, file-system dates, and platform account records are outside the metadata scanner.
- Low-memory devices may require smaller batches.
- WebP encoding depends on the browser.
- Inflated PNG compressed-text metadata is capped at 2 MB; malformed or larger text chunks are rejected instead of being treated as empty.
Security reporting
Report a reproducible security or privacy issue to metarinse@gmail.com. Do not include private photos, metadata, credentials, or sensitive personal information in the report.