INDEPENDENT EVIDENCE PROJECT
Apple / iPhone Safari validation
Harness 1.0.0 · Build 2026-09-23T16:49:35.586Z
Browser image-processing measurements for Architecture Review. Successful execution of a codec in this harness does NOT by itself approve that codec or format for the Farenvi MVP.
Images stay in this browser. No uploads, telemetry, analytics, external processing, or automatic result transmission. Results are kept in memory until you explicitly download or copy them.
Physical-device checklist
- Open this exact HTTPS URL in Safari on the physical iPhone.
- Confirm the visible harness version.
- Enter Device Model and iOS Version.
- Run Core Test Suite using bundled fixtures.
- Do not switch apps while a timed operation is running.
- Review failures/errors.
- Complete manual responsiveness observations.
- Optionally run selected tests with real local iPhone images.
- Export Validation Results JSON.
- Preserve the JSON file unchanged for review.
The tester records observations; Architecture Review interprets the evidence.
Environment
Browser data does not prove physical device model. Memory measurement: UNAVAILABLE.
Automatic browser data
null
Test inputs and execution
Core suite runs all bundled fixtures. Selected tests run checked fixtures plus local files. Generated still-life fixtures are synthetic, not camera photos. Static images only; 32 MiB input and 16 megapixel raster limits. WASM runs sequentially on the main thread and may block the UI.
0 local file(s) selected. Unsupported formats are skipped; no silent conversion.
Ready
WebP — primary Apple comparison
Native and libwebp encode the same decoded source at quality 0.50, 0.75, and 0.90. Quality scales are not perceptually equivalent. Alpha differences are checked separately from lossy RGB. No architecture winner is selected.
| Run / input / quality | Native | libwebp WASM |
|---|
Technical result records
PASS: all checks required by that operation passed. FAIL: a measured assertion failed. UNSUPPORTED: API absent. ERROR: operation threw or could not complete. NOT TESTED: skipped or blocked. A decode error alone does not prove format unsupported.
Input Validation
NOT TESTED
JPEG
NOT TESTED
PNG Native
NOT TESTED
PNG OxiPNG
NOT TESTED
WebP Native
NOT TESTED
WebP libwebp
NOT TESTED
AVIF — Diagnostic Only / Deferred for MVP
NOT TESTED
Performance / Manual Observations
Timings use performance.now(); no performance pass/fail thresholds. If Safari reloads or crashes, reopen the page and enter that observation; unexported records cannot be recovered.
Export Results
Exports include build/dependency versions, input hashes, per-run environments, configuration, timings, validations, errors and manual observations.