# EXIF Studio fidelity verification v1

Published 2026-10-30: https://exifdesk.com/fidelity-verification

These tiny synthetic color grids contain invented author/camera/GPS fields. They contain no real people, camera captures or personal locations. Fixture images and transformed copies are dedicated under CC0 1.0: https://creativecommons.org/publicdomain/zero/1.0/

## Reproduce
Use Node.js >=22.13. Extract the complete kit, enter its directory, run npm install, then npm run verify. Installing sharp downloads a native decoder; verification itself is local and does not send photos anywhere. The exact sharp version is pinned in package.json. Node, OS and libvips differences can affect decoded results; see results.json for the published versions.

verify.cjs regenerates all four operations from the fixtures, asserts output file bytes match the published outputs, compares compressed payloads and raw decoded pixels, checks dimensions/pages/bit depth/frame delays and verifies author/GPS fields. It calls the exact JPEG and originals-ZIP functions extracted from the app plus the PNG/WebP/TIFF writer snapshot. Expected hashes are in results.json; source fixture hashes are in manifest.json. originals.zip uses the app's STORE action and must extract to exactly the source bytes. Dates in ZIP headers may differ on regeneration; entry bytes and method, not whole regenerated ZIP hash, are compared.

edit changes author/camera and GPS to invented values. gps removes EXIF GPS but retains author. exif/all remove the tested descriptive fields. Full-file hashes change; preserved image payload hashes and decoded raw pixel hashes must not. No auto-orientation is applied by the decoder. These fixtures have no orientation rotation. Removing JPEG/PNG/WebP orientation from other files can change displayed rotation without changing compressed pixels.

## Scope and limits
9 fixtures, 36 transformations. Tiny samples are reproducible examples, not a camera compatibility study. Includes lossy/lossless WebP, animated WebP, classic TIFF LZW/Deflate, 16-bit TIFF and multipage TIFF. Excludes BigTIFF, every camera/vendor extension, malformed structures and large-file stress. TIFF preview in the app is first-page only; exported changes affect all pages. Only the author/camera/GPS subset is asserted as metadata; this does not prove forensic anonymity. GPS-only cleanup does not remove XMP/IPTC locations, names or visible clues. Original ZIP retains all original metadata. No claim of independent certification, speed or improved search rank.

## Code and licenses
Writer snapshots and this harness are provided for verification; no general software license is granted to application code. Third-party libraries retain notices: piexifjs MIT, exifr MIT, JSZip MIT/GPLv3, sharp Apache-2.0. The vendor files contain their upstream notices.

## Cite
EXIF Studio. Metadata fidelity verification, v1 (2026-10-30). https://exifdesk.com/fidelity-verification#results
Please include the version, fixture coverage and limitation that this is a product-authored synthetic test. Corrections: support@exifdesk.com
