From 2b1c5b99c28bc3334203bfd28545afed360d82bd Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 17:09:10 +0900 Subject: [PATCH 01/11] Add verified 12MP economic resilience evidence --- .github/workflows/ci.yml | 6 + .github/workflows/demo-evidence.yml | 94 +- CHANGELOG.md | 2 + CONTRIBUTING.md | 1 + Dockerfile | 3 + README.md | 8 + docs/benchmarks/README.md | 44 +- docs/launch/README.md | 9 + docs/verification-architecture.md | 1 + example/android/app/build.gradle | 3 + .../example/ExampleImageSourceModule.kt | 200 ++- example/fixtures/kit-only-12mp-v1.jpg | Bin 0 -> 1721333 bytes example/fixtures/kit-only-12mp-v1.json | 21 + .../project.pbxproj | 4 + .../ExampleImageSource.m | 202 +++ example/src/App.tsx | 8 + example/src/economicResilienceBenchmark.ts | 454 +++++++ example/src/exampleNative.ts | 12 + package.json | 2 + scripts/capture-android-demo.sh | 101 +- ...create-economic-resilience-environment.mjs | 155 +++ .../create-economic-resilience-evidence.mjs | 194 +++ scripts/economic-resilience-evidence-core.mjs | 1147 +++++++++++++++++ .../verify-economic-resilience-evidence.mjs | 234 ++++ test/demoCaptureScriptContract.test.ts | 55 + test/economicResilienceBenchmark.test.mjs | 258 ++++ test/economicResilienceEvidence.test.mjs | 991 ++++++++++++++ ...micResilienceNativeSourceContract.test.mjs | 57 + test/packageContract.test.ts | 8 + website/reference/evidence.md | 19 + 30 files changed, 4270 insertions(+), 23 deletions(-) create mode 100644 example/fixtures/kit-only-12mp-v1.jpg create mode 100644 example/fixtures/kit-only-12mp-v1.json create mode 100644 example/src/economicResilienceBenchmark.ts create mode 100644 scripts/create-economic-resilience-environment.mjs create mode 100644 scripts/create-economic-resilience-evidence.mjs create mode 100644 scripts/economic-resilience-evidence-core.mjs create mode 100644 scripts/verify-economic-resilience-evidence.mjs create mode 100644 test/economicResilienceBenchmark.test.mjs create mode 100644 test/economicResilienceEvidence.test.mjs create mode 100644 test/economicResilienceNativeSourceContract.test.mjs diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 67fc428..84353db 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -56,6 +56,12 @@ jobs: - name: Install dependencies run: pnpm install --frozen-lockfile + - name: Install evidence replay tools + run: | + sudo apt-get update + sudo apt-get install --yes --no-install-recommends ffmpeg + ffmpeg -version | head -n 1 + - name: Verify package run: pnpm verify diff --git a/.github/workflows/demo-evidence.yml b/.github/workflows/demo-evidence.yml index 57b4ad2..fa66f75 100644 --- a/.github/workflows/demo-evidence.yml +++ b/.github/workflows/demo-evidence.yml @@ -11,6 +11,8 @@ on: - "src/**" - "package.json" - "scripts/capture-android-demo.sh" + - "scripts/create-economic-resilience-environment.mjs" + - "scripts/create-economic-resilience-evidence.mjs" - "scripts/benchmark-core.mjs" - "scripts/benchmark-comparison-core.mjs" - "scripts/create-benchmark-comparison-evidence.mjs" @@ -20,6 +22,8 @@ on: - "scripts/demo-visual-agreement-core.mjs" - "scripts/measure-demo-visual-agreement.mjs" - "scripts/demo-evidence-core.mjs" + - "scripts/economic-resilience-evidence-core.mjs" + - "scripts/verify-economic-resilience-evidence.mjs" - "scripts/guided-demo-core.mjs" - "scripts/normalize-demo-recording.mjs" - "scripts/verify-benchmark-comparison-evidence.mjs" @@ -48,6 +52,14 @@ jobs: with: ref: ${{ inputs.source_sha || github.event.pull_request.head.sha || github.sha }} + - name: Verify exact source checkout + env: + EXPECTED_SOURCE_SHA: ${{ inputs.source_sha || github.event.pull_request.head.sha || github.sha }} + run: | + set -euo pipefail + [[ "$EXPECTED_SOURCE_SHA" =~ ^[0-9a-f]{40}$ ]] + test "$(git rev-parse HEAD)" = "$EXPECTED_SOURCE_SHA" + - name: Setup Java uses: actions/setup-java@03ad4de0992f5dab5e18fcb136590ce7c4a0ac95 # v5 with: @@ -127,6 +139,14 @@ jobs: with: ref: ${{ inputs.source_sha || github.event.pull_request.head.sha || github.sha }} + - name: Verify exact source checkout + env: + EXPECTED_SOURCE_SHA: ${{ inputs.source_sha || github.event.pull_request.head.sha || github.sha }} + run: | + set -euo pipefail + [[ "$EXPECTED_SOURCE_SHA" =~ ^[0-9a-f]{40}$ ]] + test "$(git rev-parse HEAD)" = "$EXPECTED_SOURCE_SHA" + - name: Setup pnpm uses: ./.github/actions/setup-pnpm @@ -187,9 +207,10 @@ jobs: xcrun simctl io "$udid" recordVideo --codec=h264 --force /tmp/rnick-demo-raw/recording-raw.mp4 > /tmp/rnick-demo-raw/record-video.log 2>&1 & video_pid=$! sleep 2 + capture_started_at=$(xcrun simctl spawn "$udid" date '+%Y-%m-%d %H:%M:%S' | tr -d '\r') SIMCTL_CHILD_RNICK_DEMO_CAPTURE=1 xcrun simctl launch --terminate-running-process "$udid" com.imagecompressionkit.example --rnick-demo-capture capture_native_log() { - xcrun simctl spawn "$udid" log show --style compact --last 3m --predicate 'eventMessage CONTAINS "RNICK_DEMO_" OR eventMessage CONTAINS "RNICK_GUIDED_DEMO_" OR eventMessage CONTAINS "RNICK_BENCHMARK_"' > /tmp/rnick-demo-raw/native.log + xcrun simctl spawn "$udid" log show --style compact --start "$capture_started_at" --predicate 'eventMessage CONTAINS "RNICK_DEMO_" OR eventMessage CONTAINS "RNICK_GUIDED_DEMO_" OR eventMessage CONTAINS "RNICK_BENCHMARK_" OR eventMessage CONTAINS "RNICK_ECONOMIC_RESILIENCE_"' > /tmp/rnick-demo-raw/native.log } for attempt in $(seq 1 60); do capture_native_log @@ -219,14 +240,15 @@ jobs: test "$attempt" != "60" sleep 1 done - for attempt in $(seq 1 120); do + for attempt in $(seq 1 300); do capture_native_log if grep -q 'RNICK_DEMO_PASS' /tmp/rnick-demo-raw/native.log && \ grep -q 'RNICK_BENCHMARK_PASS' /tmp/rnick-demo-raw/native.log && \ - grep -q 'RNICK_BENCHMARK_COMPARISON_PASS' /tmp/rnick-demo-raw/native.log; then + grep -q 'RNICK_BENCHMARK_COMPARISON_PASS' /tmp/rnick-demo-raw/native.log && \ + grep -q 'RNICK_ECONOMIC_RESILIENCE_PASS' /tmp/rnick-demo-raw/native.log; then break fi - test "$attempt" != "120" + test "$attempt" != "300" sleep 1 done sleep 2 @@ -293,6 +315,70 @@ jobs: --destination demo-evidence/ios \ --run-url "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" node scripts/verify-benchmark-comparison-evidence.mjs demo-evidence/ios + mkdir -p /tmp/rnick-economic-raw + node --input-type=module - /tmp/rnick-demo-raw/native.log > /tmp/rnick-economic-raw/uris.txt <<'NODE' + import { readFileSync } from 'node:fs'; + import { parseNativeEconomicResiliencePayload } from './scripts/economic-resilience-evidence-core.mjs'; + const payload = parseNativeEconomicResiliencePayload(readFileSync(process.argv[2], 'utf8')); + console.log(new URL(payload.fixture.sourceUri).pathname); + console.log(new URL(payload.representative.stagedOutputUri).pathname); + NODE + cp "$(sed -n '1p' /tmp/rnick-economic-raw/uris.txt)" /tmp/rnick-economic-raw/source.jpg + cp "$(sed -n '2p' /tmp/rnick-economic-raw/uris.txt)" /tmp/rnick-economic-raw/output.jpg + node scripts/measure-demo-visual-agreement.mjs \ + --source /tmp/rnick-economic-raw/source.jpg \ + --output /tmp/rnick-economic-raw/output.jpg \ + --resize-mode contain \ + --max-width 1600 \ + --max-height 1200 \ + --report /tmp/rnick-economic-raw/visual-agreement.json + os_build=$(xcrun simctl spawn "$udid" sw_vers -buildVersion | tr -d '\r') + abi=$(xcrun simctl spawn "$udid" uname -m | tr -d '\r') + react_native_version=$(node -e "process.stdout.write(require('./example/package.json').dependencies['react-native'])") + node_version=$(node --version) + ffmpeg_version=$(ffmpeg -version | head -n 1) + ffprobe_version=$(ffprobe -version | head -n 1) + xcode_version=$(xcodebuild -version | tr '\n' ' ' | sed 's/[[:space:]]*$//') + simulator_sdk=$(xcrun --sdk iphonesimulator --show-sdk-version) + node scripts/create-economic-resilience-environment.mjs \ + --platform ios \ + --runtime "$runtime" \ + --os-build "$os_build" \ + --device "$device" \ + --device-kind simulator \ + --abi "$abi" \ + --react-native-version "$react_native_version" \ + --native-log /tmp/rnick-demo-raw/native.log \ + --build-type debug \ + --runner-label macos-latest \ + --runner-os "$RUNNER_OS" \ + --runner-arch "$RUNNER_ARCH" \ + --runner-name "$RUNNER_NAME" \ + --image-os "$ImageOS" \ + --image-version "$ImageVersion" \ + --node "$node_version" \ + --ffmpeg "$ffmpeg_version" \ + --ffprobe "$ffprobe_version" \ + --primary-toolchain "$xcode_version" \ + --platform-sdk "iOS Simulator $simulator_sdk" \ + --output /tmp/rnick-economic-raw/environment.json + node scripts/create-economic-resilience-evidence.mjs \ + --platform ios \ + --package-version "${{ steps.package.outputs.version }}" \ + --source-sha "${{ inputs.source_sha || github.event.pull_request.head.sha || github.sha }}" \ + --run-id "$GITHUB_RUN_ID" \ + --run-attempt "$GITHUB_RUN_ATTEMPT" \ + --run-url "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" \ + --log /tmp/rnick-demo-raw/native.log \ + --source /tmp/rnick-economic-raw/source.jpg \ + --output /tmp/rnick-economic-raw/output.jpg \ + --fixture-manifest example/fixtures/kit-only-12mp-v1.json \ + --visual-agreement /tmp/rnick-economic-raw/visual-agreement.json \ + --environment /tmp/rnick-economic-raw/environment.json \ + --destination demo-evidence/ios + node scripts/verify-economic-resilience-evidence.mjs \ + --artifact-dir demo-evidence/ios/economic-resilience \ + --report-file /tmp/rnick-economic-raw/verification.json - name: Upload iOS evidence uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 diff --git a/CHANGELOG.md b/CHANGELOG.md index 9eea65d..577eab2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,8 @@ and patch releases remain backward compatible within the current minor line. arbitrary files, traversal, symlinks, and directories. - An iOS SDK privacy manifest declaring no tracking or collected data and the C617.1 reason used to inspect package-owned cache output metadata. +- A reproducible kit-only 12 MP JPEG evidence harness with exact environment, + byte, geometry, visual-agreement, latency, and output-cleanup verification. ### Changed diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 1c62e2e..3e046f1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -21,6 +21,7 @@ Requirements: - pnpm 11.8.0 through Corepack - Ruby/CocoaPods and Xcode for iOS validation - Java 21 and Android SDK 36 for Android executable validation +- ffmpeg and ffprobe for decode, geometry, and SSIM evidence replay ```bash corepack enable diff --git a/Dockerfile b/Dockerfile index 6f2cf8f..a61034f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -24,6 +24,7 @@ RUN set -eux; \ apt-get install -y --no-install-recommends \ ca-certificates \ curl \ + ffmpeg \ git \ make \ openssh-client \ @@ -31,6 +32,8 @@ RUN set -eux; \ unzip \ xz-utils \ g++; \ + ffmpeg -version | head -n 1; \ + ffprobe -version | head -n 1; \ rm -rf /var/lib/apt/lists/* RUN set -eux; \ diff --git a/README.md b/README.md index 5f4fae6..4065d23 100644 --- a/README.md +++ b/README.md @@ -372,6 +372,10 @@ Important limitations: ## Development verification +The full repository gate requires `ffmpeg` and `ffprobe` so retained and +newly generated native image evidence can be decoded and visually replayed. +The pinned Docker lane includes both tools. + ```bash pnpm test:coverage pnpm verify @@ -416,6 +420,10 @@ movie header. The same runs emit versioned baseline and exact-plan comparison evidence with raw samples, fixture and plan digests, balanced execution positions, and median/p95 summaries. +They also create a kit-only 12 MP JPEG source-tree evidence bundle that binds source and +output bytes, environment, capabilities, latency samples, visual agreement, +and package-output cleanup. The bundle is an environment-specific observation, +not a speed ranking, cost-savings claim, or real-device benchmark. Comparison dependencies remain inside the private example application and outside the published package. See the [benchmark methodology](docs/benchmarks/README.md) for its timing boundary, diff --git a/docs/benchmarks/README.md b/docs/benchmarks/README.md index 40de4e5..90c2d1a 100644 --- a/docs/benchmarks/README.md +++ b/docs/benchmarks/README.md @@ -34,12 +34,54 @@ Do not compare Android measurements with iOS measurements. Native codecs, device classes, simulator behavior, filesystem caches, thermals, and runner load differ. A result describes only its captured environment. +## 12 MP kit-only economic resilience + +The same hosted workflow runs a separate large-photo case for this package +only. Its repository-generated, non-personal JPEG is exactly 4,000 × 3,000, +1,721,333 bytes, and SHA-256 +`bdcf4e083f1860d8829898211e4b1c428a80dfd53dceca697c6f7e4a4901bfcc`. +Android and iOS bundle those same fixture bytes. The request is fixed to +`contain` within 1,600 × 1,200, JPEG quality 90, `maxBytes: 500_000`, and +`metadata: "strip"`. + +Each platform runs two warmups and ten sequential measured calls. The timer +surrounds only `compressImage(options)`; option construction, inspection, +staging, and cleanup are outside it. Measured iteration 10 is copied to an +example-owned staging file before all 12 package-owned outputs are removed. +Acceptance requires a decodable 1,600 × 1,200 JPEG at or below the byte target, +exact native/file byte and SHA-256 agreement, no APP1/APP13/comment metadata, +upright SSIM of at least 0.90, an upright-over-vertical-flip margin of at least +0.02, the unchanged source, and zero package-output residuals. + +The artifact records the exact checked-out source commit, package source-tree +version, workflow run and attempt, runtime, OS build, simulator/emulator, +architecture, JS engine, React Native version, runner image, toolchains, +capabilities, raw warmup/measured samples, and signed source-minus-output byte +difference. `sourceToOutputByteDifference` is an observation, not avoided +transfer or storage. The source remains, no matched transfer baseline exists, +and no cost-savings claim is made. + +This case is not a competitor comparison, speed ranking, production workload, +physical-device benchmark, peak-RSS measurement, or universal resilience +rate. Verify a downloaded platform bundle with the locally installed ffmpeg +and ffprobe tools: + +```bash +pnpm verify:economic-resilience-evidence -- \ + --artifact-dir path/to/native-demo-platform-artifact/economic-resilience +``` + +The replay reports both captured and local ffmpeg versions and gates on the +recalculated decode, geometry, hashes, SSIM, and flip-control report. Identical +version strings are not required when the rounded measurements reproduce. + ## Capture and verify The [Native Demo Evidence workflow](https://github.com/GGULBAE/react-native-image-compression-kit/actions/workflows/demo-evidence.yml) runs the benchmark after the visible demo result on both platforms. Each platform artifact contains `benchmark.json`, the exact source fixture, the demo -manifest, input/output images, screenshot, and native log. +manifest, input/output images, screenshot, native log, and an independently +scoped `economic-resilience/` directory. After downloading one platform artifact, verify it without network access: diff --git a/docs/launch/README.md b/docs/launch/README.md index 587b33b..07d9887 100644 --- a/docs/launch/README.md +++ b/docs/launch/README.md @@ -68,6 +68,15 @@ then replace `website/public/demo` in a focused pull request. Run publishing. Never synthesize a missing platform recording or relabel a local capture as hosted evidence. +Each platform artifact may also contain the independently scoped +`economic-resilience/` bundle. Verify that directory with +`pnpm verify:economic-resilience-evidence -- --artifact-dir ` before any +reviewed import. If it is later exposed publicly, copy both platforms into a +new versioned evidence directory; do not place the large-photo files inside +the current `/demo` snapshot or overwrite older evidence. A public import is a +separate focused change and must preserve the bundle's source-tree, +environment, cleanup, and no-cost-claim boundaries. + The hosted screen recorders can omit repeated frames during static stages. The workflow therefore rescales the real captured frames to the independently logged walkthrough duration, caps or pads that moving timeline to the logged diff --git a/docs/verification-architecture.md b/docs/verification-architecture.md index f296730..85eac22 100644 --- a/docs/verification-architecture.md +++ b/docs/verification-architecture.md @@ -16,6 +16,7 @@ from the npm package. | Public documentation site structure, claims, local links, and npm exclusion | `scripts/verify-site.mjs` | `pnpm site:check` and `pnpm site:build` | | Native demo result metrics, source/output/screenshot/recording bytes, auto-oriented SSIM and vertical-flip control, ordered walkthrough timing, parsed video-track duration, timestamp normalization, digests, platform provenance, and exact source identity | `test/demoEvidence.test.mjs`, `test/demoVisualAgreement.test.mjs`, `test/guidedDemoCore.test.mjs`, `test/demoCaptureScriptContract.test.ts`, `scripts/demo-evidence-core.mjs`, `scripts/demo-visual-agreement-core.mjs`, and `scripts/guided-demo-core.mjs` | Native Demo Evidence workflow and `pnpm verify:demo-evidence` | | Native baseline and exact-plan implementation comparison metrics, balanced sample positions, comparator identity, fixture/plan bytes, digests, and platform provenance | `test/benchmark.test.mjs`, `test/benchmarkComparison.test.mjs`, `scripts/benchmark-core.mjs`, and `scripts/benchmark-comparison-core.mjs` | Native Demo Evidence workflow, `pnpm verify:benchmark-evidence`, and `pnpm verify:benchmark-comparison-evidence` | +| Kit-only 12 MP source/output bytes, exact environment and capabilities, call-only timing, decode/geometry, a `strip` request with no APP1/APP13/JPEG comments, SSIM/flip control, signed byte difference, and zero package-output residuals | `test/economicResilienceBenchmark.test.mjs`, `test/economicResilienceEvidence.test.mjs`, `test/economicResilienceNativeSourceContract.test.mjs`, and `scripts/economic-resilience-evidence-core.mjs` | Native Demo Evidence workflow and `pnpm verify:economic-resilience-evidence` | | Packed-consumer compatibility lane definitions | `test/compatibilityMatrix.test.mjs` and `scripts/compatibility-matrix-core.mjs` | `pnpm fixtures:compatibility:check` and the Compatibility workflow | | Built public-site performance, accessibility, and SEO | `scripts/verify-site-quality.mjs` | `pnpm site:build && pnpm site:quality` | | Repository metadata, security features, Actions policy, rulesets, environments, and Pages | `test/repositorySettings.test.mjs`, `docs/repository-settings.json`, and `scripts/repository-settings-core.mjs` | `pnpm fixtures:repository-settings:check` and `pnpm audit:repository-settings` | diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index b5dc4df..c5b7ae2 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -85,6 +85,9 @@ android { versionCode 1 versionName "1.0" } + sourceSets { + main.assets.srcDirs += ["../../fixtures"] + } signingConfigs { debug { storeFile file('debug.keystore') diff --git a/example/android/app/src/main/java/com/imagecompressionkit/example/ExampleImageSourceModule.kt b/example/android/app/src/main/java/com/imagecompressionkit/example/ExampleImageSourceModule.kt index 052d194..4078779 100644 --- a/example/android/app/src/main/java/com/imagecompressionkit/example/ExampleImageSourceModule.kt +++ b/example/android/app/src/main/java/com/imagecompressionkit/example/ExampleImageSourceModule.kt @@ -1,12 +1,19 @@ package com.imagecompressionkit.example +import android.graphics.BitmapFactory import android.net.Uri +import android.system.ErrnoException +import android.system.Os +import android.system.OsConstants +import android.system.StructStat import android.util.Log +import com.facebook.react.bridge.Arguments import com.facebook.react.bridge.Promise import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.bridge.ReactContextBaseJavaModule import com.facebook.react.bridge.ReactMethod import java.io.File +import java.security.MessageDigest class ExampleImageSourceModule( private val reactContext: ReactApplicationContext @@ -34,22 +41,94 @@ class ExampleImageSourceModule( @ReactMethod fun copySampleJpegToCache(promise: Promise) { - try { - val outputDir = File(reactContext.cacheDir, "image-compression-kit-example") + copyAssetToCache("sample.jpg", "sample.jpg", promise) + } + + @ReactMethod + fun copyEconomicResilienceJpegToCache(promise: Promise) { + copyAssetToCache( + "kit-only-12mp-v1.jpg", + "kit-only-12mp-v1.jpg", + promise + ) + } - if (!outputDir.exists() && !outputDir.mkdirs()) { - promise.reject( - "ERR_SAMPLE_FILE_ACCESS", - "Could not create sample image cache directory." - ) + @ReactMethod + fun inspectEvidenceImage(uri: String, promise: Promise) { + try { + val file = resolveCacheFile(uri) + if (!file.exists()) { + promise.resolve(Arguments.createMap().apply { + putBoolean("exists", false) + putDouble("byteSize", 0.0) + }) return } + if (!isRegularNonSymlink(file)) { + throw IllegalArgumentException("Evidence image URI must reference a regular file.") + } - val outputFile = File(outputDir, "sample.jpg") + val decodeBounds = BitmapFactory.Options().apply { inJustDecodeBounds = true } + BitmapFactory.decodeFile(file.absolutePath, decodeBounds) + if ( + decodeBounds.outMimeType != "image/jpeg" || + decodeBounds.outWidth <= 0 || + decodeBounds.outHeight <= 0 + ) { + throw IllegalArgumentException("Evidence image must be a decodable JPEG.") + } + + promise.resolve(Arguments.createMap().apply { + putBoolean("exists", true) + putDouble("byteSize", file.length().toDouble()) + putString("sha256", sha256(file)) + putString("mediaType", decodeBounds.outMimeType) + putInt("width", decodeBounds.outWidth) + putInt("height", decodeBounds.outHeight) + }) + } catch (error: Exception) { + promise.reject( + "ERR_EVIDENCE_FILE_ACCESS", + error.message ?: "Could not inspect the evidence image.", + error + ) + } + } - reactContext.assets.open("sample.jpg").use { input -> - outputFile.outputStream().use { output -> - input.copyTo(output) + @ReactMethod + fun copyEconomicResilienceOutputForEvidence(uri: String, promise: Promise) { + try { + val source = resolveCacheFile(uri) + if (!isRegularNonSymlink(source)) { + throw IllegalArgumentException("Representative output must be a regular file.") + } + val outputDir = evidenceCacheDirectory() + val outputFile = File(outputDir, "kit-only-12mp-v1-output.jpg") + removeExistingRegularDestination(outputFile) + writeAtomicRegularFile(outputDir, outputFile) { temporary -> + source.inputStream().use { input -> + temporary.outputStream().use { output -> input.copyTo(output) } + } + } + promise.resolve(Uri.fromFile(outputFile).toString()) + } catch (error: Exception) { + promise.reject( + "ERR_EVIDENCE_FILE_ACCESS", + error.message ?: "Could not preserve the representative evidence output.", + error + ) + } + } + + private fun copyAssetToCache(assetName: String, outputName: String, promise: Promise) { + try { + val outputDir = evidenceCacheDirectory() + val outputFile = File(outputDir, outputName) + removeExistingRegularDestination(outputFile) + + writeAtomicRegularFile(outputDir, outputFile) { temporary -> + reactContext.assets.open(assetName).use { input -> + temporary.outputStream().use { output -> input.copyTo(output) } } } @@ -62,4 +141,103 @@ class ExampleImageSourceModule( ) } } + + private fun evidenceCacheDirectory(): File { + val cacheRoot = reactContext.cacheDir.canonicalFile + val outputDir = File(cacheRoot, "image-compression-kit-example").absoluteFile + if (lstatOrNull(outputDir) == null && !outputDir.mkdir()) { + throw IllegalStateException("Could not create sample image cache directory.") + } + val canonicalOutputDir = outputDir.canonicalFile + val status = lstatOrNull(outputDir) + if ( + canonicalOutputDir.path != outputDir.path || + canonicalOutputDir.parentFile != cacheRoot || + status == null || + !OsConstants.S_ISDIR(status.st_mode) + ) { + throw IllegalStateException("Sample image cache directory must not be linked.") + } + return canonicalOutputDir + } + + private fun resolveCacheFile(uriValue: String): File { + val uri = Uri.parse(uriValue) + if ( + uri.scheme != "file" || + uri.isOpaque || + !uri.authority.isNullOrEmpty() || + uri.query != null || + uri.fragment != null || + uri.path.isNullOrBlank() + ) { + throw IllegalArgumentException("Evidence image URI must use file://.") + } + val cacheRoot = reactContext.cacheDir.canonicalFile + val requestedFile = File(requireNotNull(uri.path)).absoluteFile + val file = requestedFile.canonicalFile + val cachePrefix = cacheRoot.path + File.separator + if (requestedFile.path != file.path || !file.path.startsWith(cachePrefix)) { + throw IllegalArgumentException("Evidence image URI must stay inside the app cache.") + } + return file + } + + private fun removeExistingRegularDestination(file: File) { + val status = lstatOrNull(file) ?: return + if (!OsConstants.S_ISREG(status.st_mode) || !file.delete()) { + throw IllegalStateException("Evidence destination must be a removable regular file.") + } + } + + private fun writeAtomicRegularFile( + directory: File, + destination: File, + write: (File) -> Unit + ) { + val temporary = File.createTempFile(".rnick-evidence-", ".tmp", directory) + try { + if (!isRegularNonSymlink(temporary)) { + throw IllegalStateException("Evidence temporary file must be regular.") + } + write(temporary) + if (!isRegularNonSymlink(temporary)) { + throw IllegalStateException("Evidence temporary file changed during write.") + } + Os.rename(temporary.absolutePath, destination.absolutePath) + if (!isRegularNonSymlink(destination)) { + throw IllegalStateException("Evidence destination must remain a regular file.") + } + } finally { + if (lstatOrNull(temporary)?.let { OsConstants.S_ISREG(it.st_mode) } == true) { + temporary.delete() + } + } + } + + private fun isRegularNonSymlink(file: File): Boolean { + val status = lstatOrNull(file) ?: return false + return OsConstants.S_ISREG(status.st_mode) + } + + private fun lstatOrNull(file: File): StructStat? { + return try { + Os.lstat(file.absolutePath) + } catch (error: ErrnoException) { + if (error.errno == OsConstants.ENOENT) null else throw error + } + } + + private fun sha256(file: File): String { + val digest = MessageDigest.getInstance("SHA-256") + file.inputStream().buffered().use { input -> + val buffer = ByteArray(DEFAULT_BUFFER_SIZE) + while (true) { + val read = input.read(buffer) + if (read < 0) break + if (read > 0) digest.update(buffer, 0, read) + } + } + return digest.digest().joinToString("") { byte -> "%02x".format(byte) } + } } diff --git a/example/fixtures/kit-only-12mp-v1.jpg b/example/fixtures/kit-only-12mp-v1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6c30abf4b8a7696602bf0b9d511e89b0247ee85b GIT binary patch literal 1721333 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 z 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ȷ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

gK%tg;?EM=>@08ACg8V=rZ{fS4 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

?ogMnLmXKB%L$3g;Y@u^*hNi^Yj{Q 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 z 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 z�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

0$rgk55bvbqMAteY7m2pQj_KnY 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%0AV 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

1MR@ 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

Vq0F`@I~Y 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 lYgw$djxFF@p=~@ulrGhc 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 +#import #import #import +#import +#import @interface ExampleImageSource : NSObject @end @@ -14,6 +17,8 @@ @interface ExampleImageSource : NSObject static NSDictionary *ExampleImageSourceReadJpegMetadataSummary(NSData *data); static NSString *ExampleImageSourceReadJpegSoftwareMetadata(NSData *data); static NSNumber *ExampleImageSourceNumberValue(NSDictionary *properties, NSString *key); +static NSString *ExampleImageSourceScopedCachePath(NSString *uri); +static BOOL ExampleImageSourcePathIsRegularNonSymlink(NSString *path); @implementation ExampleImageSource @@ -72,6 +77,130 @@ @implementation ExampleImageSource reject:reject]; } +RCT_EXPORT_METHOD(copyEconomicResilienceJpegToCache:(RCTPromiseResolveBlock)resolve + rejecter:(RCTPromiseRejectBlock)reject) +{ + NSString *path = [[NSBundle mainBundle] pathForResource:@"kit-only-12mp-v1" ofType:@"jpg"]; + NSError *error = nil; + NSData *data = path.length > 0 + ? [NSData dataWithContentsOfFile:path options:NSDataReadingMappedIfSafe error:&error] + : nil; + if (data.length == 0) { + reject( + @"ERR_SAMPLE_FILE_ACCESS", + @"The bundled 12 MP evidence fixture is missing or empty.", + error + ); + return; + } + [self writeSampleWithFileName:@"kit-only-12mp-v1.jpg" + data:data + resolve:resolve + reject:reject]; +} + +RCT_EXPORT_METHOD(inspectEvidenceImage:(NSString *)uri + resolver:(RCTPromiseResolveBlock)resolve + rejecter:(RCTPromiseRejectBlock)reject) +{ + NSString *path = ExampleImageSourceScopedCachePath(uri); + if (path.length == 0) { + reject( + @"ERR_EVIDENCE_FILE_ACCESS", + @"Evidence image URI must reference the app cache.", + nil + ); + return; + } + + BOOL isDirectory = NO; + if (![[NSFileManager defaultManager] fileExistsAtPath:path isDirectory:&isDirectory]) { + resolve(@{ @"exists" : @NO, @"byteSize" : @0 }); + return; + } + if (isDirectory || !ExampleImageSourcePathIsRegularNonSymlink(path)) { + reject( + @"ERR_EVIDENCE_FILE_ACCESS", + @"Evidence image must be a decodable JPEG regular file.", + nil + ); + return; + } + NSError *error = nil; + NSData *data = [NSData dataWithContentsOfFile:path options:NSDataReadingMappedIfSafe error:&error]; + CGImageSourceRef source = data.length > 0 + ? CGImageSourceCreateWithData((__bridge CFDataRef)data, nil) + : nil; + NSString *mediaType = source != nil ? (__bridge NSString *)CGImageSourceGetType(source) : nil; + NSDictionary *properties = source != nil && CGImageSourceGetCount(source) == 1 + ? CFBridgingRelease(CGImageSourceCopyPropertiesAtIndex(source, 0, nil)) + : nil; + if (source != nil) CFRelease(source); + NSNumber *width = properties[(__bridge NSString *)kCGImagePropertyPixelWidth]; + NSNumber *height = properties[(__bridge NSString *)kCGImagePropertyPixelHeight]; + if ( + data.length == 0 || ![mediaType isEqualToString:@"public.jpeg"] || + ![width isKindOfClass:[NSNumber class]] || width.integerValue <= 0 || + ![height isKindOfClass:[NSNumber class]] || height.integerValue <= 0 + ) { + reject( + @"ERR_EVIDENCE_FILE_ACCESS", + @"Evidence image must be a decodable JPEG regular file.", + error + ); + return; + } + + unsigned char digest[CC_SHA256_DIGEST_LENGTH]; + CC_SHA256(data.bytes, (CC_LONG)data.length, digest); + NSMutableString *sha256 = [NSMutableString stringWithCapacity:CC_SHA256_DIGEST_LENGTH * 2]; + for (NSUInteger index = 0; index < CC_SHA256_DIGEST_LENGTH; index += 1) { + [sha256 appendFormat:@"%02x", digest[index]]; + } + resolve(@{ + @"exists" : @YES, + @"byteSize" : @(data.length), + @"sha256" : sha256, + @"mediaType" : @"image/jpeg", + @"width" : width, + @"height" : height + }); +} + +RCT_EXPORT_METHOD(copyEconomicResilienceOutputForEvidence:(NSString *)uri + resolver:(RCTPromiseResolveBlock)resolve + rejecter:(RCTPromiseRejectBlock)reject) +{ + NSString *path = ExampleImageSourceScopedCachePath(uri); + BOOL isDirectory = NO; + if ( + path.length == 0 || + ![[NSFileManager defaultManager] fileExistsAtPath:path isDirectory:&isDirectory] || + isDirectory || !ExampleImageSourcePathIsRegularNonSymlink(path) + ) { + reject( + @"ERR_EVIDENCE_FILE_ACCESS", + @"Representative output must be a regular file in the app cache.", + nil + ); + return; + } + NSError *error = nil; + NSData *data = [NSData dataWithContentsOfFile:path options:NSDataReadingMappedIfSafe error:&error]; + if (data.length == 0) { + reject( + @"ERR_EVIDENCE_FILE_ACCESS", + @"The representative package output is missing or empty.", + error + ); + return; + } + [self writeSampleWithFileName:@"kit-only-12mp-v1-output.jpg" + data:data + resolve:resolve + reject:reject]; +} + RCT_EXPORT_METHOD(copySamplePngToCache:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) { @@ -187,9 +316,51 @@ - (void)writeSampleWithFormat:(NSString *)format } NSString *fileName = [NSString stringWithFormat:@"rnick-sample.%@", format]; + [self writeSampleWithFileName:fileName data:data resolve:resolve reject:reject]; +} + +- (void)writeSampleWithFileName:(NSString *)fileName + data:(NSData *)data + resolve:(RCTPromiseResolveBlock)resolve + reject:(RCTPromiseRejectBlock)reject +{ + if (data == nil || data.length == 0) { + reject( + @"ERR_SAMPLE_GENERATION_FAILED", + @"The iOS example could not generate the sample image.", + nil + ); + return; + } NSString *path = [NSTemporaryDirectory() stringByAppendingPathComponent:fileName]; NSError *error = nil; + BOOL isDirectory = NO; + if ([[NSFileManager defaultManager] fileExistsAtPath:path isDirectory:&isDirectory]) { + if (isDirectory || !ExampleImageSourcePathIsRegularNonSymlink(path) || + ![[NSFileManager defaultManager] removeItemAtPath:path error:&error]) { + reject( + @"ERR_SAMPLE_WRITE_FAILED", + @"The iOS example refused an unsafe evidence destination.", + error + ); + return; + } + } else { + struct stat destinationStatus; + if ( + lstat(path.fileSystemRepresentation, &destinationStatus) == 0 || + errno != ENOENT + ) { + reject( + @"ERR_SAMPLE_WRITE_FAILED", + @"The iOS example refused a linked evidence destination.", + nil + ); + return; + } + } + if (![data writeToFile:path options:NSDataWritingAtomic error:&error]) { reject( @"ERR_SAMPLE_WRITE_FAILED", @@ -335,6 +506,37 @@ - (void)writeSampleWithFormat:(NSString *)format return [value isKindOfClass:[NSNumber class]] ? value : nil; } +static NSString *ExampleImageSourceScopedCachePath(NSString *uri) +{ + NSURL *URL = [NSURL URLWithString:uri]; + if (!URL.isFileURL || URL.host.length > 0 || URL.query.length > 0 || URL.fragment.length > 0) { + return nil; + } + NSString *standardizedPath = URL.path.stringByStandardizingPath; + NSString *standardizedParent = standardizedPath.stringByDeletingLastPathComponent; + NSString *canonicalParent = standardizedParent.stringByResolvingSymlinksInPath; + NSString *path = [canonicalParent stringByAppendingPathComponent:standardizedPath.lastPathComponent]; + NSString *cachePath = [NSSearchPathForDirectoriesInDomains( + NSCachesDirectory, + NSUserDomainMask, + YES + ) firstObject].stringByStandardizingPath.stringByResolvingSymlinksInPath; + NSString *temporaryPath = NSTemporaryDirectory().stringByStandardizingPath.stringByResolvingSymlinksInPath; + if ( + ([path hasPrefix:[cachePath stringByAppendingString:@"/"]] || + [path hasPrefix:[temporaryPath stringByAppendingString:@"/"]]) + ) { + return path; + } + return nil; +} + +static BOOL ExampleImageSourcePathIsRegularNonSymlink(NSString *path) +{ + struct stat status; + return lstat(path.fileSystemRepresentation, &status) == 0 && S_ISREG(status.st_mode); +} + static NSData *ExampleImageSourcePngData(void) { UIGraphicsImageRendererFormat *format = [UIGraphicsImageRendererFormat defaultFormat]; diff --git a/example/src/App.tsx b/example/src/App.tsx index d7b0950..47010f4 100644 --- a/example/src/App.tsx +++ b/example/src/App.tsx @@ -43,6 +43,7 @@ import { } from './guidedDemo'; import { runNativeBenchmark } from './nativeBenchmark'; import { runNativeComparisonBenchmark } from './nativeComparisonBenchmark'; +import { runEconomicResilienceBenchmark } from './economicResilienceBenchmark'; const EXAMPLE_OUTPUT_FORMATS: OutputFormat[] = ['jpeg', 'png', 'webp']; const RESIZE_MODES: ResizeMode[] = ['contain', 'cover', 'stretch']; @@ -201,6 +202,13 @@ export default function App(): React.JSX.Element { for (const message of comparison.logs) { await emitIOSSmokeLog(message); } + const economicResilience = await runEconomicResilienceBenchmark( + SAMPLE_MODULE, + Platform.OS === 'ios' ? 'ios' : 'android' + ); + for (const message of economicResilience.logs) { + await emitIOSSmokeLog(message); + } setTimeout(() => scrollViewRef.current?.scrollToEnd({ animated: false }), 500); } catch (captureError) { const errorState = toErrorState(captureError); diff --git a/example/src/economicResilienceBenchmark.ts b/example/src/economicResilienceBenchmark.ts new file mode 100644 index 0000000..8f95f26 --- /dev/null +++ b/example/src/economicResilienceBenchmark.ts @@ -0,0 +1,454 @@ +import { + compressImage, + getImageCompressionCapabilities, + removeCompressionOutput, + type CompressionOptions, + type CompressionResult, + type ImageCompressionCapabilities, +} from 'react-native-image-compression-kit'; +import type { + EvidenceImageInspection, + ExampleImageSourceModule, +} from './exampleNative'; +import { createChunkedNativeLogMessages } from './nativeBenchmarkLog'; + +export const ECONOMIC_RESILIENCE_ID = 'kit-only-12mp-jpeg-v1'; +export const ECONOMIC_RESILIENCE_WARMUP_ITERATIONS = 2; +export const ECONOMIC_RESILIENCE_MEASURED_ITERATIONS = 10; +export const ECONOMIC_RESILIENCE_REPRESENTATIVE_ITERATION = 10; +export const ECONOMIC_RESILIENCE_CHUNK_MARKER = + 'RNICK_ECONOMIC_RESILIENCE_CHUNK'; +export const ECONOMIC_RESILIENCE_PASS_MARKER = + 'RNICK_ECONOMIC_RESILIENCE_PASS'; +export const ECONOMIC_RESILIENCE_FIXTURE = { + id: 'kit-only-12mp-v1', + file: 'kit-only-12mp-v1.jpg', + mediaType: 'image/jpeg', + width: 4000, + height: 3000, + pixelCount: 12_000_000, + orientation: 1, + orientationEncoding: 'implicit-default-no-exif-orientation', + byteSize: 1_721_333, + maximumFixtureByteSize: 8_000_000, + sha256: 'bdcf4e083f1860d8829898211e4b1c428a80dfd53dceca697c6f7e4a4901bfcc', +} as const; +export const ECONOMIC_RESILIENCE_OPERATION = { + resize: { maxWidth: 1600, maxHeight: 1200, mode: 'contain' }, + output: { format: 'jpeg', quality: 90, maxBytes: 500_000 }, + metadata: 'strip', +} as const satisfies Omit; + +type NativePlatform = 'android' | 'ios'; +type NativeArchitecture = 'legacy' | 'new'; + +type ResilienceSample = { + phase: 'warmup' | 'measured'; + iteration: number; + elapsedMs: number; + result: Omit; + sourceToOutputByteDifference: number; + outputInspection: Required; + cleanup: { + packageOutputRemoved: true; + existsAfterRemoval: false; + residualByteSize: 0; + }; +}; + +export type EconomicResiliencePayload = { + schemaVersion: 1; + scenarioId: typeof ECONOMIC_RESILIENCE_ID; + implementation: { name: 'react-native-image-compression-kit' }; + platform: NativePlatform; + architecture: NativeArchitecture; + jsEngine: 'hermes' | 'jsc'; + fixture: typeof ECONOMIC_RESILIENCE_FIXTURE & { + sourceUri: string; + inspection: Required; + remainsAfterRun: true; + }; + operation: typeof ECONOMIC_RESILIENCE_OPERATION; + capabilities: ImageCompressionCapabilities; + timing: { + clock: 'performance.now' | 'Date.now'; + boundary: 'compressImage-call-only'; + warmupIterations: typeof ECONOMIC_RESILIENCE_WARMUP_ITERATIONS; + measuredIterations: typeof ECONOMIC_RESILIENCE_MEASURED_ITERATIONS; + }; + representative: { + measuredIteration: typeof ECONOMIC_RESILIENCE_REPRESENTATIVE_ITERATION; + stagedOutputUri: string; + inspection: Required; + }; + samples: ResilienceSample[]; + cleanup: { + attemptedPackageOutputs: number; + removedPackageOutputs: number; + residualPackageOutputs: number; + residualPackageOutputBytes: number; + }; +}; + +type Dependencies = { + compress: typeof compressImage; + removeOutput: typeof removeCompressionOutput; + capabilities: typeof getImageCompressionCapabilities; + now: () => number; + clock: 'performance.now' | 'Date.now'; + createCaptureId: () => string; +}; + +const DEFAULT_CLOCK = selectEconomicResilienceClock(); +const DEFAULT_DEPENDENCIES: Dependencies = { + compress: compressImage, + removeOutput: removeCompressionOutput, + capabilities: getImageCompressionCapabilities, + now: DEFAULT_CLOCK.now, + clock: DEFAULT_CLOCK.clock, + createCaptureId: defaultCaptureId, +}; + +export function selectEconomicResilienceClock( + runtime: { + performance?: { now?: unknown }; + Date?: { now?: unknown }; + } = globalThis as unknown as { + performance?: { now?: unknown }; + Date?: { now?: unknown }; + } +): Pick { + if (typeof runtime.performance?.now === 'function') { + const performanceNow = runtime.performance.now as () => number; + return { + now: () => performanceNow.call(runtime.performance), + clock: 'performance.now', + }; + } + if (typeof runtime.Date?.now !== 'function') { + throw new Error('No supported economic resilience clock is available.'); + } + const dateNow = runtime.Date.now as () => number; + return { now: () => dateNow.call(runtime.Date), clock: 'Date.now' }; +} + +export async function runEconomicResilienceBenchmark( + sampleModule: ExampleImageSourceModule, + platform: NativePlatform, + dependencies: Dependencies = DEFAULT_DEPENDENCIES +): Promise<{ payload: EconomicResiliencePayload; logs: string[] }> { + const [sourceUri, architecture, capabilities] = await Promise.all([ + sampleModule.copyEconomicResilienceJpegToCache(), + sampleModule.getReactNativeArchitecture(), + dependencies.capabilities(), + ]); + const sourceInspection = requireExistingJpeg( + await sampleModule.inspectEvidenceImage(sourceUri), + 'source' + ); + assertSourceFixture(sourceInspection); + assertCapabilities(capabilities, platform); + const compressionOptions: CompressionOptions = { + source: { uri: sourceUri }, + ...ECONOMIC_RESILIENCE_OPERATION, + }; + + const samples: ResilienceSample[] = []; + let stagedRepresentative: EconomicResiliencePayload['representative'] | null = null; + let removedPackageOutputs = 0; + let residualPackageOutputs = 0; + let residualPackageOutputBytes = 0; + + const totalIterations = + ECONOMIC_RESILIENCE_WARMUP_ITERATIONS + + ECONOMIC_RESILIENCE_MEASURED_ITERATIONS; + for (let absoluteIndex = 1; absoluteIndex <= totalIterations; absoluteIndex += 1) { + const phase = + absoluteIndex <= ECONOMIC_RESILIENCE_WARMUP_ITERATIONS + ? 'warmup' + : 'measured'; + const iteration = + phase === 'warmup' + ? absoluteIndex + : absoluteIndex - ECONOMIC_RESILIENCE_WARMUP_ITERATIONS; + const startedAt = dependencies.now(); + const result = await dependencies.compress(compressionOptions); + let elapsedMs = 0; + let outputInspection: Required | null = null; + let primaryError: unknown = null; + try { + const finishedAt = dependencies.now(); + elapsedMs = finishedAt - startedAt; + if (!Number.isFinite(elapsedMs) || elapsedMs <= 0) { + throw new Error('Economic resilience clock must advance for every sample.'); + } + outputInspection = requireExistingJpeg( + await sampleModule.inspectEvidenceImage(result.uri), + `${phase} output ${iteration}` + ); + assertCompressionResult(result, outputInspection); + + if ( + phase === 'measured' && + iteration === ECONOMIC_RESILIENCE_REPRESENTATIVE_ITERATION + ) { + const stagedOutputUri = + await sampleModule.copyEconomicResilienceOutputForEvidence(result.uri); + const stagedInspection = requireExistingJpeg( + await sampleModule.inspectEvidenceImage(stagedOutputUri), + 'representative staged output' + ); + if (!sameInspection(outputInspection, stagedInspection)) { + throw new Error('Representative staged output does not match iteration 10.'); + } + stagedRepresentative = { + measuredIteration: ECONOMIC_RESILIENCE_REPRESENTATIVE_ITERATION, + stagedOutputUri, + inspection: stagedInspection, + }; + } + } catch (error) { + primaryError = error; + } + + const cleanupErrors: unknown[] = []; + try { + await dependencies.removeOutput(result.uri); + } catch (error) { + cleanupErrors.push(error); + } + try { + const removedInspection = await sampleModule.inspectEvidenceImage(result.uri); + if (removedInspection.exists || removedInspection.byteSize !== 0) { + residualPackageOutputs += 1; + residualPackageOutputBytes += removedInspection.byteSize; + cleanupErrors.push( + new Error(`${phase} output ${iteration} remained after removal.`) + ); + } + } catch (error) { + cleanupErrors.push(error); + } + if (cleanupErrors.length === 0) { + removedPackageOutputs += 1; + } + if (primaryError !== null || cleanupErrors.length > 0) { + throw combinedIterationError({ + phase, + iteration, + primaryError, + cleanupErrors, + }); + } + if (!outputInspection) { + throw new Error(`${phase} output ${iteration} inspection is missing.`); + } + samples.push({ + phase, + iteration, + elapsedMs, + result: withoutUri(result), + sourceToOutputByteDifference: + result.originalByteSize - result.byteSize, + outputInspection, + cleanup: { + packageOutputRemoved: true, + existsAfterRemoval: false, + residualByteSize: 0, + }, + }); + } + + if ( + removedPackageOutputs !== totalIterations || + residualPackageOutputs !== 0 || + residualPackageOutputBytes !== 0 + ) { + throw new Error('Every package-owned output must be removed before PASS.'); + } + const sourceAfterRun = requireExistingJpeg( + await sampleModule.inspectEvidenceImage(sourceUri), + 'source after run' + ); + if (!sameInspection(sourceInspection, sourceAfterRun)) { + throw new Error('Source fixture must remain unchanged after the run.'); + } + if (!stagedRepresentative) { + throw new Error('Measured iteration 10 must be staged for host verification.'); + } + + const payload: EconomicResiliencePayload = { + schemaVersion: 1, + scenarioId: ECONOMIC_RESILIENCE_ID, + implementation: { name: 'react-native-image-compression-kit' }, + platform, + architecture, + jsEngine: detectJsEngine(), + fixture: { + ...ECONOMIC_RESILIENCE_FIXTURE, + sourceUri, + inspection: sourceAfterRun, + remainsAfterRun: true, + }, + operation: ECONOMIC_RESILIENCE_OPERATION, + capabilities, + timing: { + clock: dependencies.clock, + boundary: 'compressImage-call-only', + warmupIterations: ECONOMIC_RESILIENCE_WARMUP_ITERATIONS, + measuredIterations: ECONOMIC_RESILIENCE_MEASURED_ITERATIONS, + }, + representative: stagedRepresentative, + samples, + cleanup: { + attemptedPackageOutputs: totalIterations, + removedPackageOutputs, + residualPackageOutputs, + residualPackageOutputBytes, + }, + }; + return { + payload, + logs: createChunkedNativeLogMessages( + payload, + dependencies.createCaptureId(), + { + chunk: ECONOMIC_RESILIENCE_CHUNK_MARKER, + pass: ECONOMIC_RESILIENCE_PASS_MARKER, + } + ), + }; +} + +function requireExistingJpeg( + inspection: EvidenceImageInspection, + label: string +): Required { + if ( + inspection.exists !== true || + !Number.isInteger(inspection.byteSize) || + inspection.byteSize <= 0 || + !/^[0-9a-f]{64}$/.test(inspection.sha256 ?? '') || + inspection.mediaType !== 'image/jpeg' || + !Number.isInteger(inspection.width) || + (inspection.width ?? 0) <= 0 || + !Number.isInteger(inspection.height) || + (inspection.height ?? 0) <= 0 + ) { + throw new Error(`${label} must be an existing, hashed, decodable JPEG.`); + } + return inspection as Required; +} + +function assertSourceFixture(inspection: Required): void { + if ( + inspection.byteSize !== ECONOMIC_RESILIENCE_FIXTURE.byteSize || + inspection.sha256 !== ECONOMIC_RESILIENCE_FIXTURE.sha256 || + inspection.width !== ECONOMIC_RESILIENCE_FIXTURE.width || + inspection.height !== ECONOMIC_RESILIENCE_FIXTURE.height || + inspection.byteSize > ECONOMIC_RESILIENCE_FIXTURE.maximumFixtureByteSize + ) { + throw new Error('Copied source does not match the immutable 12 MP fixture.'); + } +} + +function assertCapabilities( + capabilities: ImageCompressionCapabilities, + platform: NativePlatform +): void { + const jpeg = capabilities.formats.find(({ format }) => format === 'jpeg'); + if ( + capabilities.platform !== platform || + !jpeg?.input || + !jpeg.output || + !capabilities.supportsTargetSizeCompression || + !capabilities.supportsDecodeDownsampling || + !capabilities.metadataPolicies.includes('strip') || + !Number.isInteger(capabilities.maxConcurrentOperations) || + capabilities.maxConcurrentOperations <= 0 || + !Number.isInteger(capabilities.resourceLimits?.maxSourceDimension) || + capabilities.resourceLimits.maxSourceDimension < 4000 || + !Number.isInteger(capabilities.resourceLimits?.maxSourcePixels) || + capabilities.resourceLimits.maxSourcePixels < 12_000_000 || + !Number.isInteger(capabilities.resourceLimits?.maxWorkingPixels) || + capabilities.resourceLimits.maxWorkingPixels < 1_920_000 + ) { + throw new Error('Runtime capabilities do not support the declared 12 MP case.'); + } +} + +function assertCompressionResult( + result: CompressionResult, + inspection: Required +): void { + if ( + result.format !== 'jpeg' || + result.width !== 1600 || + result.height !== 1200 || + result.byteSize <= 0 || + result.byteSize > 500_000 || + result.originalByteSize !== ECONOMIC_RESILIENCE_FIXTURE.byteSize || + !Number.isFinite(result.compressionRatio) || + result.compressionRatio <= 0 || + Math.abs(result.compressionRatio - result.byteSize / result.originalByteSize) > + 1e-6 || + inspection.byteSize !== result.byteSize || + inspection.width !== result.width || + inspection.height !== result.height + ) { + throw new Error('Compression output does not satisfy the 12 MP acceptance contract.'); + } +} + +function sameInspection( + left: Required, + right: Required +): boolean { + return ( + left.byteSize === right.byteSize && + left.sha256 === right.sha256 && + left.mediaType === right.mediaType && + left.width === right.width && + left.height === right.height + ); +} + +function withoutUri(result: CompressionResult): Omit { + const { uri: _uri, ...metrics } = result; + return metrics; +} + +function detectJsEngine(): 'hermes' | 'jsc' { + const runtime = globalThis as unknown as { HermesInternal?: unknown }; + return runtime.HermesInternal === undefined ? 'jsc' : 'hermes'; +} + +function defaultCaptureId(): string { + return `economic-resilience-${Date.now().toString(36)}`; +} + +function combinedIterationError({ + phase, + iteration, + primaryError, + cleanupErrors, +}: { + phase: 'warmup' | 'measured'; + iteration: number; + primaryError: unknown; + cleanupErrors: unknown[]; +}): Error { + const details = [ + ...(primaryError === null + ? [] + : [`primary: ${toErrorMessage(primaryError)}`]), + ...cleanupErrors.map((error) => `cleanup: ${toErrorMessage(error)}`), + ]; + return new Error( + `Economic resilience ${phase} ${iteration} failed; ${details.join(' | ')}` + ); +} + +function toErrorMessage(error: unknown): string { + return error instanceof Error ? error.message : String(error); +} diff --git a/example/src/exampleNative.ts b/example/src/exampleNative.ts index 6cc26d7..35ea2af 100644 --- a/example/src/exampleNative.ts +++ b/example/src/exampleNative.ts @@ -10,8 +10,20 @@ export type IOSJpegMetadataSummary = { exifPixelYDimension: number | null; }; +export type EvidenceImageInspection = { + exists: boolean; + byteSize: number; + sha256?: string; + mediaType?: 'image/jpeg'; + width?: number; + height?: number; +}; + export type ExampleImageSourceModule = { copySampleJpegToCache: () => Promise; + copyEconomicResilienceJpegToCache: () => Promise; + copyEconomicResilienceOutputForEvidence: (uri: string) => Promise; + inspectEvidenceImage: (uri: string) => Promise; getReactNativeArchitecture: () => Promise<'legacy' | 'new'>; copySamplePngToCache?: () => Promise; copySampleHeicToCache?: () => Promise; diff --git a/package.json b/package.json index 061c798..61979c6 100644 --- a/package.json +++ b/package.json @@ -78,6 +78,8 @@ "verify:benchmark-evidence": "node scripts/verify-benchmark-evidence.mjs", "benchmark:comparison:evidence": "node scripts/create-benchmark-comparison-evidence.mjs", "verify:benchmark-comparison-evidence": "node scripts/verify-benchmark-comparison-evidence.mjs", + "economic-resilience:evidence": "node scripts/create-economic-resilience-evidence.mjs", + "verify:economic-resilience-evidence": "node scripts/verify-economic-resilience-evidence.mjs", "merge:demo-evidence": "node scripts/merge-demo-evidence.mjs", "release:dry-run": "node scripts/release-dry-run.mjs", "smoke:consumer": "pnpm build && node scripts/consumer-smoke-test.mjs", diff --git a/scripts/capture-android-demo.sh b/scripts/capture-android-demo.sh index 635f60d..2fbd665 100644 --- a/scripts/capture-android-demo.sh +++ b/scripts/capture-android-demo.sh @@ -5,11 +5,28 @@ set -euo pipefail : "${RNICK_DEMO_PACKAGE_VERSION:?RNICK_DEMO_PACKAGE_VERSION is required}" : "${RNICK_DEMO_SOURCE_SHA:?RNICK_DEMO_SOURCE_SHA is required}" : "${RNICK_DEMO_RUN_URL:?RNICK_DEMO_RUN_URL is required}" +: "${GITHUB_RUN_ID:?GITHUB_RUN_ID is required}" +: "${GITHUB_RUN_ATTEMPT:?GITHUB_RUN_ATTEMPT is required}" +: "${RUNNER_OS:?RUNNER_OS is required}" +: "${RUNNER_ARCH:?RUNNER_ARCH is required}" +: "${RUNNER_NAME:?RUNNER_NAME is required}" +: "${ImageOS:?ImageOS is required}" +: "${ImageVersion:?ImageVersion is required}" metro_pid="" screenrecord_pid="" +logcat_pid="" + +stop_logcat_stream() { + if [ -n "$logcat_pid" ]; then + kill -INT "$logcat_pid" 2>/dev/null || true + wait "$logcat_pid" 2>/dev/null || true + logcat_pid="" + fi +} cleanup() { + stop_logcat_stream if [ -n "$screenrecord_pid" ]; then kill "$screenrecord_pid" 2>/dev/null || true wait "$screenrecord_pid" 2>/dev/null || true @@ -77,13 +94,16 @@ for attempt in $(seq 1 60); do done (cd example/android && ./gradlew app:installDebug --no-daemon) +mkdir -p /tmp/rnick-demo-raw adb logcat -c +adb logcat -v threadtime -s RNICK_DEMO:I '*:S' > /tmp/rnick-demo-raw/native.log & +logcat_pid=$! +sleep 1 +kill -0 "$logcat_pid" adb shell am force-stop com.imagecompressionkit.example adb shell am start -n com.imagecompressionkit.example/.MainActivity --ez rnick-demo-capture true -mkdir -p /tmp/rnick-demo-raw for attempt in $(seq 1 60); do - adb logcat -d -s RNICK_DEMO:I '*:S' > /tmp/rnick-demo-raw/native.log if grep -q 'RNICK_GUIDED_DEMO_READY' /tmp/rnick-demo-raw/native.log; then break fi @@ -101,7 +121,6 @@ adb shell screenrecord \ screenrecord_pid=$! for attempt in $(seq 1 60); do - adb logcat -d -s RNICK_DEMO:I '*:S' > /tmp/rnick-demo-raw/native.log if grep -q 'RNICK_GUIDED_DEMO_PASS' /tmp/rnick-demo-raw/native.log; then break fi @@ -116,17 +135,19 @@ fi screenrecord_pid="" adb pull /sdcard/rnick-guided-demo.mp4 /tmp/rnick-demo-raw/recording-raw.mp4 >/dev/null -for attempt in $(seq 1 120); do - adb logcat -d -s RNICK_DEMO:I '*:S' > /tmp/rnick-demo-raw/native.log +for attempt in $(seq 1 300); do if grep -q 'RNICK_DEMO_PASS' /tmp/rnick-demo-raw/native.log && \ grep -q 'RNICK_BENCHMARK_PASS' /tmp/rnick-demo-raw/native.log && \ - grep -q 'RNICK_BENCHMARK_COMPARISON_PASS' /tmp/rnick-demo-raw/native.log; then + grep -q 'RNICK_BENCHMARK_COMPARISON_PASS' /tmp/rnick-demo-raw/native.log && \ + grep -q 'RNICK_ECONOMIC_RESILIENCE_PASS' /tmp/rnick-demo-raw/native.log; then break fi - test "$attempt" != "120" + test "$attempt" != "300" sleep 1 done +stop_logcat_stream + sleep 2 dismiss_system_anr_dialog adb shell am start -n com.imagecompressionkit.example/.MainActivity >/dev/null @@ -210,3 +231,69 @@ node scripts/create-benchmark-comparison-evidence.mjs \ --run-url "$RNICK_DEMO_RUN_URL" node scripts/verify-benchmark-comparison-evidence.mjs demo-evidence/android + +mkdir -p /tmp/rnick-economic-raw +node --input-type=module - /tmp/rnick-demo-raw/native.log > /tmp/rnick-economic-raw/uris.txt <<'NODE' +import { readFileSync } from 'node:fs'; +import { parseNativeEconomicResiliencePayload } from './scripts/economic-resilience-evidence-core.mjs'; +const payload = parseNativeEconomicResiliencePayload(readFileSync(process.argv[2], 'utf8')); +console.log(new URL(payload.fixture.sourceUri).pathname); +console.log(new URL(payload.representative.stagedOutputUri).pathname); +NODE +economic_source_path=$(sed -n '1p' /tmp/rnick-economic-raw/uris.txt) +economic_output_path=$(sed -n '2p' /tmp/rnick-economic-raw/uris.txt) +adb exec-out run-as com.imagecompressionkit.example cat "$economic_source_path" > /tmp/rnick-economic-raw/source.jpg +adb exec-out run-as com.imagecompressionkit.example cat "$economic_output_path" > /tmp/rnick-economic-raw/output.jpg +node scripts/measure-demo-visual-agreement.mjs \ + --source /tmp/rnick-economic-raw/source.jpg \ + --output /tmp/rnick-economic-raw/output.jpg \ + --resize-mode contain \ + --max-width 1600 \ + --max-height 1200 \ + --report /tmp/rnick-economic-raw/visual-agreement.json +react_native_version=$(node -e "process.stdout.write(require('./example/package.json').dependencies['react-native'])") +os_build=$(adb shell getprop ro.build.id | tr -d '\r') +abi=$(adb shell getprop ro.product.cpu.abi | tr -d '\r') +node_version=$(node --version) +ffmpeg_version=$(ffmpeg -version | head -n 1) +ffprobe_version=$(ffprobe -version | head -n 1) +java_version=$(java -version 2>&1 | head -n 1) +node scripts/create-economic-resilience-environment.mjs \ + --platform android \ + --runtime "$runtime" \ + --os-build "$os_build" \ + --device "$device" \ + --device-kind emulator \ + --abi "$abi" \ + --react-native-version "$react_native_version" \ + --native-log /tmp/rnick-demo-raw/native.log \ + --build-type debug \ + --runner-label ubuntu-latest \ + --runner-os "$RUNNER_OS" \ + --runner-arch "$RUNNER_ARCH" \ + --runner-name "$RUNNER_NAME" \ + --image-os "$ImageOS" \ + --image-version "$ImageVersion" \ + --node "$node_version" \ + --ffmpeg "$ffmpeg_version" \ + --ffprobe "$ffprobe_version" \ + --primary-toolchain "$java_version" \ + --platform-sdk "Android compile SDK 36; emulator API 35; build-tools 36.0.0; NDK 27.1.12297006" \ + --output /tmp/rnick-economic-raw/environment.json +node scripts/create-economic-resilience-evidence.mjs \ + --platform android \ + --package-version "$RNICK_DEMO_PACKAGE_VERSION" \ + --source-sha "$RNICK_DEMO_SOURCE_SHA" \ + --run-id "$GITHUB_RUN_ID" \ + --run-attempt "$GITHUB_RUN_ATTEMPT" \ + --run-url "$RNICK_DEMO_RUN_URL" \ + --log /tmp/rnick-demo-raw/native.log \ + --source /tmp/rnick-economic-raw/source.jpg \ + --output /tmp/rnick-economic-raw/output.jpg \ + --fixture-manifest example/fixtures/kit-only-12mp-v1.json \ + --visual-agreement /tmp/rnick-economic-raw/visual-agreement.json \ + --environment /tmp/rnick-economic-raw/environment.json \ + --destination demo-evidence/android +node scripts/verify-economic-resilience-evidence.mjs \ + --artifact-dir demo-evidence/android/economic-resilience \ + --report-file /tmp/rnick-economic-raw/verification.json diff --git a/scripts/create-economic-resilience-environment.mjs b/scripts/create-economic-resilience-environment.mjs new file mode 100644 index 0000000..3e6543c --- /dev/null +++ b/scripts/create-economic-resilience-environment.mjs @@ -0,0 +1,155 @@ +#!/usr/bin/env node + +import { randomUUID } from 'node:crypto'; +import { + linkSync, + lstatSync, + readFileSync, + realpathSync, + unlinkSync, + writeFileSync, +} from 'node:fs'; +import path from 'node:path'; +import { parseNativeEconomicResiliencePayload } from './economic-resilience-evidence-core.mjs'; + +const options = parseArgs(process.argv.slice(2)); +for (const field of [ + 'platform', + 'runtime', + 'osBuild', + 'device', + 'deviceKind', + 'abi', + 'reactNativeVersion', + 'nativeLog', + 'buildType', + 'runnerLabel', + 'runnerOs', + 'runnerArch', + 'runnerName', + 'imageOs', + 'imageVersion', + 'node', + 'ffmpeg', + 'ffprobe', + 'primaryToolchain', + 'platformSdk', + 'output', +]) { + if (!options[field]) throw new Error(`--${toFlag(field)} is required`); +} +const nativeLog = secureInputFile(options.nativeLog, '--native-log'); +const output = secureOutputFile(options.output); +const payload = parseNativeEconomicResiliencePayload(readFileSync(nativeLog, 'utf8')); +if (payload.platform !== options.platform) { + throw new Error('native payload platform does not match --platform'); +} +const environment = { + platform: options.platform, + runtime: options.runtime, + osBuild: options.osBuild, + device: options.device, + deviceKind: options.deviceKind, + abi: options.abi, + reactNativeArchitecture: payload.architecture, + reactNativeVersion: options.reactNativeVersion, + jsEngine: payload.jsEngine, + buildType: options.buildType, + runner: { + label: options.runnerLabel, + os: options.runnerOs, + arch: options.runnerArch, + name: options.runnerName, + imageOS: options.imageOs, + imageVersion: options.imageVersion, + }, + toolchain: { + node: options.node, + ffmpeg: options.ffmpeg, + ffprobe: options.ffprobe, + primary: options.primaryToolchain, + platformSdk: options.platformSdk, + }, +}; +if (containsUnknown(environment)) { + throw new Error('environment values must be explicit and must not be unknown'); +} +writeOutputAtomic(output, `${JSON.stringify(environment, null, 2)}\n`); + +function secureInputFile(value, flag) { + const requested = path.resolve(value); + const status = lstatSync(requested); + if (!status.isFile() || status.isSymbolicLink()) { + throw new Error(`${flag} must be a regular non-symlink file`); + } + return realpathSync(requested); +} + +function secureOutputFile(value) { + const requested = path.resolve(value); + const requestedParent = path.dirname(requested); + const requestedParentStatus = lstatSync(requestedParent); + const parent = realpathSync(requestedParent); + const status = lstatSync(parent); + if ( + !requestedParentStatus.isDirectory() || + requestedParentStatus.isSymbolicLink() || + !status.isDirectory() || + status.isSymbolicLink() + ) { + throw new Error('--output parent must resolve to a regular directory'); + } + const destination = path.join(parent, path.basename(requested)); + try { + lstatSync(destination); + throw new Error('--output must not already exist'); + } catch (error) { + if (error?.code !== 'ENOENT') throw error; + } + return destination; +} + +function writeOutputAtomic(destination, contents) { + const temporary = path.join( + path.dirname(destination), + `.${path.basename(destination)}.${process.pid}.${randomUUID()}.tmp` + ); + try { + writeFileSync(temporary, contents, { flag: 'wx', mode: 0o600 }); + linkSync(temporary, destination); + } finally { + try { + unlinkSync(temporary); + } catch (error) { + if (error?.code !== 'ENOENT') throw error; + } + } +} + +function containsUnknown(value) { + if (value === null || value === undefined) return true; + if (typeof value === 'string') { + return value.trim() === '' || /^(?:unknown|null|undefined|n\/a)$/i.test(value.trim()); + } + if (typeof value === 'object') return Object.values(value).some(containsUnknown); + return false; +} + +function parseArgs(args) { + const parsed = {}; + const normalizedArgs = args.filter((value) => value !== '--'); + for (let index = 0; index < normalizedArgs.length; index += 2) { + const flag = normalizedArgs[index]; + const value = normalizedArgs[index + 1]; + if (!flag?.startsWith('--') || !value) { + throw new Error(`invalid argument: ${flag ?? ''}`); + } + parsed[flag.slice(2).replace(/-([a-z])/g, (_, letter) => letter.toUpperCase())] = + value; + } + return parsed; +} + +function toFlag(value) { + return value.replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`); +} diff --git a/scripts/create-economic-resilience-evidence.mjs b/scripts/create-economic-resilience-evidence.mjs new file mode 100644 index 0000000..efe9898 --- /dev/null +++ b/scripts/create-economic-resilience-evidence.mjs @@ -0,0 +1,194 @@ +#!/usr/bin/env node + +import { + cpSync, + existsSync, + lstatSync, + mkdirSync, + mkdtempSync, + readFileSync, + readdirSync, + realpathSync, + renameSync, + rmdirSync, + rmSync, + writeFileSync, +} from 'node:fs'; +import path from 'node:path'; +import { + ECONOMIC_RESILIENCE_ASSET_FILES, + buildEconomicResilienceEvidence, + inspectEconomicResilienceEvidence, + parseNativeEconomicResiliencePayload, +} from './economic-resilience-evidence-core.mjs'; + +const options = parseArgs(process.argv.slice(2)); +for (const field of [ + 'platform', + 'packageVersion', + 'sourceSha', + 'runId', + 'runAttempt', + 'runUrl', + 'log', + 'source', + 'output', + 'fixtureManifest', + 'visualAgreement', + 'environment', + 'destination', +]) { + if (!options[field]) throw new Error(`--${toFlag(field)} is required`); +} +if (!['android', 'ios'].includes(options.platform)) { + throw new Error('--platform must be android or ios'); +} + +const inputPaths = Object.fromEntries( + ['log', 'source', 'output', 'fixtureManifest', 'visualAgreement', 'environment'].map( + (field) => [field, secureInputFile(options[field], `--${toFlag(field)}`)] + ) +); +const payload = parseNativeEconomicResiliencePayload( + readFileSync(inputPaths.log, 'utf8') +); +if (payload.platform !== options.platform) { + throw new Error('native economic resilience platform does not match --platform'); +} +const sourceBytes = readFileSync(inputPaths.source); +const outputBytes = readFileSync(inputPaths.output); +const fixtureManifest = readJson(inputPaths.fixtureManifest); +const visualAgreement = readJson(inputPaths.visualAgreement); +const environment = readJson(inputPaths.environment); +const evidence = buildEconomicResilienceEvidence({ + payload, + packageVersion: options.packageVersion, + sourceCommit: options.sourceSha, + runId: positiveInteger(options.runId, '--run-id'), + runAttempt: positiveInteger(options.runAttempt, '--run-attempt'), + capturedAt: options.capturedAt ?? new Date().toISOString(), + runUrl: options.runUrl, + environment, + fixtureManifest, + sourceBytes, + outputBytes, + visualAgreement, +}); + +const preparedDestination = secureDestinationRoot(options.destination); +const destinationRoot = preparedDestination.path; +const destination = path.join(destinationRoot, 'economic-resilience'); +if (pathEntryExists(destination)) { + if (preparedDestination.created) rmdirSync(destinationRoot); + throw new Error(`economic resilience evidence already exists: ${destination}`); +} +const temporary = mkdtempSync(path.join(destinationRoot, '.economic-resilience.tmp-')); +try { + cpSync(inputPaths.source, path.join(temporary, 'source.jpg'), { errorOnExist: true }); + cpSync(inputPaths.output, path.join(temporary, 'output.jpg'), { errorOnExist: true }); + cpSync(inputPaths.fixtureManifest, path.join(temporary, 'fixture-manifest.json'), { + errorOnExist: true, + }); + cpSync(inputPaths.visualAgreement, path.join(temporary, 'visual-agreement.json'), { + errorOnExist: true, + }); + writeFileSync( + path.join(temporary, 'environment.json'), + `${JSON.stringify(evidence.environment, null, 2)}\n`, + { flag: 'wx' } + ); + writeFileSync( + path.join(temporary, 'economic-resilience.json'), + `${JSON.stringify(evidence, null, 2)}\n`, + { flag: 'wx' } + ); + const actualFiles = readdirSync(temporary).sort(); + if (JSON.stringify(actualFiles) !== JSON.stringify(ECONOMIC_RESILIENCE_ASSET_FILES)) { + throw new Error('economic resilience builder wrote an unexpected asset set'); + } + const report = inspectEconomicResilienceEvidence(temporary, evidence); + if (report.status !== 'passed') throw new Error(report.error); + if (pathEntryExists(destination)) { + throw new Error(`economic resilience evidence appeared during creation: ${destination}`); + } + renameSync(temporary, destination); + process.stdout.write(`${JSON.stringify(report)}\n`); +} catch (error) { + if (existsSync(temporary)) rmSync(temporary, { recursive: true, force: true }); + if (preparedDestination.created && existsSync(destinationRoot)) { + rmdirSync(destinationRoot); + } + throw error; +} + +function secureInputFile(value, flag) { + const requested = path.resolve(value); + const status = lstatSync(requested); + if (!status.isFile() || status.isSymbolicLink()) { + throw new Error(`${flag} must be a regular non-symlink file`); + } + // macOS exposes /tmp as an ancestor alias for /private/tmp. Canonicalize + // ancestors while still rejecting a symlink at the final file component. + return realpathSync(requested); +} + +function secureDestinationRoot(value) { + const requested = path.resolve(value); + let created = false; + if (!existsSync(requested)) { + const parent = path.dirname(requested); + const parentStatus = lstatSync(parent); + if (!parentStatus.isDirectory() || parentStatus.isSymbolicLink()) { + throw new Error('--destination parent must be a regular non-symlink directory'); + } + mkdirSync(requested); + created = true; + } + const status = lstatSync(requested); + if (!status.isDirectory() || status.isSymbolicLink()) { + if (created) rmdirSync(requested); + throw new Error('--destination must be a regular non-symlink directory'); + } + return { path: realpathSync(requested), created }; +} + +function readJson(file) { + return JSON.parse(readFileSync(file, 'utf8')); +} + +function pathEntryExists(candidate) { + try { + lstatSync(candidate); + return true; + } catch (error) { + if (error?.code === 'ENOENT') return false; + throw error; + } +} + +function parseArgs(args) { + const parsed = {}; + const normalizedArgs = args.filter((value) => value !== '--'); + for (let index = 0; index < normalizedArgs.length; index += 2) { + const flag = normalizedArgs[index]; + const value = normalizedArgs[index + 1]; + if (!flag?.startsWith('--') || !value) { + throw new Error(`invalid argument: ${flag ?? ''}`); + } + parsed[flag.slice(2).replace(/-([a-z])/g, (_, letter) => letter.toUpperCase())] = + value; + } + return parsed; +} + +function toFlag(value) { + return value.replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`); +} + +function positiveInteger(value, flag) { + const parsed = Number(value); + if (!Number.isSafeInteger(parsed) || parsed <= 0) { + throw new Error(`${flag} must be a positive safe integer`); + } + return parsed; +} diff --git a/scripts/economic-resilience-evidence-core.mjs b/scripts/economic-resilience-evidence-core.mjs new file mode 100644 index 0000000..8b1216b --- /dev/null +++ b/scripts/economic-resilience-evidence-core.mjs @@ -0,0 +1,1147 @@ +import { createHash } from 'node:crypto'; +import { existsSync, lstatSync, readdirSync, readFileSync } from 'node:fs'; +import path from 'node:path'; +import { parseChunkedNativePayload, summarizeBenchmarkSamples } from './benchmark-core.mjs'; +import { inspectDemoVisualAgreement } from './demo-visual-agreement-core.mjs'; + +export const ECONOMIC_RESILIENCE_SCHEMA_VERSION = 1; +export const ECONOMIC_RESILIENCE_SCENARIO_ID = 'kit-only-12mp-jpeg-v1'; +export const ECONOMIC_RESILIENCE_CHUNK_MARKER = + 'RNICK_ECONOMIC_RESILIENCE_CHUNK'; +export const ECONOMIC_RESILIENCE_PASS_MARKER = + 'RNICK_ECONOMIC_RESILIENCE_PASS'; +export const ECONOMIC_RESILIENCE_ASSET_FILES = Object.freeze([ + 'economic-resilience.json', + 'environment.json', + 'fixture-manifest.json', + 'output.jpg', + 'source.jpg', + 'visual-agreement.json', +]); +export const ECONOMIC_RESILIENCE_FIXTURE = Object.freeze({ + id: 'kit-only-12mp-v1', + file: 'kit-only-12mp-v1.jpg', + mediaType: 'image/jpeg', + width: 4000, + height: 3000, + pixelCount: 12_000_000, + orientation: 1, + orientationEncoding: 'implicit-default-no-exif-orientation', + byteSize: 1_721_333, + maximumFixtureByteSize: 8_000_000, + sha256: 'bdcf4e083f1860d8829898211e4b1c428a80dfd53dceca697c6f7e4a4901bfcc', +}); +export const ECONOMIC_RESILIENCE_FIXTURE_PROVENANCE = Object.freeze({ + kind: 'project-generated-synthetic', + containsPersonalData: false, + license: 'MIT', + generator: 'FFmpeg 8.1.2 and libjpeg-turbo jpegtran 3.1.4.1', + recipe: + 'testsrc2 4000x3000 with three asymmetric color fields and a 127x113 grid; MJPEG q=2, yuvj444p, bitexact muxing; jpegtran -copy none -optimize removes COM, EXIF, XMP, and IPTC metadata', +}); +export const ECONOMIC_RESILIENCE_OPERATION = Object.freeze({ + resize: { maxWidth: 1600, maxHeight: 1200, mode: 'contain' }, + output: { format: 'jpeg', quality: 90, maxBytes: 500_000 }, + metadata: 'strip', +}); + +const ENVIRONMENT_FIELDS = Object.freeze([ + 'platform', + 'runtime', + 'osBuild', + 'device', + 'deviceKind', + 'abi', + 'reactNativeArchitecture', + 'reactNativeVersion', + 'jsEngine', + 'buildType', + 'runner', + 'toolchain', +]); +const RUNNER_FIELDS = Object.freeze([ + 'label', + 'os', + 'arch', + 'name', + 'imageOS', + 'imageVersion', +]); +const TOOLCHAIN_FIELDS = Object.freeze([ + 'node', + 'ffmpeg', + 'ffprobe', + 'primary', + 'platformSdk', +]); +const CAPABILITY_FIELDS = Object.freeze([ + 'platform', + 'formats', + 'metadataPolicies', + 'supportsTargetSizeCompression', + 'supportsCancellation', + 'maxConcurrentOperations', + 'supportsDecodeDownsampling', + 'resourceLimits', +]); +const FORMAT_CAPABILITY_FIELDS = Object.freeze([ + 'format', + 'input', + 'output', + 'supportsAlpha', + 'supportsAnimation', + 'notes', +]); +const RESOURCE_LIMIT_FIELDS = Object.freeze([ + 'maxSourceDimension', + 'maxSourcePixels', + 'maxWorkingPixels', +]); +const IMAGE_FORMATS = Object.freeze([ + 'jpeg', + 'png', + 'webp', + 'heic', + 'heif', + 'avif', + 'gif', +]); +const FIXTURE_MANIFEST_FIELDS = Object.freeze([ + 'schemaVersion', + 'id', + 'file', + 'provenance', + 'mediaType', + 'width', + 'height', + 'pixelCount', + 'orientation', + 'orientationEncoding', + 'byteSize', + 'maximumFixtureByteSize', + 'sha256', +]); +const FIXTURE_PROVENANCE_FIELDS = Object.freeze([ + 'kind', + 'containsPersonalData', + 'license', + 'generator', + 'recipe', +]); +const NATIVE_PAYLOAD_FIELDS = Object.freeze([ + 'schemaVersion', + 'scenarioId', + 'implementation', + 'platform', + 'architecture', + 'jsEngine', + 'fixture', + 'operation', + 'capabilities', + 'timing', + 'representative', + 'samples', + 'cleanup', +]); +const NATIVE_FIXTURE_FIELDS = Object.freeze([ + ...Object.keys(ECONOMIC_RESILIENCE_FIXTURE), + 'sourceUri', + 'inspection', + 'remainsAfterRun', +]); +const IMAGE_INSPECTION_FIELDS = Object.freeze([ + 'exists', + 'byteSize', + 'sha256', + 'mediaType', + 'width', + 'height', +]); +const NATIVE_SAMPLE_FIELDS = Object.freeze([ + 'phase', + 'iteration', + 'elapsedMs', + 'result', + 'sourceToOutputByteDifference', + 'outputInspection', + 'cleanup', +]); +const COMPRESSION_RESULT_FIELDS = Object.freeze([ + 'format', + 'width', + 'height', + 'byteSize', + 'originalByteSize', + 'compressionRatio', +]); +const SAMPLE_CLEANUP_FIELDS = Object.freeze([ + 'packageOutputRemoved', + 'existsAfterRemoval', + 'residualByteSize', +]); +const AGGREGATE_CLEANUP_FIELDS = Object.freeze([ + 'attemptedPackageOutputs', + 'removedPackageOutputs', + 'residualPackageOutputs', + 'residualPackageOutputBytes', +]); +const EVIDENCE_FIELDS = Object.freeze([ + 'schemaVersion', + 'status', + 'scenarioId', + 'implementation', + 'sourceCommit', + 'runId', + 'runAttempt', + 'capturedAt', + 'runUrl', + 'environment', + 'capabilities', + 'fixture', + 'operation', + 'timing', + 'samples', + 'measuredSummary', + 'representative', + 'economics', + 'cleanup', + 'visualAgreement', +]); + +export function parseNativeEconomicResiliencePayload(contents) { + return parseChunkedNativePayload(contents, { + passMarker: ECONOMIC_RESILIENCE_PASS_MARKER, + chunkMarker: ECONOMIC_RESILIENCE_CHUNK_MARKER, + }); +} + +export function inspectJpegStructure(bytes) { + const buffer = Buffer.from(bytes ?? []); + const errors = []; + let width = null; + let height = null; + let precision = null; + let components = null; + let hasExif = false; + let hasXmp = false; + let hasIptc = false; + let commentCount = 0; + let app1Count = 0; + let app13Count = 0; + let hasStartOfScan = false; + let hasEndOfImage = false; + if (buffer.length < 4 || buffer[0] !== 0xff || buffer[1] !== 0xd8) { + return { status: 'failed', error: 'JPEG SOI marker is missing' }; + } + let offset = 2; + while (offset < buffer.length) { + while (offset < buffer.length && buffer[offset] === 0xff) offset += 1; + if (offset >= buffer.length) break; + const marker = buffer[offset]; + offset += 1; + if (marker === 0x00) { + errors.push('JPEG stuffed byte appears outside scan data'); + break; + } + if (marker === 0xd9) { + hasEndOfImage = true; + if (offset !== buffer.length) errors.push('JPEG contains bytes after EOI'); + break; + } + if (marker === 0xda) { + hasStartOfScan = true; + if (offset + 2 > buffer.length) { + errors.push('JPEG SOS length is truncated'); + break; + } else { + const scanHeaderLength = buffer.readUInt16BE(offset); + const scanComponentCount = buffer[offset + 2]; + if ( + !positiveInteger(scanComponentCount) || + scanHeaderLength !== 6 + 2 * scanComponentCount || + offset + scanHeaderLength > buffer.length + ) { + errors.push('JPEG SOS header length or component count is invalid'); + break; + } + offset += scanHeaderLength; + } + // Entropy-coded scan bytes use FF00 for a literal FF byte and may carry + // restart markers. Resume normal marker parsing at the next other marker + // so metadata between scans or before EOI cannot evade inspection. + while (offset < buffer.length) { + if (buffer[offset] !== 0xff) { + offset += 1; + continue; + } + let markerOffset = offset; + while (markerOffset < buffer.length && buffer[markerOffset] === 0xff) { + markerOffset += 1; + } + if (markerOffset >= buffer.length) { + offset = markerOffset; + break; + } + const scanMarker = buffer[markerOffset]; + if (scanMarker === 0x00 || (scanMarker >= 0xd0 && scanMarker <= 0xd7)) { + offset = markerOffset + 1; + continue; + } + offset = markerOffset; + break; + } + continue; + } + if (marker === 0x01 || (marker >= 0xd0 && marker <= 0xd7)) continue; + if (offset + 2 > buffer.length) { + errors.push('JPEG segment length is truncated'); + break; + } + const segmentLength = buffer.readUInt16BE(offset); + if (segmentLength < 2 || offset + segmentLength > buffer.length) { + errors.push('JPEG segment extends outside the file'); + break; + } + const payloadStart = offset + 2; + const payloadEnd = offset + segmentLength; + const payload = buffer.subarray(payloadStart, payloadEnd); + if (marker === 0xe1) { + app1Count += 1; + hasExif ||= payload.subarray(0, 6).equals(Buffer.from('Exif\0\0')); + hasXmp ||= payload.toString('latin1').includes('http://ns.adobe.com/xap/1.0/'); + hasXmp ||= payload.toString('latin1').includes('http://ns.adobe.com/xmp/extension/'); + } + if (marker === 0xed) { + app13Count += 1; + hasIptc ||= payload.toString('latin1').includes('Photoshop 3.0'); + } + if (marker === 0xfe) commentCount += 1; + if ([0xc0, 0xc1, 0xc2].includes(marker) && payload.length >= 6) { + precision = payload[0]; + height = payload.readUInt16BE(1); + width = payload.readUInt16BE(3); + components = payload[5]; + } + offset += segmentLength; + } + if (!positiveInteger(width) || !positiveInteger(height)) { + errors.push('JPEG frame geometry is missing'); + } + if (precision !== 8) errors.push('JPEG precision must be 8 bit'); + if (![1, 3].includes(components)) errors.push('JPEG component count is unsupported'); + if (!hasStartOfScan) errors.push('JPEG SOS marker is missing'); + if (!hasEndOfImage) errors.push('JPEG EOI marker is missing'); + return { + status: errors.length === 0 ? 'passed' : 'failed', + mediaType: 'image/jpeg', + width, + height, + precision, + components, + hasExif, + hasXmp, + hasIptc, + commentCount, + app1Count, + app13Count, + error: errors.length > 0 ? errors.join(' | ') : null, + }; +} + +export function inspectFixtureManifest(manifest, sourceBytes) { + const errors = []; + if (!sameFields(manifest, FIXTURE_MANIFEST_FIELDS)) { + errors.push('fixture manifest fields drifted'); + } + if (!sameFields(manifest?.provenance, FIXTURE_PROVENANCE_FIELDS)) { + errors.push('fixture provenance fields drifted'); + } + if (manifest?.schemaVersion !== 1) errors.push('fixture schemaVersion must be 1'); + for (const [field, expected] of Object.entries(ECONOMIC_RESILIENCE_FIXTURE)) { + if (manifest?.[field] !== expected) errors.push(`fixture ${field} drifted`); + } + if (!deepEqual(manifest?.provenance, ECONOMIC_RESILIENCE_FIXTURE_PROVENANCE)) { + errors.push('fixture provenance drifted from the immutable generation record'); + } + if (sourceBytes.length !== ECONOMIC_RESILIENCE_FIXTURE.byteSize) { + errors.push('fixture byte size mismatch'); + } + if (sha256(sourceBytes) !== ECONOMIC_RESILIENCE_FIXTURE.sha256) { + errors.push('fixture SHA-256 mismatch'); + } + const jpeg = inspectJpegStructure(sourceBytes); + if (jpeg.status !== 'passed') errors.push(jpeg.error); + if ( + jpeg.width !== ECONOMIC_RESILIENCE_FIXTURE.width || + jpeg.height !== ECONOMIC_RESILIENCE_FIXTURE.height + ) { + errors.push('fixture JPEG geometry mismatch'); + } + if (jpeg.app1Count !== 0 || jpeg.app13Count !== 0 || jpeg.commentCount !== 0) { + errors.push('fixture must not contain APP1, APP13, or JPEG comment metadata'); + } + return { + status: errors.length === 0 ? 'passed' : 'failed', + fixtureId: manifest?.id ?? null, + byteSize: sourceBytes.length, + sha256: sha256(sourceBytes), + geometry: jpeg.width && jpeg.height ? `${jpeg.width}x${jpeg.height}` : null, + metadataFree: jpeg.app1Count === 0 && jpeg.app13Count === 0 && jpeg.commentCount === 0, + error: errors.length > 0 ? errors.join(' | ') : null, + }; +} + +export function inspectNativeEconomicResiliencePayload(payload) { + const errors = []; + if (!sameFields(payload, NATIVE_PAYLOAD_FIELDS)) { + errors.push('native payload fields drifted'); + } + if (!sameFields(payload?.implementation, ['name'])) { + errors.push('native implementation fields drifted'); + } + if (!sameFields(payload?.fixture, NATIVE_FIXTURE_FIELDS)) { + errors.push('native fixture fields drifted'); + } + if (!sameFields(payload?.timing, ['clock', 'boundary', 'warmupIterations', 'measuredIterations'])) { + errors.push('native timing fields drifted'); + } + if (!sameFields(payload?.representative, ['measuredIteration', 'stagedOutputUri', 'inspection'])) { + errors.push('native representative fields drifted'); + } + if (!sameFields(payload?.cleanup, AGGREGATE_CLEANUP_FIELDS)) { + errors.push('native aggregate cleanup fields drifted'); + } + if (payload?.schemaVersion !== ECONOMIC_RESILIENCE_SCHEMA_VERSION) { + errors.push('native schemaVersion must be 1'); + } + if (payload?.scenarioId !== ECONOMIC_RESILIENCE_SCENARIO_ID) { + errors.push('native scenarioId drifted'); + } + if (payload?.implementation?.name !== 'react-native-image-compression-kit') { + errors.push('native implementation name is invalid'); + } + if (!['android', 'ios'].includes(payload?.platform)) { + errors.push('native platform must be android or ios'); + } + if (!['legacy', 'new'].includes(payload?.architecture)) { + errors.push('native architecture must be legacy or new'); + } + if (!['hermes', 'jsc'].includes(payload?.jsEngine)) { + errors.push('native jsEngine must be hermes or jsc'); + } + for (const [field, expected] of Object.entries(ECONOMIC_RESILIENCE_FIXTURE)) { + if (payload?.fixture?.[field] !== expected) { + errors.push(`native fixture ${field} drifted`); + } + } + if (!nonEmpty(payload?.fixture?.sourceUri)) errors.push('native sourceUri is required'); + if (payload?.fixture?.remainsAfterRun !== true) { + errors.push('native source must remain after the run'); + } + errors.push( + ...inspectImageInspection(payload?.fixture?.inspection, { + byteSize: ECONOMIC_RESILIENCE_FIXTURE.byteSize, + sha256: ECONOMIC_RESILIENCE_FIXTURE.sha256, + width: 4000, + height: 3000, + }).map((error) => `native source ${error}`) + ); + if (!deepEqual(payload?.operation, ECONOMIC_RESILIENCE_OPERATION)) { + errors.push('native operation drifted'); + } + if ( + !['performance.now', 'Date.now'].includes(payload?.timing?.clock) || + payload?.timing?.boundary !== 'compressImage-call-only' || + payload?.timing?.warmupIterations !== 2 || + payload?.timing?.measuredIterations !== 10 + ) { + errors.push('native timing contract drifted'); + } + errors.push(...inspectCapabilities(payload?.capabilities, payload?.platform)); + + const samples = Array.isArray(payload?.samples) ? payload.samples : []; + if (samples.length !== 12) errors.push('native samples must contain 2 warmups and 10 measured calls'); + samples.forEach((sample, index) => { + if (!sameFields(sample, NATIVE_SAMPLE_FIELDS)) { + errors.push(`native sample ${index + 1} fields drifted`); + } + if (!sameFields(sample?.result, COMPRESSION_RESULT_FIELDS)) { + errors.push(`native sample ${index + 1} result fields drifted`); + } + if (!sameFields(sample?.cleanup, SAMPLE_CLEANUP_FIELDS)) { + errors.push(`native sample ${index + 1} cleanup fields drifted`); + } + const expectedPhase = index < 2 ? 'warmup' : 'measured'; + const expectedIteration = index < 2 ? index + 1 : index - 1; + if (sample?.phase !== expectedPhase || sample?.iteration !== expectedIteration) { + errors.push(`native sample ${index + 1} phase or iteration is invalid`); + } + if (!finitePositive(sample?.elapsedMs)) { + errors.push(`native sample ${index + 1} elapsedMs must be positive`); + } + errors.push(...inspectSampleResult(sample, index + 1)); + if ( + sample?.cleanup?.packageOutputRemoved !== true || + sample?.cleanup?.existsAfterRemoval !== false || + sample?.cleanup?.residualByteSize !== 0 + ) { + errors.push(`native sample ${index + 1} cleanup did not reach zero residual`); + } + }); + const representativeSample = samples.find( + ({ phase, iteration }) => phase === 'measured' && iteration === 10 + ); + if ( + payload?.representative?.measuredIteration !== 10 || + !nonEmpty(payload?.representative?.stagedOutputUri) + ) { + errors.push('native representative must stage measured iteration 10'); + } + if ( + representativeSample && + !deepEqual(payload?.representative?.inspection, representativeSample.outputInspection) + ) { + errors.push('native representative inspection does not match measured iteration 10'); + } + if ( + payload?.cleanup?.attemptedPackageOutputs !== 12 || + payload?.cleanup?.removedPackageOutputs !== 12 || + payload?.cleanup?.residualPackageOutputs !== 0 || + payload?.cleanup?.residualPackageOutputBytes !== 0 + ) { + errors.push('native aggregate cleanup must remove all 12 package outputs'); + } + return errors; +} + +export function buildEconomicResilienceEvidence({ + payload, + packageVersion, + sourceCommit, + runId, + runAttempt, + capturedAt, + runUrl, + environment, + fixtureManifest, + sourceBytes, + outputBytes, + visualAgreement, +}) { + const errors = inspectNativeEconomicResiliencePayload(payload); + if (!exactSemver(packageVersion)) errors.push('packageVersion must be exact semver'); + if (!/^[0-9a-f]{40}$/.test(sourceCommit ?? '')) { + errors.push('sourceCommit must be a full lowercase SHA'); + } + if (!positiveInteger(runId)) errors.push('runId must be a positive integer'); + if (!positiveInteger(runAttempt)) errors.push('runAttempt must be a positive integer'); + if (!canonicalIsoTimestamp(capturedAt)) { + errors.push('capturedAt must be an ISO timestamp'); + } + if (!validRunUrl(runUrl)) errors.push('runUrl must identify the capture workflow run'); + if (validRunUrl(runUrl) && Number(runUrl.split('/').at(-1)) !== runId) { + errors.push('runUrl must end with runId'); + } + errors.push(...inspectEnvironment(environment, payload)); + const fixtureReport = inspectFixtureManifest(fixtureManifest, sourceBytes); + if (fixtureReport.status !== 'passed') errors.push(fixtureReport.error); + const outputJpeg = inspectJpegStructure(outputBytes); + if (outputJpeg.status !== 'passed') errors.push(outputJpeg.error); + const representative = payload?.representative?.inspection; + if ( + outputBytes.length !== representative?.byteSize || + sha256(outputBytes) !== representative?.sha256 || + outputJpeg.width !== representative?.width || + outputJpeg.height !== representative?.height + ) { + errors.push('staged output file does not match native representative inspection'); + } + if (outputJpeg.app1Count !== 0 || outputJpeg.app13Count !== 0 || outputJpeg.commentCount !== 0) { + errors.push('strip output contains APP1, APP13, or JPEG comment metadata'); + } + const visualReport = inspectDemoVisualAgreement(visualAgreement, { + sourceBytes, + outputBytes, + resizeOptions: ECONOMIC_RESILIENCE_OPERATION.resize, + }); + if (visualReport.status !== 'passed' || visualReport.agreementStatus !== 'passed') { + errors.push(`visual agreement failed: ${visualReport.error ?? visualAgreement?.status}`); + } + if (errors.length > 0) throw new Error(errors.join(' | ')); + + const measuredSamples = payload.samples.filter(({ phase }) => phase === 'measured'); + const representativeSample = measuredSamples.find(({ iteration }) => iteration === 10); + return { + schemaVersion: ECONOMIC_RESILIENCE_SCHEMA_VERSION, + status: 'passed', + scenarioId: ECONOMIC_RESILIENCE_SCENARIO_ID, + implementation: { + name: 'react-native-image-compression-kit', + version: packageVersion, + buildSource: 'checked-out-source-tree', + }, + sourceCommit, + runId, + runAttempt, + capturedAt, + runUrl, + environment: { + ...environment, + reactNativeArchitecture: payload.architecture, + }, + capabilities: payload.capabilities, + fixture: { + id: fixtureManifest.id, + file: 'source.jpg', + manifestFile: 'fixture-manifest.json', + byteSize: sourceBytes.length, + sha256: sha256(sourceBytes), + width: ECONOMIC_RESILIENCE_FIXTURE.width, + height: ECONOMIC_RESILIENCE_FIXTURE.height, + remainsAfterRun: true, + }, + operation: ECONOMIC_RESILIENCE_OPERATION, + timing: payload.timing, + samples: payload.samples, + measuredSummary: summarizeBenchmarkSamples( + measuredSamples.map(({ iteration, elapsedMs, result }) => ({ + iteration, + elapsedMs, + result, + })) + ), + representative: { + measuredIteration: 10, + file: 'output.jpg', + byteSize: outputBytes.length, + sha256: sha256(outputBytes), + width: outputJpeg.width, + height: outputJpeg.height, + }, + economics: { + boundary: 'source-to-output-observation', + sourceOwnership: 'source-remains', + stagedEvidenceOwnership: 'example-owned-copy', + matchedTransferBaseline: null, + sourceBytes: sourceBytes.length, + outputBytes: outputBytes.length, + sourceToOutputByteDifference: + representativeSample.result.originalByteSize - representativeSample.result.byteSize, + costSavingsClaim: null, + }, + cleanup: payload.cleanup, + visualAgreement, + }; +} + +export function inspectEconomicResilienceEvidence(root, evidence) { + const errors = []; + const artifactRoot = path.resolve(root); + let files = []; + try { + files = readArtifactDirectory(artifactRoot).sort(); + } catch (error) { + errors.push(error.message); + } + if (!deepEqual(files, ECONOMIC_RESILIENCE_ASSET_FILES)) { + errors.push('artifact must contain the exact economic resilience asset set'); + } + if (!sameFields(evidence, EVIDENCE_FIELDS)) errors.push('evidence fields drifted'); + if (!sameFields(evidence?.implementation, ['name', 'version', 'buildSource'])) { + errors.push('evidence implementation fields drifted'); + } + if (!sameFields(evidence?.fixture, [ + 'id', + 'file', + 'manifestFile', + 'byteSize', + 'sha256', + 'width', + 'height', + 'remainsAfterRun', + ])) { + errors.push('evidence fixture fields drifted'); + } + if (!sameFields(evidence?.representative, [ + 'measuredIteration', + 'file', + 'byteSize', + 'sha256', + 'width', + 'height', + ])) { + errors.push('evidence representative fields drifted'); + } + if (!sameFields(evidence?.economics, [ + 'boundary', + 'sourceOwnership', + 'stagedEvidenceOwnership', + 'matchedTransferBaseline', + 'sourceBytes', + 'outputBytes', + 'sourceToOutputByteDifference', + 'costSavingsClaim', + ])) { + errors.push('evidence economics fields drifted'); + } + if (evidence?.schemaVersion !== 1 || evidence?.status !== 'passed') { + errors.push('evidence schemaVersion/status is invalid'); + } + if (evidence?.scenarioId !== ECONOMIC_RESILIENCE_SCENARIO_ID) { + errors.push('evidence scenarioId drifted'); + } + if (evidence?.implementation?.name !== 'react-native-image-compression-kit') { + errors.push('evidence implementation name is invalid'); + } + if (!exactSemver(evidence?.implementation?.version)) { + errors.push('evidence implementation version must be exact semver'); + } + if (evidence?.implementation?.buildSource !== 'checked-out-source-tree') { + errors.push('evidence implementation must identify the checked-out source tree'); + } + if (!/^[0-9a-f]{40}$/.test(evidence?.sourceCommit ?? '')) { + errors.push('evidence sourceCommit must be a full lowercase SHA'); + } + if (!positiveInteger(evidence?.runId)) errors.push('evidence runId is invalid'); + if (!positiveInteger(evidence?.runAttempt)) errors.push('evidence runAttempt is invalid'); + if (!canonicalIsoTimestamp(evidence?.capturedAt)) { + errors.push('evidence capturedAt must be an ISO timestamp'); + } + if (!validRunUrl(evidence?.runUrl)) errors.push('evidence runUrl is invalid'); + if ( + validRunUrl(evidence?.runUrl) && + Number(evidence.runUrl.split('/').at(-1)) !== evidence?.runId + ) { + errors.push('evidence runUrl does not match runId'); + } + errors.push(...inspectEnvironment(evidence?.environment, { + platform: evidence?.environment?.platform, + architecture: evidence?.environment?.reactNativeArchitecture, + jsEngine: evidence?.environment?.jsEngine, + })); + errors.push(...inspectCapabilities(evidence?.capabilities, evidence?.environment?.platform)); + if (!deepEqual(evidence?.operation, ECONOMIC_RESILIENCE_OPERATION)) { + errors.push('evidence operation drifted'); + } + if ( + evidence?.cleanup?.attemptedPackageOutputs !== 12 || + evidence?.cleanup?.removedPackageOutputs !== 12 || + evidence?.cleanup?.residualPackageOutputs !== 0 || + evidence?.cleanup?.residualPackageOutputBytes !== 0 + ) { + errors.push('evidence cleanup must report zero residual across 12 outputs'); + } + if ( + evidence?.economics?.boundary !== 'source-to-output-observation' || + evidence?.economics?.sourceOwnership !== 'source-remains' || + evidence?.economics?.stagedEvidenceOwnership !== 'example-owned-copy' || + evidence?.economics?.matchedTransferBaseline !== null || + evidence?.economics?.costSavingsClaim !== null + ) { + errors.push('evidence economics boundary is invalid'); + } + if ( + evidence?.fixture?.id !== ECONOMIC_RESILIENCE_FIXTURE.id || + evidence?.fixture?.file !== 'source.jpg' || + evidence?.fixture?.manifestFile !== 'fixture-manifest.json' || + evidence?.fixture?.byteSize !== ECONOMIC_RESILIENCE_FIXTURE.byteSize || + evidence?.fixture?.sha256 !== ECONOMIC_RESILIENCE_FIXTURE.sha256 || + evidence?.fixture?.width !== 4000 || + evidence?.fixture?.height !== 3000 || + evidence?.fixture?.remainsAfterRun !== true + ) { + errors.push('evidence fixture identity drifted'); + } + if ( + evidence?.representative?.measuredIteration !== 10 || + evidence?.representative?.file !== 'output.jpg' || + evidence?.representative?.width !== 1600 || + evidence?.representative?.height !== 1200 + ) { + errors.push('evidence representative identity drifted'); + } + + const source = readSecureAsset(artifactRoot, 'source.jpg', errors); + const output = readSecureAsset(artifactRoot, 'output.jpg', errors); + const fixtureManifest = readJsonAsset(artifactRoot, 'fixture-manifest.json', errors); + const environment = readJsonAsset(artifactRoot, 'environment.json', errors); + const visualAgreement = readJsonAsset(artifactRoot, 'visual-agreement.json', errors); + if (source && fixtureManifest) { + const fixtureReport = inspectFixtureManifest(fixtureManifest, source); + if (fixtureReport.status !== 'passed') errors.push(fixtureReport.error); + } + if (output) { + const jpeg = inspectJpegStructure(output); + if (jpeg.status !== 'passed') errors.push(jpeg.error); + if ( + output.length !== evidence?.representative?.byteSize || + sha256(output) !== evidence?.representative?.sha256 || + jpeg.width !== evidence?.representative?.width || + jpeg.height !== evidence?.representative?.height + ) { + errors.push('representative output asset does not match evidence'); + } + if (jpeg.app1Count !== 0 || jpeg.app13Count !== 0 || jpeg.commentCount !== 0) { + errors.push('representative output contains stripped metadata'); + } + } + if (source && output && visualAgreement) { + const report = inspectDemoVisualAgreement(visualAgreement, { + sourceBytes: source, + outputBytes: output, + resizeOptions: ECONOMIC_RESILIENCE_OPERATION.resize, + }); + if (report.status !== 'passed' || report.agreementStatus !== 'passed') { + errors.push(`visual agreement asset is invalid: ${report.error}`); + } + if (!deepEqual(evidence?.visualAgreement, visualAgreement)) { + errors.push('embedded visual agreement does not match its asset'); + } + } + if (environment && !deepEqual(environment, evidence?.environment)) { + errors.push('environment asset does not match evidence environment'); + } + if ( + source && output && + (evidence?.economics?.sourceBytes !== source.length || + evidence?.economics?.outputBytes !== output.length || + evidence?.economics?.sourceToOutputByteDifference !== source.length - output.length) + ) { + errors.push('signed source-to-output byte difference is inconsistent'); + } + if (Array.isArray(evidence?.samples)) { + const nativeLike = { + schemaVersion: evidence?.schemaVersion, + scenarioId: evidence?.scenarioId, + implementation: { name: evidence?.implementation?.name }, + platform: evidence?.environment?.platform, + architecture: evidence?.environment?.reactNativeArchitecture, + jsEngine: evidence?.environment?.jsEngine, + fixture: { + ...ECONOMIC_RESILIENCE_FIXTURE, + sourceUri: 'file:///retained-source.jpg', + inspection: { + exists: true, + byteSize: evidence?.fixture?.byteSize, + sha256: evidence?.fixture?.sha256, + mediaType: 'image/jpeg', + width: evidence?.fixture?.width, + height: evidence?.fixture?.height, + }, + remainsAfterRun: evidence?.fixture?.remainsAfterRun, + }, + representative: { + measuredIteration: evidence?.representative?.measuredIteration, + stagedOutputUri: 'file:///staged-output.jpg', + inspection: { + exists: true, + byteSize: evidence?.representative?.byteSize, + sha256: evidence?.representative?.sha256, + mediaType: 'image/jpeg', + width: evidence?.representative?.width, + height: evidence?.representative?.height, + }, + }, + operation: evidence?.operation, + capabilities: evidence?.capabilities, + timing: evidence?.timing, + samples: evidence?.samples, + cleanup: evidence?.cleanup, + }; + errors.push(...inspectNativeEconomicResiliencePayload(nativeLike)); + const measuredSamples = evidence.samples.filter(({ phase }) => phase === 'measured'); + if (measuredSamples.length === 10) { + const expectedSummary = summarizeBenchmarkSamples( + measuredSamples.map(({ iteration, elapsedMs, result }) => ({ + iteration, + elapsedMs, + result, + })) + ); + if (!deepEqual(evidence?.measuredSummary, expectedSummary)) { + errors.push('measured summary does not match the raw samples'); + } + } + } else { + errors.push('evidence samples are required'); + } + return { + schemaVersion: 1, + status: errors.length === 0 ? 'passed' : 'failed', + scenarioId: evidence?.scenarioId ?? null, + platform: evidence?.environment?.platform ?? null, + sourceCommit: evidence?.sourceCommit ?? null, + representative: errors.length === 0 ? evidence.representative : null, + economics: errors.length === 0 ? evidence.economics : null, + error: errors.length > 0 ? errors.join(' | ') : null, + }; +} + +function inspectSampleResult(sample, sampleIndex) { + const errors = []; + const result = sample?.result; + if ( + result?.format !== 'jpeg' || + result?.width !== 1600 || + result?.height !== 1200 || + !positiveInteger(result?.byteSize) || + result.byteSize > 500_000 || + result?.originalByteSize !== ECONOMIC_RESILIENCE_FIXTURE.byteSize || + !finitePositive(result?.compressionRatio) || + Math.abs(result.compressionRatio - result.byteSize / result.originalByteSize) > 1e-6 + ) { + errors.push(`native sample ${sampleIndex} result is invalid`); + } + if (sample?.sourceToOutputByteDifference !== result?.originalByteSize - result?.byteSize) { + errors.push(`native sample ${sampleIndex} signed byte difference is inconsistent`); + } + errors.push( + ...inspectImageInspection(sample?.outputInspection, { + byteSize: result?.byteSize, + width: result?.width, + height: result?.height, + }).map((error) => `native sample ${sampleIndex} output ${error}`) + ); + return errors; +} + +function inspectImageInspection(inspection, expected = {}) { + const errors = []; + if (!sameFields(inspection, IMAGE_INSPECTION_FIELDS)) { + errors.push('fields drifted'); + } + if (inspection?.exists !== true) errors.push('must exist'); + if (!positiveInteger(inspection?.byteSize)) errors.push('byteSize is invalid'); + if (!/^[0-9a-f]{64}$/.test(inspection?.sha256 ?? '')) errors.push('SHA-256 is invalid'); + if (inspection?.mediaType !== 'image/jpeg') errors.push('mediaType must be image/jpeg'); + if (!positiveInteger(inspection?.width) || !positiveInteger(inspection?.height)) { + errors.push('geometry is invalid'); + } + for (const field of ['byteSize', 'sha256', 'width', 'height']) { + if (expected[field] !== undefined && inspection?.[field] !== expected[field]) { + errors.push(`${field} does not match`); + } + } + return errors; +} + +function inspectCapabilities(capabilities, platform) { + const errors = []; + if (!sameFields(capabilities, CAPABILITY_FIELDS)) { + errors.push('capability fields drifted'); + } + if (containsUnknown(capabilities)) errors.push('capabilities contain unknown values'); + if (!Array.isArray(capabilities?.formats) || capabilities.formats.length !== 7) { + errors.push('capabilities must contain exactly seven formats'); + } else { + if (!deepEqual(capabilities.formats.map(({ format }) => format), IMAGE_FORMATS)) { + errors.push('capability formats must use the canonical order without duplicates'); + } + capabilities.formats.forEach((format, index) => { + if (!sameFields(format, FORMAT_CAPABILITY_FIELDS)) { + errors.push(`capability format ${index + 1} fields drifted`); + } + if ( + format?.format !== IMAGE_FORMATS[index] || + typeof format?.input !== 'boolean' || + typeof format?.output !== 'boolean' || + typeof format?.supportsAlpha !== 'boolean' || + typeof format?.supportsAnimation !== 'boolean' || + !Array.isArray(format?.notes) || + format.notes.length === 0 || + format.notes.some((note) => !nonEmpty(note)) + ) { + errors.push(`capability format ${index + 1} shape is invalid`); + } + }); + } + if (!deepEqual(capabilities?.metadataPolicies, ['preserve', 'safe', 'strip'])) { + errors.push('capability metadata policies drifted'); + } + if (!sameFields(capabilities?.resourceLimits, RESOURCE_LIMIT_FIELDS)) { + errors.push('capability resource limit fields drifted'); + } + const jpeg = capabilities?.formats?.find?.(({ format }) => format === 'jpeg'); + if ( + capabilities?.platform !== platform || + jpeg?.input !== true || + jpeg?.output !== true || + capabilities?.supportsTargetSizeCompression !== true || + capabilities?.supportsCancellation !== true || + capabilities?.supportsDecodeDownsampling !== true || + !capabilities?.metadataPolicies?.includes?.('strip') || + !positiveInteger(capabilities?.maxConcurrentOperations) || + !positiveInteger(capabilities?.resourceLimits?.maxSourceDimension) || + capabilities.resourceLimits.maxSourceDimension < 4000 || + !positiveInteger(capabilities?.resourceLimits?.maxSourcePixels) || + capabilities.resourceLimits.maxSourcePixels < 12_000_000 || + !positiveInteger(capabilities?.resourceLimits?.maxWorkingPixels) || + capabilities.resourceLimits.maxWorkingPixels < 1_920_000 + ) { + errors.push('capabilities do not satisfy the scenario'); + } + return errors; +} + +function inspectEnvironment(environment, payload) { + const errors = []; + if (!sameFields(environment, ENVIRONMENT_FIELDS)) errors.push('environment fields drifted'); + if (!sameFields(environment?.runner, RUNNER_FIELDS)) errors.push('runner fields drifted'); + if (!sameFields(environment?.toolchain, TOOLCHAIN_FIELDS)) errors.push('toolchain fields drifted'); + if (containsUnknown(environment)) errors.push('environment contains empty or unknown values'); + for (const field of [ + 'platform', + 'runtime', + 'osBuild', + 'device', + 'deviceKind', + 'abi', + 'reactNativeArchitecture', + 'reactNativeVersion', + 'jsEngine', + 'buildType', + ]) { + if (!nonEmpty(environment?.[field])) errors.push(`environment ${field} must be text`); + } + for (const field of RUNNER_FIELDS) { + if (!nonEmpty(environment?.runner?.[field])) { + errors.push(`environment runner ${field} must be text`); + } + } + for (const field of TOOLCHAIN_FIELDS) { + if (!nonEmpty(environment?.toolchain?.[field])) { + errors.push(`environment toolchain ${field} must be text`); + } + } + if (environment?.platform !== payload?.platform) errors.push('environment platform mismatch'); + if (environment?.reactNativeArchitecture !== payload?.architecture) { + errors.push('environment architecture mismatch'); + } + if (environment?.jsEngine !== payload?.jsEngine) { + errors.push('environment JS engine mismatch'); + } + if (!['emulator', 'simulator'].includes(environment?.deviceKind)) { + errors.push('environment deviceKind must be emulator or simulator'); + } + if ( + (environment?.platform === 'android' && + (environment.deviceKind !== 'emulator' || + environment?.runner?.label !== 'ubuntu-latest')) || + (environment?.platform === 'ios' && + (environment.deviceKind !== 'simulator' || + environment?.runner?.label !== 'macos-latest')) + ) { + errors.push('environment platform, device kind, and runner label disagree'); + } + if (!exactSemver(environment?.reactNativeVersion)) { + errors.push('environment React Native version must be exact semver'); + } + if (!['hermes', 'jsc'].includes(environment?.jsEngine)) { + errors.push('environment jsEngine must be hermes or jsc'); + } + if (environment?.buildType !== 'debug') errors.push('environment buildType must be debug'); + return errors; +} + +function containsUnknown(value) { + if (value === null || value === undefined) return true; + if (typeof value === 'string') { + return value.trim() === '' || /^(?:unknown|null|undefined|n\/a)$/i.test(value.trim()); + } + if (Array.isArray(value)) return value.length === 0 || value.some(containsUnknown); + if (typeof value === 'object') { + const values = Object.values(value); + return values.length === 0 || values.some(containsUnknown); + } + return false; +} + +function sameFields(value, expected) { + return value && deepEqual(Object.keys(value).sort(), [...expected].sort()); +} + +function readSecureAsset(root, relative, errors) { + const candidate = path.resolve(root, relative); + if (!candidate.startsWith(`${root}${path.sep}`) || !existsSync(candidate)) { + errors.push(`asset is missing: ${relative}`); + return null; + } + const status = lstatSync(candidate); + if (!status.isFile() || status.isSymbolicLink()) { + errors.push(`asset must be a regular non-symlink file: ${relative}`); + return null; + } + return readFileSync(candidate); +} + +function readJsonAsset(root, relative, errors) { + const bytes = readSecureAsset(root, relative, errors); + if (!bytes) return null; + try { + return JSON.parse(bytes.toString('utf8')); + } catch (error) { + errors.push(`asset JSON is invalid: ${relative}: ${error.message}`); + return null; + } +} + +function readArtifactDirectory(root) { + const status = lstatSync(root); + if (!status.isDirectory() || status.isSymbolicLink()) { + throw new Error('artifact root must be a regular directory'); + } + // Kept synchronous so the verifier has one deterministic filesystem snapshot. + const entries = []; + for (const entry of readdirSync(root)) { + const fullPath = path.join(root, entry); + const status = lstatSync(fullPath); + if (!status.isFile() || status.isSymbolicLink()) { + throw new Error(`artifact contains a non-regular entry: ${entry}`); + } + entries.push(entry); + } + return entries; +} + +function sha256(value) { + return createHash('sha256').update(value).digest('hex'); +} + +function deepEqual(left, right) { + return JSON.stringify(left) === JSON.stringify(right); +} + +function positiveInteger(value) { + return Number.isInteger(value) && value > 0; +} + +function finitePositive(value) { + return typeof value === 'number' && Number.isFinite(value) && value > 0; +} + +function nonEmpty(value) { + return typeof value === 'string' && value.trim().length > 0; +} + +function exactSemver(value) { + return /^(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)(?:-[0-9A-Za-z.-]+)?$/.test( + value ?? '' + ); +} + +function canonicalIsoTimestamp(value) { + if ( + typeof value !== 'string' || + !/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/.test(value) + ) { + return false; + } + const parsed = new Date(value); + return Number.isFinite(parsed.getTime()) && parsed.toISOString() === value; +} + +function validRunUrl(value) { + return /^https:\/\/github\.com\/GGULBAE\/react-native-image-compression-kit\/actions\/runs\/\d+$/.test( + value ?? '' + ); +} diff --git a/scripts/verify-economic-resilience-evidence.mjs b/scripts/verify-economic-resilience-evidence.mjs new file mode 100644 index 0000000..b17cd3f --- /dev/null +++ b/scripts/verify-economic-resilience-evidence.mjs @@ -0,0 +1,234 @@ +#!/usr/bin/env node + +import { + existsSync, + linkSync, + lstatSync, + mkdtempSync, + readFileSync, + readdirSync, + realpathSync, + rmSync, + unlinkSync, + writeFileSync, +} from 'node:fs'; +import { spawnSync } from 'node:child_process'; +import { randomUUID } from 'node:crypto'; +import os from 'node:os'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; +import { + ECONOMIC_RESILIENCE_ASSET_FILES, + inspectEconomicResilienceEvidence, +} from './economic-resilience-evidence-core.mjs'; + +const SCRIPT_DIRECTORY = path.dirname(fileURLToPath(import.meta.url)); + +const options = parseArgs(process.argv.slice(2)); +if (!options.artifactDir) throw new Error('--artifact-dir is required'); +const artifactDir = secureArtifactRoot(options.artifactDir); +const reportFile = options.reportFile + ? secureReportDestination(options.reportFile, artifactDir) + : null; +preflightArtifact(artifactDir); +const evidence = JSON.parse( + readFileSync(path.join(artifactDir, 'economic-resilience.json'), 'utf8') +); +const structuralReport = inspectEconomicResilienceEvidence(artifactDir, evidence); +let report = { + ...structuralReport, + replay: { + status: 'not-run', + localFfmpegVersion: null, + capturedFfmpegVersion: evidence?.environment?.toolchain?.ffmpeg ?? null, + ffmpegVersionsMatch: null, + localFfprobeVersion: null, + capturedFfprobeVersion: evidence?.environment?.toolchain?.ffprobe ?? null, + ffprobeVersionsMatch: null, + measurementMatch: null, + }, +}; +if (structuralReport.status === 'passed') { + try { + const replay = replayVisualAgreement(artifactDir, evidence); + report = { ...structuralReport, replay }; + } catch (error) { + report = { + ...structuralReport, + status: 'failed', + representative: null, + economics: null, + replay: { + status: 'failed', + localFfmpegVersion: error.localFfmpegVersion ?? null, + capturedFfmpegVersion: evidence?.environment?.toolchain?.ffmpeg ?? null, + ffmpegVersionsMatch: + error.localFfmpegVersion === undefined + ? null + : error.localFfmpegVersion === evidence?.environment?.toolchain?.ffmpeg, + localFfprobeVersion: error.localFfprobeVersion ?? null, + capturedFfprobeVersion: evidence?.environment?.toolchain?.ffprobe ?? null, + ffprobeVersionsMatch: + error.localFfprobeVersion === undefined + ? null + : error.localFfprobeVersion === evidence?.environment?.toolchain?.ffprobe, + measurementMatch: false, + }, + error: `visual replay failed: ${error.message}`, + }; + } +} +const serialized = `${JSON.stringify(report)}\n`; +if (reportFile) writeReportAtomic(reportFile, serialized); +process.stdout.write(serialized); +if (report.status !== 'passed') process.exitCode = 1; + +function replayVisualAgreement(root, evidence) { + const temporary = mkdtempSync(path.join(os.tmpdir(), 'rnick-visual-replay-')); + const replay = path.join(temporary, 'visual-agreement.json'); + try { + const version = spawnSync('ffmpeg', ['-version'], { + encoding: 'utf8', + maxBuffer: 1024 * 1024, + }); + if (version.error) throw version.error; + if (version.status !== 0) throw new Error(version.stderr.trim()); + const versionLine = version.stdout.split(/\r?\n/, 1)[0]; + const probeVersion = spawnSync('ffprobe', ['-version'], { + encoding: 'utf8', + maxBuffer: 1024 * 1024, + }); + if (probeVersion.error) throw probeVersion.error; + if (probeVersion.status !== 0) throw new Error(probeVersion.stderr.trim()); + const probeVersionLine = probeVersion.stdout.split(/\r?\n/, 1)[0]; + const result = spawnSync( + process.execPath, + [ + path.join(SCRIPT_DIRECTORY, 'measure-demo-visual-agreement.mjs'), + '--source', + path.join(root, 'source.jpg'), + '--output', + path.join(root, 'output.jpg'), + '--resize-mode', + 'contain', + '--max-width', + '1600', + '--max-height', + '1200', + '--report', + replay, + ], + { encoding: 'utf8', maxBuffer: 16 * 1024 * 1024 } + ); + if (result.error) throw result.error; + if (result.status !== 0 || !existsSync(replay)) { + throw new Error(result.stderr.trim() || result.stdout.trim() || 'measurement failed'); + } + const measured = JSON.parse(readFileSync(replay, 'utf8')); + if (JSON.stringify(measured) !== JSON.stringify(evidence.visualAgreement)) { + const error = new Error('replayed SSIM, flip control, geometry, or hashes differ'); + error.localFfmpegVersion = versionLine; + error.localFfprobeVersion = probeVersionLine; + throw error; + } + return { + status: 'passed', + localFfmpegVersion: versionLine, + capturedFfmpegVersion: evidence.environment.toolchain.ffmpeg, + ffmpegVersionsMatch: versionLine === evidence.environment.toolchain.ffmpeg, + localFfprobeVersion: probeVersionLine, + capturedFfprobeVersion: evidence.environment.toolchain.ffprobe, + ffprobeVersionsMatch: probeVersionLine === evidence.environment.toolchain.ffprobe, + measurementMatch: true, + }; + } finally { + rmSync(temporary, { recursive: true, force: true }); + } +} + +function secureArtifactRoot(value) { + const requested = path.resolve(value); + const status = lstatSync(requested); + if (!status.isDirectory() || status.isSymbolicLink()) { + throw new Error('--artifact-dir must be a regular non-symlink directory'); + } + return realpathSync(requested); +} + +function preflightArtifact(root) { + const entries = readdirSync(root).sort(); + if (JSON.stringify(entries) !== JSON.stringify(ECONOMIC_RESILIENCE_ASSET_FILES)) { + throw new Error('artifact must contain the exact economic resilience asset set'); + } + for (const entry of entries) { + const candidate = path.join(root, entry); + const status = lstatSync(candidate); + if (!status.isFile() || status.isSymbolicLink()) { + throw new Error(`artifact entry must be a regular non-symlink file: ${entry}`); + } + } +} + +function secureReportDestination(value, artifactRoot) { + const requested = path.resolve(value); + const requestedParent = path.dirname(requested); + const requestedParentStatus = lstatSync(requestedParent); + const canonicalParent = realpathSync(requestedParent); + const parentStatus = lstatSync(canonicalParent); + if ( + !requestedParentStatus.isDirectory() || + requestedParentStatus.isSymbolicLink() || + !parentStatus.isDirectory() || + parentStatus.isSymbolicLink() + ) { + throw new Error('--report-file parent must resolve to a regular directory'); + } + const destination = path.join(canonicalParent, path.basename(requested)); + if ( + destination === artifactRoot || + destination.startsWith(`${artifactRoot}${path.sep}`) + ) { + throw new Error('--report-file must be outside the artifact directory'); + } + try { + lstatSync(destination); + throw new Error('--report-file must not already exist'); + } catch (error) { + if (error?.code !== 'ENOENT') throw error; + } + return destination; +} + +function writeReportAtomic(destination, contents) { + const temporary = path.join( + path.dirname(destination), + `.${path.basename(destination)}.${process.pid}.${randomUUID()}.tmp` + ); + try { + writeFileSync(temporary, contents, { flag: 'wx', mode: 0o600 }); + // A same-filesystem hard link atomically publishes complete bytes and, + // unlike rename(), refuses to replace a destination created in a race. + linkSync(temporary, destination); + } finally { + try { + unlinkSync(temporary); + } catch (error) { + if (error?.code !== 'ENOENT') throw error; + } + } +} + +function parseArgs(args) { + const parsed = {}; + const normalizedArgs = args.filter((value) => value !== '--'); + for (let index = 0; index < normalizedArgs.length; index += 2) { + const flag = normalizedArgs[index]; + const value = normalizedArgs[index + 1]; + if (!flag?.startsWith('--') || !value) { + throw new Error(`invalid argument: ${flag ?? ''}`); + } + parsed[flag.slice(2).replace(/-([a-z])/g, (_, letter) => letter.toUpperCase())] = + value; + } + return parsed; +} diff --git a/test/demoCaptureScriptContract.test.ts b/test/demoCaptureScriptContract.test.ts index 9b8be0d..02b340a 100644 --- a/test/demoCaptureScriptContract.test.ts +++ b/test/demoCaptureScriptContract.test.ts @@ -23,6 +23,61 @@ describe('Android demo screenshot capture', () => { expect(source).toContain('RNICK_BENCHMARK_COMPARISON_PASS'); expect(source).toContain('create-benchmark-comparison-evidence.mjs'); expect(source).toContain('verify-benchmark-comparison-evidence.mjs'); + expect(source).toContain('RNICK_ECONOMIC_RESILIENCE_PASS'); + expect(source).toContain('create-economic-resilience-environment.mjs'); + expect(source).toContain('create-economic-resilience-evidence.mjs'); + expect(source).toContain('verify-economic-resilience-evidence.mjs'); + expect(source).toContain('--run-id "$GITHUB_RUN_ID"'); + expect(source).toContain('--run-attempt "$GITHUB_RUN_ATTEMPT"'); + expect(source).toContain('ffprobe_version=$(ffprobe -version | head -n 1)'); + expect(source).toContain('--ffprobe "$ffprobe_version"'); + expect(source).toContain('--max-width 1600'); + expect(source).toContain('--max-height 1200'); + }); + + it('streams filtered Android logs cumulatively until all evidence markers pass', () => { + const streamStart = source.indexOf( + "adb logcat -v threadtime -s RNICK_DEMO:I '*:S' > /tmp/rnick-demo-raw/native.log &", + ); + const captureLaunch = source.indexOf( + 'adb shell am start -n com.imagecompressionkit.example/.MainActivity --ez rnick-demo-capture true', + ); + const completionGate = source.indexOf( + "grep -q 'RNICK_ECONOMIC_RESILIENCE_PASS'", + ); + const streamStop = source.indexOf('stop_logcat_stream', captureLaunch); + const firstBuilder = source.indexOf('node scripts/normalize-demo-recording.mjs'); + + expect(source).toContain('logcat_pid=$!'); + expect(source).toContain('kill -INT "$logcat_pid"'); + expect(source).toContain('wait "$logcat_pid"'); + expect(source).not.toContain('adb logcat -d'); + expect(streamStart).toBeGreaterThan(-1); + expect(streamStart).toBeLessThan(captureLaunch); + expect(completionGate).toBeGreaterThan(captureLaunch); + expect(streamStop).toBeGreaterThan(completionGate); + expect(streamStop).toBeLessThan(firstBuilder); + }); + + it('pins dispatch source and retains complete platform logs for the 12 MP bundle', () => { + expect(workflow).toContain('source_sha:'); + expect(workflow.match(/Verify exact source checkout/g)?.length).toBe(2); + expect(workflow).toContain('test "$(git rev-parse HEAD)" = "$EXPECTED_SOURCE_SHA"'); + expect(workflow).toContain('RNICK_ECONOMIC_RESILIENCE_'); + expect(workflow).toContain('RNICK_ECONOMIC_RESILIENCE_PASS'); + expect(workflow).toContain( + 'capture_started_at=$(xcrun simctl spawn "$udid" date', + ); + expect(workflow).toContain('--start "$capture_started_at"'); + expect(workflow).not.toContain('log show --style compact --last 3m'); + expect(workflow).toContain('for attempt in $(seq 1 300)'); + expect(workflow).toContain('create-economic-resilience-environment.mjs'); + expect(workflow).toContain('create-economic-resilience-evidence.mjs'); + expect(workflow).toContain('verify-economic-resilience-evidence.mjs'); + expect(workflow).toContain('--run-id "$GITHUB_RUN_ID"'); + expect(workflow).toContain('--run-attempt "$GITHUB_RUN_ATTEMPT"'); + expect(workflow).toContain('ffprobe_version=$(ffprobe -version | head -n 1)'); + expect(workflow).toContain('--ffprobe "$ffprobe_version"'); }); it('records the complete guided walkthrough on both native platforms', () => { diff --git a/test/economicResilienceBenchmark.test.mjs b/test/economicResilienceBenchmark.test.mjs new file mode 100644 index 0000000..0c4c3b0 --- /dev/null +++ b/test/economicResilienceBenchmark.test.mjs @@ -0,0 +1,258 @@ +import { describe, expect, it, vi } from 'vitest'; +import { + ECONOMIC_RESILIENCE_FIXTURE, + ECONOMIC_RESILIENCE_PASS_MARKER, + runEconomicResilienceBenchmark, + selectEconomicResilienceClock, +} from '../example/src/economicResilienceBenchmark.ts'; +import { parseNativeEconomicResiliencePayload } from '../scripts/economic-resilience-evidence-core.mjs'; + +const OUTPUT_SHA = 'a'.repeat(64); +const OUTPUT_BYTES = 240_000; + +describe('kit-only 12 MP economic resilience runner', () => { + it('times only 2 warmups + 10 measured calls, stages #10, and removes all 12 outputs', async () => { + const harness = createHarness(); + const result = await runEconomicResilienceBenchmark( + harness.sampleModule, + 'android', + harness.dependencies + ); + + expect(harness.compress).toHaveBeenCalledTimes(12); + expect(harness.timingEvents.slice(0, 3)).toEqual([ + 'clock', + 'compress', + 'clock', + ]); + expect(harness.timingEvents).toEqual( + Array.from({ length: 12 }, () => ['clock', 'compress', 'clock']).flat() + ); + expect(harness.removeOutput).toHaveBeenCalledTimes(12); + expect(harness.stageOutput).toHaveBeenCalledTimes(1); + expect(harness.stageOutput).toHaveBeenCalledWith('file:///cache/output-12.jpg'); + expect(result.payload.samples.slice(0, 2).map(({ phase, iteration }) => [phase, iteration])) + .toEqual([['warmup', 1], ['warmup', 2]]); + expect(result.payload.samples.slice(2).map(({ phase, iteration }) => [phase, iteration])) + .toEqual(Array.from({ length: 10 }, (_, index) => ['measured', index + 1])); + expect(result.payload.cleanup).toEqual({ + attemptedPackageOutputs: 12, + removedPackageOutputs: 12, + residualPackageOutputs: 0, + residualPackageOutputBytes: 0, + }); + expect(result.payload.fixture.remainsAfterRun).toBe(true); + expect(result.payload.representative).toMatchObject({ + measuredIteration: 10, + stagedOutputUri: 'file:///cache/staged-output.jpg', + }); + expect(result.logs.at(-1)).toContain(ECONOMIC_RESILIENCE_PASS_MARKER); + expect(parseNativeEconomicResiliencePayload(`${result.logs.join('\n')}\n`)).toEqual( + result.payload + ); + }); + + it('still removes a package output when inspection or acceptance fails', async () => { + const harness = createHarness({ invalidFirstOutput: true }); + await expect( + runEconomicResilienceBenchmark( + harness.sampleModule, + 'android', + harness.dependencies + ) + ).rejects.toThrow('primary: warmup output 1 must be an existing, hashed, decodable JPEG'); + expect(harness.removeOutput).toHaveBeenCalledTimes(1); + expect(harness.removed).toContain('file:///cache/output-1.jpg'); + }); + + it('still removes a package output when the post-call clock fails', async () => { + const harness = createHarness({ failSecondClock: true }); + await expect( + runEconomicResilienceBenchmark( + harness.sampleModule, + 'android', + harness.dependencies + ) + ).rejects.toThrow('primary: clock failed'); + expect(harness.removeOutput).toHaveBeenCalledTimes(1); + }); + + it('combines primary and cleanup errors and never emits PASS', async () => { + const harness = createHarness({ + invalidFirstOutput: true, + failFirstRemoval: true, + reportFirstResidual: true, + }); + await expect( + runEconomicResilienceBenchmark( + harness.sampleModule, + 'android', + harness.dependencies + ) + ).rejects.toThrow(/primary: .* \| cleanup: removal failed \| cleanup: .* remained/); + expect(harness.removeOutput).toHaveBeenCalledTimes(1); + }); + + it('rejects an output that remains after a resolved cleanup call', async () => { + const harness = createHarness({ reportFirstResidual: true }); + await expect( + runEconomicResilienceBenchmark( + harness.sampleModule, + 'android', + harness.dependencies + ) + ).rejects.toThrow('cleanup: warmup output 1 remained after removal'); + expect(harness.removeOutput).toHaveBeenCalledTimes(1); + }); + + it('rejects a non-finite compression ratio before any PASS marker', async () => { + const harness = createHarness({ invalidCompressionRatio: true }); + await expect( + runEconomicResilienceBenchmark( + harness.sampleModule, + 'android', + harness.dependencies + ) + ).rejects.toThrow('Compression output does not satisfy the 12 MP acceptance contract'); + expect(harness.removeOutput).toHaveBeenCalledTimes(1); + }); + + it('selects the recorded clock and falls back to Date.now as one bound pair', () => { + const performanceClock = selectEconomicResilienceClock({ + performance: { now: () => 12.5 }, + Date: { now: () => 99 }, + }); + expect(performanceClock.clock).toBe('performance.now'); + expect(performanceClock.now()).toBe(12.5); + + const dateClock = selectEconomicResilienceClock({ + performance: { now: 'not-a-function' }, + Date: { now: () => 99 }, + }); + expect(dateClock.clock).toBe('Date.now'); + expect(dateClock.now()).toBe(99); + }); +}); + +function createHarness({ + invalidFirstOutput = false, + failFirstRemoval = false, + reportFirstResidual = false, + invalidCompressionRatio = false, + failSecondClock = false, +} = {}) { + let outputIndex = 0; + let clock = 0; + const timingEvents = []; + const removed = new Set(); + const sourceUri = 'file:///cache/source.jpg'; + const stagedUri = 'file:///cache/staged-output.jpg'; + const compress = vi.fn(async () => { + timingEvents.push('compress'); + outputIndex += 1; + return { + uri: `file:///cache/output-${outputIndex}.jpg`, + format: 'jpeg', + width: 1600, + height: 1200, + byteSize: OUTPUT_BYTES, + originalByteSize: ECONOMIC_RESILIENCE_FIXTURE.byteSize, + compressionRatio: invalidCompressionRatio + ? Number.NaN + : OUTPUT_BYTES / ECONOMIC_RESILIENCE_FIXTURE.byteSize, + }; + }); + const removeOutput = vi.fn(async (uri) => { + if (failFirstRemoval && uri.endsWith('output-1.jpg')) { + throw new Error('removal failed'); + } + removed.add(uri); + }); + const stageOutput = vi.fn(async () => stagedUri); + const inspectEvidenceImage = vi.fn(async (uri) => { + if (uri === sourceUri) return sourceInspection(); + if (uri === stagedUri) return outputInspection(); + if (invalidFirstOutput && uri.endsWith('output-1.jpg') && !removed.has(uri)) { + return { exists: true, byteSize: 0 }; + } + if (removed.has(uri) && !(reportFirstResidual && uri.endsWith('output-1.jpg'))) { + return { exists: false, byteSize: 0 }; + } + return outputInspection(); + }); + return { + compress, + removeOutput, + stageOutput, + removed, + timingEvents, + sampleModule: { + copySampleJpegToCache: vi.fn(async () => sourceUri), + copyEconomicResilienceJpegToCache: vi.fn(async () => sourceUri), + copyEconomicResilienceOutputForEvidence: stageOutput, + inspectEvidenceImage, + getReactNativeArchitecture: vi.fn(async () => 'new'), + }, + dependencies: { + compress, + removeOutput, + capabilities: vi.fn(async () => capabilities()), + now: () => { + timingEvents.push('clock'); + clock += 1; + if (failSecondClock && clock === 2) throw new Error('clock failed'); + return clock; + }, + clock: 'performance.now', + createCaptureId: () => 'economic-resilience-test', + }, + }; +} + +function sourceInspection() { + return { + exists: true, + byteSize: ECONOMIC_RESILIENCE_FIXTURE.byteSize, + sha256: ECONOMIC_RESILIENCE_FIXTURE.sha256, + mediaType: 'image/jpeg', + width: 4000, + height: 3000, + }; +} + +function outputInspection() { + return { + exists: true, + byteSize: OUTPUT_BYTES, + sha256: OUTPUT_SHA, + mediaType: 'image/jpeg', + width: 1600, + height: 1200, + }; +} + +function capabilities() { + return { + platform: 'android', + formats: ['jpeg', 'png', 'webp', 'heic', 'heif', 'avif', 'gif'].map( + (format) => ({ + format, + input: true, + output: ['jpeg', 'png', 'webp'].includes(format), + supportsAlpha: format !== 'jpeg', + supportsAnimation: false, + notes: [`${format} runtime evidence`], + }) + ), + metadataPolicies: ['preserve', 'safe', 'strip'], + supportsTargetSizeCompression: true, + supportsCancellation: true, + maxConcurrentOperations: 2, + supportsDecodeDownsampling: true, + resourceLimits: { + maxSourceDimension: 16_384, + maxSourcePixels: 48_000_000, + maxWorkingPixels: 16_000_000, + }, + }; +} diff --git a/test/economicResilienceEvidence.test.mjs b/test/economicResilienceEvidence.test.mjs new file mode 100644 index 0000000..561d962 --- /dev/null +++ b/test/economicResilienceEvidence.test.mjs @@ -0,0 +1,991 @@ +import { createHash } from 'node:crypto'; +import { + cpSync, + existsSync, + mkdirSync, + mkdtempSync, + readFileSync, + renameSync, + rmSync, + symlinkSync, + writeFileSync, +} from 'node:fs'; +import { spawnSync } from 'node:child_process'; +import os from 'node:os'; +import path from 'node:path'; +import { afterEach, describe, expect, it } from 'vitest'; +import { + ECONOMIC_RESILIENCE_FIXTURE, + ECONOMIC_RESILIENCE_OPERATION, + buildEconomicResilienceEvidence, + inspectEconomicResilienceEvidence, + inspectFixtureManifest, + inspectJpegStructure, + inspectNativeEconomicResiliencePayload, +} from '../scripts/economic-resilience-evidence-core.mjs'; +import { createDemoVisualAgreementReport } from '../scripts/demo-visual-agreement-core.mjs'; +import { createChunkedNativeLogMessages } from '../example/src/nativeBenchmarkLog.ts'; + +const SOURCE = readFileSync('example/fixtures/kit-only-12mp-v1.jpg'); +const FIXTURE_MANIFEST = JSON.parse( + readFileSync('example/fixtures/kit-only-12mp-v1.json', 'utf8') +); +const OUTPUT = minimalJpeg(1600, 1200); +const OUTPUT_SHA = sha256(OUTPUT); +const VERIFIER = path.resolve('scripts/verify-economic-resilience-evidence.mjs'); +const roots = []; + +afterEach(() => { + while (roots.length > 0) rmSync(roots.pop(), { recursive: true, force: true }); +}); + +describe('kit-only 12 MP economic resilience evidence', () => { + it('binds the repository fixture, raw samples, signed bytes, SSIM, environment, and cleanup', () => { + const artifact = createArtifact(); + const report = inspectEconomicResilienceEvidence(artifact.root, artifact.evidence); + expect(report.error).toBe(null); + + expect(inspectFixtureManifest(FIXTURE_MANIFEST, SOURCE)).toMatchObject({ + status: 'passed', + byteSize: 1_721_333, + sha256: ECONOMIC_RESILIENCE_FIXTURE.sha256, + geometry: '4000x3000', + metadataFree: true, + }); + expect(report).toMatchObject({ + status: 'passed', + platform: 'android', + economics: { + boundary: 'source-to-output-observation', + sourceOwnership: 'source-remains', + matchedTransferBaseline: null, + sourceToOutputByteDifference: SOURCE.length - OUTPUT.length, + costSavingsClaim: null, + }, + }); + }); + + it('fails closed across malformed JPEG markers, scans, segments, and metadata', () => { + const malformed = [ + Buffer.alloc(0), + Buffer.from([0xff, 0xd8, 0xff, 0xff]), + Buffer.from([0xff, 0xd8, 0xff, 0x00, 0xff, 0xd9]), + Buffer.from([0xff, 0xd8, 0xff, 0xda]), + Buffer.from([0xff, 0xd8, 0xff, 0xda, 0x00, 0x02, 0xff, 0xd9]), + Buffer.from([ + 0xff, 0xd8, 0xff, 0xda, 0x00, 0x08, + 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0x11, 0xff, 0xff, + ]), + Buffer.from([0xff, 0xd8, 0xff, 0x01, 0xff, 0xd9]), + Buffer.from([0xff, 0xd8, 0xff, 0xe0, 0x00]), + Buffer.from([0xff, 0xd8, 0xff, 0xe0, 0x00, 0x01, 0xff, 0xd9]), + ]; + for (const bytes of malformed) { + expect(inspectJpegStructure(bytes).status).toBe('failed'); + } + + const iptc = Buffer.from('Photoshop 3.0', 'latin1'); + const withApp13 = Buffer.concat([ + SOURCE.subarray(0, -2), + Buffer.from([ + 0xff, + 0xed, + ((iptc.length + 2) >> 8) & 0xff, + (iptc.length + 2) & 0xff, + ]), + iptc, + SOURCE.subarray(-2), + ]); + expect(inspectJpegStructure(withApp13)).toMatchObject({ + status: 'passed', + hasIptc: true, + app13Count: 1, + }); + + const malformedManifest = structuredClone(FIXTURE_MANIFEST); + delete malformedManifest.schemaVersion; + delete malformedManifest.provenance.kind; + malformedManifest.width = 1; + const manifestReport = inspectFixtureManifest(malformedManifest, Buffer.alloc(0)); + expect(manifestReport.status).toBe('failed'); + expect(manifestReport.error).toContain('fixture manifest fields drifted'); + }); + + it('reports every malformed native payload boundary without accepting a PASS payload', () => { + const payload = validPayload(); + payload.extra = true; + payload.implementation = { name: 'other', extra: true }; + payload.schemaVersion = 2; + payload.scenarioId = 'other'; + payload.platform = 'web'; + payload.architecture = 'other'; + payload.jsEngine = 'other'; + payload.fixture = { + ...payload.fixture, + id: 'other', + sourceUri: '', + inspection: {}, + remainsAfterRun: false, + extra: true, + }; + payload.operation = null; + payload.timing = { + clock: 'other', + boundary: 'other', + warmupIterations: 0, + measuredIterations: 0, + extra: true, + }; + payload.capabilities = {}; + payload.samples = [ + { + phase: 'other', + iteration: 0, + elapsedMs: 0, + result: {}, + sourceToOutputByteDifference: 0, + outputInspection: {}, + cleanup: {}, + extra: true, + }, + ]; + payload.representative = { + measuredIteration: 0, + stagedOutputUri: '', + inspection: {}, + extra: true, + }; + payload.cleanup = { + attemptedPackageOutputs: 1, + removedPackageOutputs: 0, + residualPackageOutputs: 1, + residualPackageOutputBytes: 1, + extra: true, + }; + + const errors = inspectNativeEconomicResiliencePayload(payload); + expect(errors.length).toBeGreaterThan(20); + expect(errors.join(' | ')).toContain('native payload fields drifted'); + expect(errors.join(' | ')).toContain('capabilities do not satisfy the scenario'); + }); + + it('rejects invalid build identity, environment, fixture, output, and visual inputs together', () => { + const payload = structuredClone(validPayload()); + payload.platform = 'web'; + expect(() => + buildEconomicResilienceEvidence({ + payload, + packageVersion: 'not-semver', + sourceCommit: 'short', + runId: 0, + runAttempt: 0, + capturedAt: '1', + runUrl: 'https://example.com/run/1', + environment: {}, + fixtureManifest: {}, + sourceBytes: Buffer.alloc(0), + outputBytes: Buffer.alloc(0), + visualAgreement: {}, + }) + ).toThrow(/packageVersion|sourceCommit|runId|capturedAt|visual agreement/); + }); + + it('rejects a comprehensively drifted evidence object and unsafe artifact entries', () => { + const artifact = createArtifact(); + const evidence = structuredClone(artifact.evidence); + evidence.extra = true; + evidence.schemaVersion = 2; + evidence.status = 'failed'; + evidence.scenarioId = 'other'; + evidence.implementation = { name: 'other', version: 'latest', buildSource: 'registry', extra: true }; + evidence.sourceCommit = 'short'; + evidence.runId = 0; + evidence.runAttempt = 0; + evidence.capturedAt = '1'; + evidence.runUrl = 'https://example.com'; + evidence.environment = {}; + evidence.capabilities = {}; + evidence.fixture = {}; + evidence.operation = {}; + evidence.timing = {}; + evidence.samples = null; + evidence.measuredSummary = {}; + evidence.representative = {}; + evidence.economics = {}; + evidence.cleanup = {}; + evidence.visualAgreement = {}; + const report = inspectEconomicResilienceEvidence(artifact.root, evidence); + expect(report.status).toBe('failed'); + expect(report.error).toContain('evidence fields drifted'); + expect(report.error).toContain('evidence samples are required'); + + const linkedArtifact = createArtifact(); + const sourcePath = path.join(linkedArtifact.root, 'source.jpg'); + const externalSource = path.join(path.dirname(linkedArtifact.root), 'external-source.jpg'); + renameSync(sourcePath, externalSource); + symlinkSync(externalSource, sourcePath); + expect( + inspectEconomicResilienceEvidence(linkedArtifact.root, linkedArtifact.evidence).error + ).toMatch(/non-regular|non-symlink/); + + const invalidJsonArtifact = createArtifact(); + writeFileSync(path.join(invalidJsonArtifact.root, 'environment.json'), '{invalid'); + expect( + inspectEconomicResilienceEvidence(invalidJsonArtifact.root, invalidJsonArtifact.evidence).error + ).toContain('asset JSON is invalid: environment.json'); + + const fileRoot = path.join(path.dirname(artifact.root), 'not-a-directory'); + writeFileSync(fileRoot, 'file'); + expect(inspectEconomicResilienceEvidence(fileRoot, evidence).error).toContain( + 'artifact root must be a regular directory' + ); + }); + + it('rejects summary and embedded visual numbers that drift from bound raw evidence', () => { + for (const mutate of [ + (evidence) => { + evidence.measuredSummary.elapsedMs.median += 1; + }, + (evidence) => { + evidence.visualAgreement.uprightSimilarity -= 0.01; + }, + ]) { + const artifact = createArtifact(); + mutate(artifact.evidence); + rewriteEvidence(artifact); + expect(inspectEconomicResilienceEvidence(artifact.root, artifact.evidence).status) + .toBe('failed'); + } + }); + + it('rejects fixture and representative identity or geometry drift', () => { + for (const mutate of [ + (evidence) => { + evidence.fixture.id = 'other-fixture'; + }, + (evidence) => { + evidence.fixture.file = 'renamed.jpg'; + }, + (evidence) => { + evidence.fixture.manifestFile = 'other.json'; + }, + (evidence) => { + evidence.representative.file = 'other.jpg'; + }, + (evidence) => { + evidence.representative.width = 1599; + }, + ]) { + const artifact = createArtifact(); + mutate(artifact.evidence); + rewriteEvidence(artifact); + expect(inspectEconomicResilienceEvidence(artifact.root, artifact.evidence).status) + .toBe('failed'); + } + }); + + it('rejects capability extra fields, missing formats, type drift, and cancellation drift', () => { + for (const mutate of [ + (evidence) => { + evidence.capabilities.extra = true; + }, + (evidence) => { + evidence.capabilities.formats.pop(); + }, + (evidence) => { + evidence.capabilities.formats[1].format = 'jpeg'; + }, + (evidence) => { + evidence.capabilities.resourceLimits.maxSourcePixels = '48000000'; + }, + (evidence) => { + evidence.capabilities.supportsCancellation = false; + }, + ]) { + const artifact = createArtifact(); + mutate(artifact.evidence); + rewriteEvidence(artifact); + expect(inspectEconomicResilienceEvidence(artifact.root, artifact.evidence).status) + .toBe('failed'); + } + }); + + it('rejects empty, unknown, mistyped, and additional environment values', () => { + for (const mutate of [ + (environment) => { + environment.runtime = ''; + }, + (environment) => { + environment.osBuild = 42; + }, + (environment) => { + environment.runner.name = 'unknown'; + }, + (environment) => { + environment.toolchain.extra = 'drift'; + }, + ]) { + const artifact = createArtifact(); + mutate(artifact.evidence.environment); + rewriteEnvironment(artifact); + rewriteEvidence(artifact); + expect(inspectEconomicResilienceEvidence(artifact.root, artifact.evidence).status) + .toBe('failed'); + } + }); + + it('rejects a lifecycle claim when eleven package outputs remain', () => { + const artifact = createArtifact(); + artifact.evidence.cleanup.removedPackageOutputs = 1; + artifact.evidence.cleanup.residualPackageOutputs = 11; + artifact.evidence.cleanup.residualPackageOutputBytes = 11 * OUTPUT.length; + artifact.evidence.samples.slice(1).forEach((sample) => { + sample.cleanup.packageOutputRemoved = false; + sample.cleanup.existsAfterRemoval = true; + sample.cleanup.residualByteSize = OUTPUT.length; + }); + rewriteEvidence(artifact); + const report = inspectEconomicResilienceEvidence(artifact.root, artifact.evidence); + expect(report.status).toBe('failed'); + expect(report.error).toContain('zero residual'); + }); + + it('rejects extra assets and fixture metadata comments', () => { + const artifact = createArtifact(); + writeFileSync(path.join(artifact.root, 'unexpected.txt'), 'drift'); + expect(inspectEconomicResilienceEvidence(artifact.root, artifact.evidence).status) + .toBe('failed'); + + const commented = Buffer.concat([ + Buffer.from([0xff, 0xd8, 0xff, 0xfe, 0x00, 0x09]), + Buffer.from('comment'), + SOURCE.subarray(2), + ]); + expect(inspectFixtureManifest(FIXTURE_MANIFEST, commented).error).toContain( + 'must not contain APP1, APP13, or JPEG comment metadata' + ); + + const postScanComment = Buffer.concat([ + SOURCE.subarray(0, -2), + Buffer.from([0xff, 0xfe, 0x00, 0x09]), + Buffer.from('comment'), + SOURCE.subarray(-2), + ]); + expect(inspectFixtureManifest(FIXTURE_MANIFEST, postScanComment).error).toContain( + 'must not contain APP1, APP13, or JPEG comment metadata' + ); + + const postScanExif = Buffer.concat([ + SOURCE.subarray(0, -2), + Buffer.from([0xff, 0xe1, 0x00, 0x08]), + Buffer.from('Exif\0\0'), + SOURCE.subarray(-2), + ]); + expect(inspectFixtureManifest(FIXTURE_MANIFEST, postScanExif).error).toContain( + 'must not contain APP1, APP13, or JPEG comment metadata' + ); + + const extendedXmpSignature = Buffer.from( + 'http://ns.adobe.com/xmp/extension/\0', + 'latin1' + ); + const extendedXmp = Buffer.concat([ + SOURCE.subarray(0, -2), + Buffer.from([ + 0xff, + 0xe1, + ((extendedXmpSignature.length + 2) >> 8) & 0xff, + (extendedXmpSignature.length + 2) & 0xff, + ]), + extendedXmpSignature, + SOURCE.subarray(-2), + ]); + expect(inspectFixtureManifest(FIXTURE_MANIFEST, extendedXmp).error).toContain( + 'must not contain APP1, APP13, or JPEG comment metadata' + ); + + const trailing = Buffer.concat([SOURCE, Buffer.from('trailing')]); + expect(inspectFixtureManifest(FIXTURE_MANIFEST, trailing).error).toContain( + 'JPEG contains bytes after EOI' + ); + + const driftedManifest = structuredClone(FIXTURE_MANIFEST); + driftedManifest.provenance.generator = 'other encoder'; + expect(inspectFixtureManifest(driftedManifest, SOURCE).error).toContain( + 'provenance drifted from the immutable generation record' + ); + }); + + it('the offline CLI replays decode, geometry, SSIM, and the flip control', () => { + const artifact = createReplayableArtifact(); + const valid = spawnSync( + process.execPath, + [ + VERIFIER, + '--artifact-dir', + artifact.root, + ], + { cwd: os.tmpdir(), encoding: 'utf8' } + ); + expect(valid.status, valid.stderr).toBe(0); + + const forgedArtifact = createArtifact(); + const forged = spawnSync( + process.execPath, + [ + 'scripts/verify-economic-resilience-evidence.mjs', + '--artifact-dir', + forgedArtifact.root, + ], + { cwd: process.cwd(), encoding: 'utf8' } + ); + expect(forged.status).toBe(1); + expect(forged.stdout).toContain('visual replay failed'); + }, 30_000); + + it('keeps reports outside artifacts and publishes them without replacement', () => { + const artifact = createReplayableArtifact(); + const evidencePath = path.join(artifact.root, 'economic-resilience.json'); + const originalEvidence = readFileSync(evidencePath); + const parent = path.dirname(artifact.root); + const reportPath = path.join(parent, 'verification.json'); + + const valid = runVerifier(artifact.root, reportPath); + expect(valid.status, valid.stderr).toBe(0); + expect(readFileSync(reportPath, 'utf8')).toBe(valid.stdout); + expect(JSON.parse(valid.stdout).replay).toMatchObject({ + status: 'passed', + measurementMatch: true, + }); + expect(readFileSync(evidencePath)).toEqual(originalEvidence); + + const inside = runVerifier(artifact.root, path.join(artifact.root, 'source.jpg')); + expect(inside.status).not.toBe(0); + expect(readFileSync(path.join(artifact.root, 'source.jpg'))).toEqual(SOURCE); + + const existing = path.join(parent, 'existing.json'); + writeFileSync(existing, 'keep'); + expect(runVerifier(artifact.root, existing).status).not.toBe(0); + expect(readFileSync(existing, 'utf8')).toBe('keep'); + + const linked = path.join(parent, 'linked.json'); + symlinkSync(existing, linked); + expect(runVerifier(artifact.root, linked).status).not.toBe(0); + expect(readFileSync(existing, 'utf8')).toBe('keep'); + + const artifactAlias = path.join(parent, 'artifact-alias'); + symlinkSync(artifact.root, artifactAlias); + expect(runVerifier(artifact.root, path.join(artifactAlias, 'report.json')).status) + .not.toBe(0); + expect(readFileSync(evidencePath)).toEqual(originalEvidence); + }, 30_000); + + it('preflights every artifact entry before parsing evidence JSON', () => { + const artifact = createArtifact(); + const evidencePath = path.join(artifact.root, 'economic-resilience.json'); + const external = path.join(path.dirname(artifact.root), 'external.json'); + renameSync(evidencePath, external); + symlinkSync(external, evidencePath); + writeFileSync(external, '{ definitely not valid JSON'); + + const result = spawnSync( + process.execPath, + [VERIFIER, '--artifact-dir', artifact.root], + { cwd: os.tmpdir(), encoding: 'utf8' } + ); + expect(result.status).not.toBe(0); + expect(result.stderr).toContain('regular non-symlink file: economic-resilience.json'); + expect(result.stderr).not.toContain('SyntaxError'); + }); + + it('writes exact environment bytes atomically and refuses linked inputs or outputs', () => { + const parent = mkdtempSync(path.join(os.tmpdir(), 'rnick-economic-environment-')); + roots.push(parent); + const log = path.join(parent, 'native.log'); + writeFileSync(log, `${createChunkedNativeLogMessages( + validPayload(), + 'economic-environment-test', + { + chunk: 'RNICK_ECONOMIC_RESILIENCE_CHUNK', + pass: 'RNICK_ECONOMIC_RESILIENCE_PASS', + } + ).join('\n')}\n`); + const output = path.join(parent, 'environment.json'); + const args = environmentArgs(log, output); + const created = spawnSync(process.execPath, args, { encoding: 'utf8' }); + expect(created.status, created.stderr).toBe(0); + expect(JSON.parse(readFileSync(output, 'utf8'))).toEqual(validEnvironment()); + + const existing = spawnSync(process.execPath, args, { encoding: 'utf8' }); + expect(existing.status).not.toBe(0); + expect(JSON.parse(readFileSync(output, 'utf8'))).toEqual(validEnvironment()); + + const linkedLog = path.join(parent, 'linked.log'); + symlinkSync(log, linkedLog); + const linkedInput = spawnSync( + process.execPath, + environmentArgs(linkedLog, path.join(parent, 'linked-input.json')), + { encoding: 'utf8' } + ); + expect(linkedInput.status).not.toBe(0); + + const outputLink = path.join(parent, 'output-link.json'); + symlinkSync(output, outputLink); + const linkedOutput = spawnSync( + process.execPath, + environmentArgs(log, outputLink), + { encoding: 'utf8' } + ); + expect(linkedOutput.status).not.toBe(0); + expect(JSON.parse(readFileSync(output, 'utf8'))).toEqual(validEnvironment()); + + const linkedParent = path.join(parent, 'linked-parent'); + const realParent = path.join(parent, 'real-parent'); + mkdirSync(realParent); + symlinkSync(realParent, linkedParent); + const linkedParentOutput = spawnSync( + process.execPath, + environmentArgs(log, path.join(linkedParent, 'environment.json')), + { encoding: 'utf8' } + ); + expect(linkedParentOutput.status).not.toBe(0); + expect(() => readFileSync(path.join(realParent, 'environment.json'))).toThrow(); + }); + + it('builds transactionally through an aliased ancestor and leaves no root on validation failure', () => { + const parent = mkdtempSync(path.join(os.tmpdir(), 'rnick-economic-builder-')); + roots.push(parent); + const actual = path.join(parent, 'actual-inputs'); + const alias = path.join(parent, 'aliased-inputs'); + mkdirSync(actual); + symlinkSync(actual, alias); + const payload = validPayload(); + const visualAgreement = createDemoVisualAgreementReport({ + sourceBytes: SOURCE, + outputBytes: OUTPUT, + sourceWidth: 4000, + sourceHeight: 3000, + width: 1600, + height: 1200, + resizeMode: 'contain', + maxWidth: 1600, + maxHeight: 1200, + uprightSimilarity: 0.95, + verticalFlipSimilarity: 0.5, + }); + const files = { + log: 'native.log', + source: 'source.jpg', + output: 'output.jpg', + manifest: 'fixture.json', + visual: 'visual.json', + environment: 'environment.json', + }; + writeFileSync( + path.join(actual, files.log), + `${createChunkedNativeLogMessages(payload, 'economic-builder-test', { + chunk: 'RNICK_ECONOMIC_RESILIENCE_CHUNK', + pass: 'RNICK_ECONOMIC_RESILIENCE_PASS', + }).join('\n')}\n` + ); + writeFileSync(path.join(actual, files.source), SOURCE); + writeFileSync(path.join(actual, files.output), OUTPUT); + writeFileSync(path.join(actual, files.manifest), `${JSON.stringify(FIXTURE_MANIFEST)}\n`); + writeFileSync(path.join(actual, files.visual), `${JSON.stringify(visualAgreement)}\n`); + writeFileSync(path.join(actual, files.environment), `${JSON.stringify(validEnvironment())}\n`); + + const destination = path.join(parent, 'built'); + const result = spawnSync( + process.execPath, + builderArgs(alias, files, destination, '0.4.1'), + { encoding: 'utf8' } + ); + expect(result.status, result.stderr).toBe(0); + expect(existsSync(path.join(destination, 'economic-resilience', 'economic-resilience.json'))) + .toBe(true); + + const failedDestination = path.join(parent, 'must-not-remain'); + const failed = spawnSync( + process.execPath, + builderArgs(alias, files, failedDestination, 'not-semver'), + { encoding: 'utf8' } + ); + expect(failed.status).not.toBe(0); + expect(existsSync(failedDestination)).toBe(false); + }); +}); + +function createArtifact() { + const parent = mkdtempSync(path.join(os.tmpdir(), 'rnick-economic-evidence-')); + roots.push(parent); + const root = path.join(parent, 'economic-resilience'); + mkdirSync(root); + const payload = validPayload(); + const environment = validEnvironment(); + const visualAgreement = createDemoVisualAgreementReport({ + sourceBytes: SOURCE, + outputBytes: OUTPUT, + sourceWidth: 4000, + sourceHeight: 3000, + width: 1600, + height: 1200, + resizeMode: 'contain', + maxWidth: 1600, + maxHeight: 1200, + uprightSimilarity: 0.95, + verticalFlipSimilarity: 0.5, + }); + const evidence = buildEconomicResilienceEvidence({ + payload, + packageVersion: '0.4.1', + sourceCommit: '1'.repeat(40), + runId: 31_674_626_714, + runAttempt: 1, + capturedAt: '2026-08-13T07:00:00.000Z', + runUrl: + 'https://github.com/GGULBAE/react-native-image-compression-kit/actions/runs/31674626714', + environment, + fixtureManifest: FIXTURE_MANIFEST, + sourceBytes: SOURCE, + outputBytes: OUTPUT, + visualAgreement, + }); + writeFileSync(path.join(root, 'source.jpg'), SOURCE); + writeFileSync(path.join(root, 'output.jpg'), OUTPUT); + writeFileSync( + path.join(root, 'fixture-manifest.json'), + `${JSON.stringify(FIXTURE_MANIFEST, null, 2)}\n` + ); + writeFileSync( + path.join(root, 'visual-agreement.json'), + `${JSON.stringify(visualAgreement, null, 2)}\n` + ); + writeFileSync( + path.join(root, 'environment.json'), + `${JSON.stringify(environment, null, 2)}\n` + ); + writeFileSync( + path.join(root, 'economic-resilience.json'), + `${JSON.stringify(evidence, null, 2)}\n` + ); + return { root, evidence }; +} + +function validPayload() { + const inspection = { + exists: true, + byteSize: OUTPUT.length, + sha256: OUTPUT_SHA, + mediaType: 'image/jpeg', + width: 1600, + height: 1200, + }; + const samples = Array.from({ length: 12 }, (_, index) => ({ + phase: index < 2 ? 'warmup' : 'measured', + iteration: index < 2 ? index + 1 : index - 1, + elapsedMs: index + 1, + result: { + format: 'jpeg', + width: 1600, + height: 1200, + byteSize: OUTPUT.length, + originalByteSize: SOURCE.length, + compressionRatio: OUTPUT.length / SOURCE.length, + }, + sourceToOutputByteDifference: SOURCE.length - OUTPUT.length, + outputInspection: { ...inspection }, + cleanup: { + packageOutputRemoved: true, + existsAfterRemoval: false, + residualByteSize: 0, + }, + })); + return { + schemaVersion: 1, + scenarioId: 'kit-only-12mp-jpeg-v1', + implementation: { name: 'react-native-image-compression-kit' }, + platform: 'android', + architecture: 'new', + jsEngine: 'hermes', + fixture: { + ...ECONOMIC_RESILIENCE_FIXTURE, + sourceUri: 'file:///cache/source.jpg', + inspection: { + exists: true, + byteSize: SOURCE.length, + sha256: sha256(SOURCE), + mediaType: 'image/jpeg', + width: 4000, + height: 3000, + }, + remainsAfterRun: true, + }, + operation: ECONOMIC_RESILIENCE_OPERATION, + capabilities: validCapabilities(), + timing: { + clock: 'performance.now', + boundary: 'compressImage-call-only', + warmupIterations: 2, + measuredIterations: 10, + }, + representative: { + measuredIteration: 10, + stagedOutputUri: 'file:///cache/staged-output.jpg', + inspection: { ...inspection }, + }, + samples, + cleanup: { + attemptedPackageOutputs: 12, + removedPackageOutputs: 12, + residualPackageOutputs: 0, + residualPackageOutputBytes: 0, + }, + }; +} + +function validCapabilities() { + return { + platform: 'android', + formats: ['jpeg', 'png', 'webp', 'heic', 'heif', 'avif', 'gif'].map( + (format) => ({ + format, + input: true, + output: ['jpeg', 'png', 'webp'].includes(format), + supportsAlpha: format !== 'jpeg', + supportsAnimation: false, + notes: [`${format} exact runtime note`], + }) + ), + metadataPolicies: ['preserve', 'safe', 'strip'], + supportsTargetSizeCompression: true, + supportsCancellation: true, + maxConcurrentOperations: 2, + supportsDecodeDownsampling: true, + resourceLimits: { + maxSourceDimension: 16_384, + maxSourcePixels: 48_000_000, + maxWorkingPixels: 16_000_000, + }, + }; +} + +function validEnvironment() { + return { + platform: 'android', + runtime: 'Android 15 / API 35', + osBuild: 'AP3A.241105.008', + device: 'Google sdk_gphone64_x86_64', + deviceKind: 'emulator', + abi: 'x86_64', + reactNativeArchitecture: 'new', + reactNativeVersion: '0.86.2', + jsEngine: 'hermes', + buildType: 'debug', + runner: { + label: 'ubuntu-latest', + os: 'Linux', + arch: 'X64', + name: 'GitHub Actions 123', + imageOS: 'ubuntu24', + imageVersion: '20260810.1', + }, + toolchain: { + node: 'v24.18.0', + ffmpeg: 'ffmpeg version 7.1.1', + ffprobe: 'ffprobe version 7.1.1', + primary: 'openjdk version 21.0.8', + platformSdk: + 'Android compile SDK 36; emulator API 35; build-tools 36.0.0; NDK 27.1.12297006', + }, + }; +} + +function createReplayableArtifact() { + const parent = mkdtempSync(path.join(os.tmpdir(), 'rnick-economic-replay-')); + roots.push(parent); + const output = path.join(parent, 'output.jpg'); + mustRun('ffmpeg', [ + '-hide_banner', + '-loglevel', 'error', + '-i', 'example/fixtures/kit-only-12mp-v1.jpg', + '-vf', 'scale=1600:1200:flags=lanczos', + '-frames:v', '1', + '-c:v', 'mjpeg', + '-q:v', '2', + '-pix_fmt', 'yuvj420p', + '-map_metadata', '-1', + '-flags', '+bitexact', + '-fflags', '+bitexact', + output, + ]); + const outputBytes = readFileSync(output); + const visualPath = path.join(parent, 'visual.json'); + mustRun(process.execPath, [ + 'scripts/measure-demo-visual-agreement.mjs', + '--source', 'example/fixtures/kit-only-12mp-v1.jpg', + '--output', output, + '--resize-mode', 'contain', + '--max-width', '1600', + '--max-height', '1200', + '--report', visualPath, + ]); + const visualAgreement = JSON.parse(readFileSync(visualPath, 'utf8')); + const payload = validPayloadForOutput(outputBytes); + const environment = validEnvironment(); + environment.toolchain.ffmpeg = firstLine( + mustRun('ffmpeg', ['-version'], { encoding: 'utf8' }).stdout + ); + environment.toolchain.ffprobe = firstLine( + mustRun('ffprobe', ['-version'], { encoding: 'utf8' }).stdout + ); + const evidence = buildEconomicResilienceEvidence({ + payload, + packageVersion: '0.4.1', + sourceCommit: '1'.repeat(40), + runId: 31_674_626_714, + runAttempt: 1, + capturedAt: '2026-08-13T07:00:00.000Z', + runUrl: + 'https://github.com/GGULBAE/react-native-image-compression-kit/actions/runs/31674626714', + environment, + fixtureManifest: FIXTURE_MANIFEST, + sourceBytes: SOURCE, + outputBytes, + visualAgreement, + }); + const root = path.join(parent, 'economic-resilience'); + mkdirSync(root); + cpSync('example/fixtures/kit-only-12mp-v1.jpg', path.join(root, 'source.jpg')); + cpSync(output, path.join(root, 'output.jpg')); + writeFileSync(path.join(root, 'fixture-manifest.json'), `${JSON.stringify(FIXTURE_MANIFEST, null, 2)}\n`); + writeFileSync(path.join(root, 'visual-agreement.json'), `${JSON.stringify(visualAgreement, null, 2)}\n`); + writeFileSync(path.join(root, 'environment.json'), `${JSON.stringify(environment, null, 2)}\n`); + writeFileSync(path.join(root, 'economic-resilience.json'), `${JSON.stringify(evidence, null, 2)}\n`); + return { root }; +} + +function validPayloadForOutput(outputBytes) { + const payload = validPayload(); + const inspection = { + exists: true, + byteSize: outputBytes.length, + sha256: sha256(outputBytes), + mediaType: 'image/jpeg', + width: 1600, + height: 1200, + }; + payload.samples.forEach((sample) => { + sample.result.byteSize = outputBytes.length; + sample.result.compressionRatio = outputBytes.length / SOURCE.length; + sample.sourceToOutputByteDifference = SOURCE.length - outputBytes.length; + sample.outputInspection = { ...inspection }; + }); + payload.representative.inspection = { ...inspection }; + return payload; +} + +function mustRun(command, args, options = {}) { + const result = spawnSync(command, args, { encoding: 'utf8', ...options }); + if (result.error) throw result.error; + if (result.status !== 0) throw new Error(result.stderr || result.stdout); + return result; +} + +function runVerifier(artifactDir, reportFile) { + return spawnSync( + process.execPath, + [ + VERIFIER, + '--artifact-dir', + artifactDir, + '--report-file', + reportFile, + ], + { cwd: os.tmpdir(), encoding: 'utf8' } + ); +} + +function environmentArgs(nativeLog, output) { + const environment = validEnvironment(); + return [ + path.resolve('scripts/create-economic-resilience-environment.mjs'), + '--platform', environment.platform, + '--runtime', environment.runtime, + '--os-build', environment.osBuild, + '--device', environment.device, + '--device-kind', environment.deviceKind, + '--abi', environment.abi, + '--react-native-version', environment.reactNativeVersion, + '--native-log', nativeLog, + '--build-type', environment.buildType, + '--runner-label', environment.runner.label, + '--runner-os', environment.runner.os, + '--runner-arch', environment.runner.arch, + '--runner-name', environment.runner.name, + '--image-os', environment.runner.imageOS, + '--image-version', environment.runner.imageVersion, + '--node', environment.toolchain.node, + '--ffmpeg', environment.toolchain.ffmpeg, + '--ffprobe', environment.toolchain.ffprobe, + '--primary-toolchain', environment.toolchain.primary, + '--platform-sdk', environment.toolchain.platformSdk, + '--output', output, + ]; +} + +function builderArgs(root, files, destination, packageVersion) { + return [ + path.resolve('scripts/create-economic-resilience-evidence.mjs'), + '--platform', 'android', + '--package-version', packageVersion, + '--source-sha', '1'.repeat(40), + '--run-id', '31674626714', + '--run-attempt', '1', + '--run-url', + 'https://github.com/GGULBAE/react-native-image-compression-kit/actions/runs/31674626714', + '--captured-at', '2026-08-13T07:00:00.000Z', + '--log', path.join(root, files.log), + '--source', path.join(root, files.source), + '--output', path.join(root, files.output), + '--fixture-manifest', path.join(root, files.manifest), + '--visual-agreement', path.join(root, files.visual), + '--environment', path.join(root, files.environment), + '--destination', destination, + ]; +} + +function firstLine(value) { + return String(value).split(/\r?\n/, 1)[0]; +} + +function minimalJpeg(width, height) { + return Buffer.from([ + 0xff, 0xd8, + 0xff, 0xc0, 0x00, 0x11, 0x08, + (height >> 8) & 0xff, height & 0xff, + (width >> 8) & 0xff, width & 0xff, + 0x03, 0x01, 0x11, 0x00, 0x02, 0x11, 0x00, 0x03, 0x11, 0x00, + 0xff, 0xda, 0x00, 0x0c, + 0x03, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x3f, 0x00, + 0xff, 0xd9, + ]); +} + +function rewriteEvidence({ root, evidence }) { + writeFileSync( + path.join(root, 'economic-resilience.json'), + `${JSON.stringify(evidence, null, 2)}\n` + ); +} + +function rewriteEnvironment({ root, evidence }) { + writeFileSync( + path.join(root, 'environment.json'), + `${JSON.stringify(evidence.environment, null, 2)}\n` + ); +} + +function sha256(value) { + return createHash('sha256').update(value).digest('hex'); +} diff --git a/test/economicResilienceNativeSourceContract.test.mjs b/test/economicResilienceNativeSourceContract.test.mjs new file mode 100644 index 0000000..a2b3e74 --- /dev/null +++ b/test/economicResilienceNativeSourceContract.test.mjs @@ -0,0 +1,57 @@ +import { readFileSync } from 'node:fs'; +import { describe, expect, it } from 'vitest'; + +const android = readFileSync( + 'example/android/app/src/main/java/com/imagecompressionkit/example/ExampleImageSourceModule.kt', + 'utf8' +); +const androidBuild = readFileSync('example/android/app/build.gradle', 'utf8'); +const ios = readFileSync( + 'example/ios/ImageCompressionKitExample/ExampleImageSource.m', + 'utf8' +); +const project = readFileSync( + 'example/ios/ImageCompressionKitExample.xcodeproj/project.pbxproj', + 'utf8' +); + +describe('12 MP example native fixture bridge contract', () => { + it('bundles the same repository fixture into both native examples', () => { + expect(androidBuild).toContain('main.assets.srcDirs += ["../../fixtures"]'); + expect(project.match(/kit-only-12mp-v1\.jpg/g)?.length).toBeGreaterThanOrEqual(3); + expect(android).toContain('assets.open(assetName)'); + expect(ios).toContain('pathForResource:@"kit-only-12mp-v1" ofType:@"jpg"'); + }); + + it('rejects outside-cache and linked inputs before inspection or staging', () => { + expect(android).toContain('requestedFile.path != file.path'); + expect(android).toContain('!file.path.startsWith(cachePrefix)'); + expect(android).toContain('!uri.authority.isNullOrEmpty()'); + expect(android).toContain('uri.query != null'); + expect(android).toContain('uri.fragment != null'); + expect(android).toContain('uri.isOpaque'); + expect(android).toContain('Os.lstat(file.absolutePath)'); + expect(android).toContain('OsConstants.S_ISREG(status.st_mode)'); + expect(android).not.toContain('java.nio.file.Files'); + expect(android).toContain('OsConstants.ENOENT'); + expect(ios).toContain('standardizedPath.stringByDeletingLastPathComponent'); + expect(ios).toContain('standardizedParent.stringByResolvingSymlinksInPath'); + expect(ios).toContain('standardizedPath.lastPathComponent'); + expect(ios).toContain('ExampleImageSourcePathIsRegularNonSymlink(path)'); + expect(ios).toContain('lstat(path.fileSystemRepresentation, &status)'); + expect(ios).toContain('URL.host.length > 0'); + expect(ios.indexOf('!ExampleImageSourcePathIsRegularNonSymlink(path)')).toBeLessThan( + ios.indexOf('NSData *data = [NSData dataWithContentsOfFile:path') + ); + }); + + it('refuses unsafe fixed destinations instead of following a symlink', () => { + expect(android).toContain('removeExistingRegularDestination(outputFile)'); + expect(android).toContain('File.createTempFile(".rnick-evidence-", ".tmp", directory)'); + expect(android).toContain('Os.rename(temporary.absolutePath, destination.absolutePath)'); + expect(android).toContain('Evidence destination must be a removable regular file.'); + expect(android).toContain('Sample image cache directory must not be linked.'); + expect(ios).toContain('The iOS example refused an unsafe evidence destination.'); + expect(ios).toContain('The iOS example refused a linked evidence destination.'); + }); +}); diff --git a/test/packageContract.test.ts b/test/packageContract.test.ts index 1f99bf4..a9f22c6 100644 --- a/test/packageContract.test.ts +++ b/test/packageContract.test.ts @@ -139,6 +139,10 @@ describe('npm package contract', () => { 'node scripts/create-benchmark-comparison-evidence.mjs', 'verify:benchmark-comparison-evidence': 'node scripts/verify-benchmark-comparison-evidence.mjs', + 'economic-resilience:evidence': + 'node scripts/create-economic-resilience-evidence.mjs', + 'verify:economic-resilience-evidence': + 'node scripts/verify-economic-resilience-evidence.mjs', 'release:dry-run': 'node scripts/release-dry-run.mjs', 'android:doctor': 'node scripts/android-verification.mjs doctor', 'android:codegen': 'node scripts/android-verification.mjs codegen', @@ -237,6 +241,10 @@ describe('npm package contract', () => { expect(readProjectFile('scripts/docker-android.mjs')).toContain( "'RNICK_DOCKER=1'" ); + const dockerfile = readProjectFile('Dockerfile'); + expect(dockerfile).toContain('ffmpeg \\'); + expect(dockerfile).toContain('ffmpeg -version | head -n 1'); + expect(dockerfile).toContain('ffprobe -version | head -n 1'); }); it('keeps Vitest and its V8 coverage provider on one exact version', () => { diff --git a/website/reference/evidence.md b/website/reference/evidence.md index a13cb9a..c6c5098 100644 --- a/website/reference/evidence.md +++ b/website/reference/evidence.md @@ -189,6 +189,25 @@ mean better visual quality. - The exact-plan timing benchmark is an environment-bound observation and is documented separately from these product-contract metrics. +## Large-photo source-tree capture contract + +The Native Demo Evidence workflow also captures a separate, kit-only 12 MP +JPEG scenario from the checked-out source tree. It uses one project-generated, +non-personal 4,000 × 3,000 fixture, a 1,600 × 1,200 contain request, JPEG +quality 90, a 500,000-byte ceiling, a `strip` metadata policy, two warmups, and ten +measured calls. Iteration 10 is the representative output. + +This source-tree bundle is intentionally separate from the current v0.4.0 site +snapshot. A result is accepted only when source/output bytes and hashes, +decoded geometry, the exact environment and capabilities, SSIM ≥ 0.90, an +upright-over-vertical-flip margin ≥ 0.02, source retention, and cleanup of all +12 package-owned outputs agree. The source-to-output byte difference is signed; +it is not an avoided-transfer, storage-savings, or cost claim because the +source remains and no matched baseline is supplied. + +See the [benchmark methodology](https://github.com/GGULBAE/react-native-image-compression-kit/blob/master/docs/benchmarks/README.md#12-mp-kit-only-economic-resilience) +for the complete timing boundary, artifact verifier, and interpretation limits. + ## Reproduce the evidence ```bash From 3e285ad614f9939704f35c27378b13178c8a1c70 Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 17:14:20 +0900 Subject: [PATCH 02/11] Harden XMP metadata detection --- scripts/economic-resilience-evidence-core.mjs | 19 ++++++++++++++--- test/economicResilienceEvidence.test.mjs | 21 +++++++++++++++++++ 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/scripts/economic-resilience-evidence-core.mjs b/scripts/economic-resilience-evidence-core.mjs index 8b1216b..f1b93bc 100644 --- a/scripts/economic-resilience-evidence-core.mjs +++ b/scripts/economic-resilience-evidence-core.mjs @@ -45,6 +45,16 @@ export const ECONOMIC_RESILIENCE_OPERATION = Object.freeze({ metadata: 'strip', }); +const EXIF_APP1_IDENTIFIER = Buffer.from('Exif\0\0', 'latin1'); +const STANDARD_XMP_APP1_IDENTIFIER = Buffer.from( + 'http://ns.adobe.com/xap/1.0/\0', + 'latin1' +); +const EXTENDED_XMP_APP1_IDENTIFIER = Buffer.from( + 'http://ns.adobe.com/xmp/extension/\0', + 'latin1' +); + const ENVIRONMENT_FIELDS = Object.freeze([ 'platform', 'runtime', @@ -307,9 +317,12 @@ export function inspectJpegStructure(bytes) { const payload = buffer.subarray(payloadStart, payloadEnd); if (marker === 0xe1) { app1Count += 1; - hasExif ||= payload.subarray(0, 6).equals(Buffer.from('Exif\0\0')); - hasXmp ||= payload.toString('latin1').includes('http://ns.adobe.com/xap/1.0/'); - hasXmp ||= payload.toString('latin1').includes('http://ns.adobe.com/xmp/extension/'); + hasExif ||= payload.subarray(0, EXIF_APP1_IDENTIFIER.length) + .equals(EXIF_APP1_IDENTIFIER); + hasXmp ||= payload.subarray(0, STANDARD_XMP_APP1_IDENTIFIER.length) + .equals(STANDARD_XMP_APP1_IDENTIFIER); + hasXmp ||= payload.subarray(0, EXTENDED_XMP_APP1_IDENTIFIER.length) + .equals(EXTENDED_XMP_APP1_IDENTIFIER); } if (marker === 0xed) { app13Count += 1; diff --git a/test/economicResilienceEvidence.test.mjs b/test/economicResilienceEvidence.test.mjs index 561d962..86bd90d 100644 --- a/test/economicResilienceEvidence.test.mjs +++ b/test/economicResilienceEvidence.test.mjs @@ -103,6 +103,27 @@ describe('kit-only 12 MP economic resilience evidence', () => { app13Count: 1, }); + const incidentalXmpText = Buffer.from( + 'prefix-http://ns.adobe.com/xap/1.0/\0', + 'latin1' + ); + const withIncidentalXmpText = Buffer.concat([ + SOURCE.subarray(0, -2), + Buffer.from([ + 0xff, + 0xe1, + ((incidentalXmpText.length + 2) >> 8) & 0xff, + (incidentalXmpText.length + 2) & 0xff, + ]), + incidentalXmpText, + SOURCE.subarray(-2), + ]); + expect(inspectJpegStructure(withIncidentalXmpText)).toMatchObject({ + status: 'passed', + hasXmp: false, + app1Count: 1, + }); + const malformedManifest = structuredClone(FIXTURE_MANIFEST); delete malformedManifest.schemaVersion; delete malformedManifest.provenance.kind; From 393232469b06cae9536717551d2f2e0ed98ada6b Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 17:17:53 +0900 Subject: [PATCH 03/11] Decouple evidence runner from built package --- example/src/App.tsx | 12 +++++- example/src/economicResilienceBenchmark.ts | 46 +++++++++++----------- test/economicResilienceEvidence.test.mjs | 22 +++++++++++ 3 files changed, 55 insertions(+), 25 deletions(-) diff --git a/example/src/App.tsx b/example/src/App.tsx index 47010f4..7df0008 100644 --- a/example/src/App.tsx +++ b/example/src/App.tsx @@ -43,7 +43,10 @@ import { } from './guidedDemo'; import { runNativeBenchmark } from './nativeBenchmark'; import { runNativeComparisonBenchmark } from './nativeComparisonBenchmark'; -import { runEconomicResilienceBenchmark } from './economicResilienceBenchmark'; +import { + createEconomicResilienceDependencies, + runEconomicResilienceBenchmark, +} from './economicResilienceBenchmark'; const EXAMPLE_OUTPUT_FORMATS: OutputFormat[] = ['jpeg', 'png', 'webp']; const RESIZE_MODES: ResizeMode[] = ['contain', 'cover', 'stretch']; @@ -204,7 +207,12 @@ export default function App(): React.JSX.Element { } const economicResilience = await runEconomicResilienceBenchmark( SAMPLE_MODULE, - Platform.OS === 'ios' ? 'ios' : 'android' + Platform.OS === 'ios' ? 'ios' : 'android', + createEconomicResilienceDependencies({ + compress: compressImage, + removeOutput: removeCompressionOutput, + capabilities: getImageCompressionCapabilities, + }) ); for (const message of economicResilience.logs) { await emitIOSSmokeLog(message); diff --git a/example/src/economicResilienceBenchmark.ts b/example/src/economicResilienceBenchmark.ts index 8f95f26..6635a1a 100644 --- a/example/src/economicResilienceBenchmark.ts +++ b/example/src/economicResilienceBenchmark.ts @@ -1,10 +1,7 @@ -import { - compressImage, - getImageCompressionCapabilities, - removeCompressionOutput, - type CompressionOptions, - type CompressionResult, - type ImageCompressionCapabilities, +import type { + CompressionOptions, + CompressionResult, + ImageCompressionCapabilities, } from 'react-native-image-compression-kit'; import type { EvidenceImageInspection, @@ -90,25 +87,15 @@ export type EconomicResiliencePayload = { }; }; -type Dependencies = { - compress: typeof compressImage; - removeOutput: typeof removeCompressionOutput; - capabilities: typeof getImageCompressionCapabilities; +export type EconomicResilienceDependencies = { + compress: (options: CompressionOptions) => Promise; + removeOutput: (uri: string) => Promise; + capabilities: () => Promise; now: () => number; clock: 'performance.now' | 'Date.now'; createCaptureId: () => string; }; -const DEFAULT_CLOCK = selectEconomicResilienceClock(); -const DEFAULT_DEPENDENCIES: Dependencies = { - compress: compressImage, - removeOutput: removeCompressionOutput, - capabilities: getImageCompressionCapabilities, - now: DEFAULT_CLOCK.now, - clock: DEFAULT_CLOCK.clock, - createCaptureId: defaultCaptureId, -}; - export function selectEconomicResilienceClock( runtime: { performance?: { now?: unknown }; @@ -117,7 +104,7 @@ export function selectEconomicResilienceClock( performance?: { now?: unknown }; Date?: { now?: unknown }; } -): Pick { +): Pick { if (typeof runtime.performance?.now === 'function') { const performanceNow = runtime.performance.now as () => number; return { @@ -132,10 +119,23 @@ export function selectEconomicResilienceClock( return { now: () => dateNow.call(runtime.Date), clock: 'Date.now' }; } +export function createEconomicResilienceDependencies( + native: Pick< + EconomicResilienceDependencies, + 'compress' | 'removeOutput' | 'capabilities' + > +): EconomicResilienceDependencies { + return { + ...native, + ...selectEconomicResilienceClock(), + createCaptureId: defaultCaptureId, + }; +} + export async function runEconomicResilienceBenchmark( sampleModule: ExampleImageSourceModule, platform: NativePlatform, - dependencies: Dependencies = DEFAULT_DEPENDENCIES + dependencies: EconomicResilienceDependencies ): Promise<{ payload: EconomicResiliencePayload; logs: string[] }> { const [sourceUri, architecture, capabilities] = await Promise.all([ sampleModule.copyEconomicResilienceJpegToCache(), diff --git a/test/economicResilienceEvidence.test.mjs b/test/economicResilienceEvidence.test.mjs index 86bd90d..f55bfbd 100644 --- a/test/economicResilienceEvidence.test.mjs +++ b/test/economicResilienceEvidence.test.mjs @@ -124,6 +124,28 @@ describe('kit-only 12 MP economic resilience evidence', () => { app1Count: 1, }); + for (const identifier of [ + Buffer.from('http://ns.adobe.com/xap/1.0/\0', 'latin1'), + Buffer.from('http://ns.adobe.com/xmp/extension/\0', 'latin1'), + ]) { + const withExactXmpIdentifier = Buffer.concat([ + SOURCE.subarray(0, -2), + Buffer.from([ + 0xff, + 0xe1, + ((identifier.length + 2) >> 8) & 0xff, + (identifier.length + 2) & 0xff, + ]), + identifier, + SOURCE.subarray(-2), + ]); + expect(inspectJpegStructure(withExactXmpIdentifier)).toMatchObject({ + status: 'passed', + hasXmp: true, + app1Count: 1, + }); + } + const malformedManifest = structuredClone(FIXTURE_MANIFEST); delete malformedManifest.schemaVersion; delete malformedManifest.provenance.kind; From 153184bc23d455d14e6f1f7559cf6b83678bef70 Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 18:18:11 +0900 Subject: [PATCH 04/11] Stabilize native evidence log capture --- .github/workflows/demo-evidence.yml | 6 ++++-- scripts/capture-android-demo.sh | 11 ++++++++++- test/demoCaptureScriptContract.test.ts | 10 +++++----- 3 files changed, 19 insertions(+), 8 deletions(-) diff --git a/.github/workflows/demo-evidence.yml b/.github/workflows/demo-evidence.yml index fa66f75..d16bb21 100644 --- a/.github/workflows/demo-evidence.yml +++ b/.github/workflows/demo-evidence.yml @@ -207,10 +207,12 @@ jobs: xcrun simctl io "$udid" recordVideo --codec=h264 --force /tmp/rnick-demo-raw/recording-raw.mp4 > /tmp/rnick-demo-raw/record-video.log 2>&1 & video_pid=$! sleep 2 - capture_started_at=$(xcrun simctl spawn "$udid" date '+%Y-%m-%d %H:%M:%S' | tr -d '\r') SIMCTL_CHILD_RNICK_DEMO_CAPTURE=1 xcrun simctl launch --terminate-running-process "$udid" com.imagecompressionkit.example --rnick-demo-capture capture_native_log() { - xcrun simctl spawn "$udid" log show --style compact --start "$capture_started_at" --predicate 'eventMessage CONTAINS "RNICK_DEMO_" OR eventMessage CONTAINS "RNICK_GUIDED_DEMO_" OR eventMessage CONTAINS "RNICK_BENCHMARK_" OR eventMessage CONTAINS "RNICK_ECONOMIC_RESILIENCE_"' > /tmp/rnick-demo-raw/native.log + # The simulator is fresh for this job. A 15-minute window exceeds + # every bounded capture poll while avoiding fragile device-local + # date parsing in `log show --start`. + xcrun simctl spawn "$udid" log show --style compact --last 15m --predicate 'eventMessage CONTAINS "RNICK_DEMO_" OR eventMessage CONTAINS "RNICK_GUIDED_DEMO_" OR eventMessage CONTAINS "RNICK_BENCHMARK_" OR eventMessage CONTAINS "RNICK_ECONOMIC_RESILIENCE_"' > /tmp/rnick-demo-raw/native.log } for attempt in $(seq 1 60); do capture_native_log diff --git a/scripts/capture-android-demo.sh b/scripts/capture-android-demo.sh index 2fbd665..eeea787 100644 --- a/scripts/capture-android-demo.sh +++ b/scripts/capture-android-demo.sh @@ -19,7 +19,16 @@ logcat_pid="" stop_logcat_stream() { if [ -n "$logcat_pid" ]; then - kill -INT "$logcat_pid" 2>/dev/null || true + kill -TERM "$logcat_pid" 2>/dev/null || true + for _attempt in $(seq 1 50); do + if ! kill -0 "$logcat_pid" 2>/dev/null; then + break + fi + sleep 0.1 + done + if kill -0 "$logcat_pid" 2>/dev/null; then + kill -KILL "$logcat_pid" 2>/dev/null || true + fi wait "$logcat_pid" 2>/dev/null || true logcat_pid="" fi diff --git a/test/demoCaptureScriptContract.test.ts b/test/demoCaptureScriptContract.test.ts index 02b340a..46515e3 100644 --- a/test/demoCaptureScriptContract.test.ts +++ b/test/demoCaptureScriptContract.test.ts @@ -49,7 +49,9 @@ describe('Android demo screenshot capture', () => { const firstBuilder = source.indexOf('node scripts/normalize-demo-recording.mjs'); expect(source).toContain('logcat_pid=$!'); - expect(source).toContain('kill -INT "$logcat_pid"'); + expect(source).toContain('kill -TERM "$logcat_pid"'); + expect(source).toContain('kill -KILL "$logcat_pid"'); + expect(source).toContain('for _attempt in $(seq 1 50)'); expect(source).toContain('wait "$logcat_pid"'); expect(source).not.toContain('adb logcat -d'); expect(streamStart).toBeGreaterThan(-1); @@ -65,10 +67,8 @@ describe('Android demo screenshot capture', () => { expect(workflow).toContain('test "$(git rev-parse HEAD)" = "$EXPECTED_SOURCE_SHA"'); expect(workflow).toContain('RNICK_ECONOMIC_RESILIENCE_'); expect(workflow).toContain('RNICK_ECONOMIC_RESILIENCE_PASS'); - expect(workflow).toContain( - 'capture_started_at=$(xcrun simctl spawn "$udid" date', - ); - expect(workflow).toContain('--start "$capture_started_at"'); + expect(workflow).toContain('log show --style compact --last 15m'); + expect(workflow).not.toContain('--start "$capture_started_at"'); expect(workflow).not.toContain('log show --style compact --last 3m'); expect(workflow).toContain('for attempt in $(seq 1 300)'); expect(workflow).toContain('create-economic-resilience-environment.mjs'); From 798d43a80cb9d92078217eaf05585381d7529a9f Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 18:35:31 +0900 Subject: [PATCH 05/11] Expose native evidence capture failures --- .github/workflows/demo-evidence.yml | 11 +++++++++++ scripts/capture-android-demo.sh | 11 +++++++++++ test/demoCaptureScriptContract.test.ts | 6 ++++++ 3 files changed, 28 insertions(+) diff --git a/.github/workflows/demo-evidence.yml b/.github/workflows/demo-evidence.yml index d16bb21..03e8fc8 100644 --- a/.github/workflows/demo-evidence.yml +++ b/.github/workflows/demo-evidence.yml @@ -250,6 +250,17 @@ jobs: grep -q 'RNICK_ECONOMIC_RESILIENCE_PASS' /tmp/rnick-demo-raw/native.log; then break fi + if grep -q 'RNICK_DEMO_FAIL' /tmp/rnick-demo-raw/native.log; then + echo 'Native demo reported failure before all evidence markers passed.' >&2 + tail -n 200 /tmp/rnick-demo-raw/native.log >&2 || true + tail -n 200 /tmp/rnick-metro.log >&2 || true + exit 1 + fi + if [ "$attempt" = "300" ]; then + echo 'Timed out waiting for all native evidence markers.' >&2 + tail -n 200 /tmp/rnick-demo-raw/native.log >&2 || true + tail -n 200 /tmp/rnick-metro.log >&2 || true + fi test "$attempt" != "300" sleep 1 done diff --git a/scripts/capture-android-demo.sh b/scripts/capture-android-demo.sh index eeea787..f00d3f0 100644 --- a/scripts/capture-android-demo.sh +++ b/scripts/capture-android-demo.sh @@ -151,6 +151,17 @@ for attempt in $(seq 1 300); do grep -q 'RNICK_ECONOMIC_RESILIENCE_PASS' /tmp/rnick-demo-raw/native.log; then break fi + if grep -q 'RNICK_DEMO_FAIL' /tmp/rnick-demo-raw/native.log; then + echo 'Native demo reported failure before all evidence markers passed.' >&2 + tail -n 200 /tmp/rnick-demo-raw/native.log >&2 || true + tail -n 200 /tmp/rnick-metro.log >&2 || true + exit 1 + fi + if [ "$attempt" = "300" ]; then + echo 'Timed out waiting for all native evidence markers.' >&2 + tail -n 200 /tmp/rnick-demo-raw/native.log >&2 || true + tail -n 200 /tmp/rnick-metro.log >&2 || true + fi test "$attempt" != "300" sleep 1 done diff --git a/test/demoCaptureScriptContract.test.ts b/test/demoCaptureScriptContract.test.ts index 46515e3..abe56f2 100644 --- a/test/demoCaptureScriptContract.test.ts +++ b/test/demoCaptureScriptContract.test.ts @@ -54,6 +54,9 @@ describe('Android demo screenshot capture', () => { expect(source).toContain('for _attempt in $(seq 1 50)'); expect(source).toContain('wait "$logcat_pid"'); expect(source).not.toContain('adb logcat -d'); + expect(source).toContain("grep -q 'RNICK_DEMO_FAIL'"); + expect(source).toContain('tail -n 200 /tmp/rnick-demo-raw/native.log'); + expect(source).toContain('tail -n 200 /tmp/rnick-metro.log'); expect(streamStart).toBeGreaterThan(-1); expect(streamStart).toBeLessThan(captureLaunch); expect(completionGate).toBeGreaterThan(captureLaunch); @@ -71,6 +74,9 @@ describe('Android demo screenshot capture', () => { expect(workflow).not.toContain('--start "$capture_started_at"'); expect(workflow).not.toContain('log show --style compact --last 3m'); expect(workflow).toContain('for attempt in $(seq 1 300)'); + expect(workflow).toContain("grep -q 'RNICK_DEMO_FAIL'"); + expect(workflow).toContain('tail -n 200 /tmp/rnick-demo-raw/native.log'); + expect(workflow).toContain('tail -n 200 /tmp/rnick-metro.log'); expect(workflow).toContain('create-economic-resilience-environment.mjs'); expect(workflow).toContain('create-economic-resilience-evidence.mjs'); expect(workflow).toContain('verify-economic-resilience-evidence.mjs'); From b1143201f5c80741cce8485219dcd09377629153 Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 18:46:31 +0900 Subject: [PATCH 06/11] Accept Android cache path aliases safely --- .../imagecompressionkit/example/ExampleImageSourceModule.kt | 6 +++++- test/economicResilienceNativeSourceContract.test.mjs | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/example/android/app/src/main/java/com/imagecompressionkit/example/ExampleImageSourceModule.kt b/example/android/app/src/main/java/com/imagecompressionkit/example/ExampleImageSourceModule.kt index 4078779..f1080a9 100644 --- a/example/android/app/src/main/java/com/imagecompressionkit/example/ExampleImageSourceModule.kt +++ b/example/android/app/src/main/java/com/imagecompressionkit/example/ExampleImageSourceModule.kt @@ -177,7 +177,11 @@ class ExampleImageSourceModule( val requestedFile = File(requireNotNull(uri.path)).absoluteFile val file = requestedFile.canonicalFile val cachePrefix = cacheRoot.path + File.separator - if (requestedFile.path != file.path || !file.path.startsWith(cachePrefix)) { + val requestedStatus = lstatOrNull(requestedFile) + if ( + (requestedStatus != null && !OsConstants.S_ISREG(requestedStatus.st_mode)) || + !file.path.startsWith(cachePrefix) + ) { throw IllegalArgumentException("Evidence image URI must stay inside the app cache.") } return file diff --git a/test/economicResilienceNativeSourceContract.test.mjs b/test/economicResilienceNativeSourceContract.test.mjs index a2b3e74..dd8a591 100644 --- a/test/economicResilienceNativeSourceContract.test.mjs +++ b/test/economicResilienceNativeSourceContract.test.mjs @@ -24,7 +24,10 @@ describe('12 MP example native fixture bridge contract', () => { }); it('rejects outside-cache and linked inputs before inspection or staging', () => { - expect(android).toContain('requestedFile.path != file.path'); + expect(android).toContain('val requestedStatus = lstatOrNull(requestedFile)'); + expect(android).toContain( + 'requestedStatus != null && !OsConstants.S_ISREG(requestedStatus.st_mode)' + ); expect(android).toContain('!file.path.startsWith(cachePrefix)'); expect(android).toContain('!uri.authority.isNullOrEmpty()'); expect(android).toContain('uri.query != null'); From 116601ccedda376b697e3f18dccb542ed8edebd7 Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 18:58:30 +0900 Subject: [PATCH 07/11] Ignore JSON object order in evidence checks --- scripts/economic-resilience-evidence-core.mjs | 3 ++- test/economicResilienceEvidence.test.mjs | 9 +++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/scripts/economic-resilience-evidence-core.mjs b/scripts/economic-resilience-evidence-core.mjs index f1b93bc..7cd7157 100644 --- a/scripts/economic-resilience-evidence-core.mjs +++ b/scripts/economic-resilience-evidence-core.mjs @@ -1,6 +1,7 @@ import { createHash } from 'node:crypto'; import { existsSync, lstatSync, readdirSync, readFileSync } from 'node:fs'; import path from 'node:path'; +import { isDeepStrictEqual } from 'node:util'; import { parseChunkedNativePayload, summarizeBenchmarkSamples } from './benchmark-core.mjs'; import { inspectDemoVisualAgreement } from './demo-visual-agreement-core.mjs'; @@ -1121,7 +1122,7 @@ function sha256(value) { } function deepEqual(left, right) { - return JSON.stringify(left) === JSON.stringify(right); + return isDeepStrictEqual(left, right); } function positiveInteger(value) { diff --git a/test/economicResilienceEvidence.test.mjs b/test/economicResilienceEvidence.test.mjs index f55bfbd..c4ddc40 100644 --- a/test/economicResilienceEvidence.test.mjs +++ b/test/economicResilienceEvidence.test.mjs @@ -65,6 +65,15 @@ describe('kit-only 12 MP economic resilience evidence', () => { }); }); + it('treats native inspection object key order as non-semantic', () => { + const payload = validPayload(); + payload.representative.inspection = Object.fromEntries( + Object.entries(payload.representative.inspection).reverse() + ); + + expect(inspectNativeEconomicResiliencePayload(payload)).toEqual([]); + }); + it('fails closed across malformed JPEG markers, scans, segments, and metadata', () => { const malformed = [ Buffer.alloc(0), From 5666a6beb0cdf499b442a942535e5fe0d03c9fc7 Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 19:23:42 +0900 Subject: [PATCH 08/11] Make visual evidence replay portable --- .github/workflows/demo-evidence.yml | 1 + CHANGELOG.md | 3 +- README.md | 7 +- docs/benchmarks/README.md | 13 +- docs/verification-architecture.md | 2 +- scripts/capture-android-demo.sh | 1 + scripts/demo-visual-agreement-core.mjs | 249 +++++++++++++++++- scripts/economic-resilience-evidence-core.mjs | 19 +- scripts/measure-demo-visual-agreement.mjs | 76 +++++- .../verify-economic-resilience-evidence.mjs | 59 ++++- test/demoVisualAgreement.test.mjs | 84 +++++- test/economicResilienceEvidence.test.mjs | 43 ++- 12 files changed, 531 insertions(+), 26 deletions(-) diff --git a/.github/workflows/demo-evidence.yml b/.github/workflows/demo-evidence.yml index 03e8fc8..c4ccb49 100644 --- a/.github/workflows/demo-evidence.yml +++ b/.github/workflows/demo-evidence.yml @@ -344,6 +344,7 @@ jobs: --resize-mode contain \ --max-width 1600 \ --max-height 1200 \ + --comparison-profile jpeg-full-range-to-limited-yuv444p-v1 \ --report /tmp/rnick-economic-raw/visual-agreement.json os_build=$(xcrun simctl spawn "$udid" sw_vers -buildVersion | tr -d '\r') abi=$(xcrun simctl spawn "$udid" uname -m | tr -d '\r') diff --git a/CHANGELOG.md b/CHANGELOG.md index 577eab2..f43a28d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,7 +14,8 @@ and patch releases remain backward compatible within the current minor line. - An iOS SDK privacy manifest declaring no tracking or collected data and the C617.1 reason used to inspect package-owned cache output metadata. - A reproducible kit-only 12 MP JPEG evidence harness with exact environment, - byte, geometry, visual-agreement, latency, and output-cleanup verification. + byte, geometry, explicit color-range visual agreement, latency, portable + offline replay, and output-cleanup verification. ### Changed diff --git a/README.md b/README.md index 4065d23..f3bf882 100644 --- a/README.md +++ b/README.md @@ -422,8 +422,11 @@ versioned baseline and exact-plan comparison evidence with raw samples, fixture and plan digests, balanced execution positions, and median/p95 summaries. They also create a kit-only 12 MP JPEG source-tree evidence bundle that binds source and output bytes, environment, capabilities, latency samples, visual agreement, -and package-output cleanup. The bundle is an environment-specific observation, -not a speed ranking, cost-savings claim, or real-device benchmark. +and package-output cleanup. Its visual replay pins the JPEG color-range +conversion and allows only a 0.001 SSIM implementation tolerance after both +measurements independently pass the quality and orientation gates. The bundle +is an environment-specific observation, not a speed ranking, cost-savings +claim, or real-device benchmark. Comparison dependencies remain inside the private example application and outside the published package. See the [benchmark methodology](docs/benchmarks/README.md) for its timing boundary, diff --git a/docs/benchmarks/README.md b/docs/benchmarks/README.md index 90c2d1a..50f441b 100644 --- a/docs/benchmarks/README.md +++ b/docs/benchmarks/README.md @@ -51,7 +51,10 @@ example-owned staging file before all 12 package-owned outputs are removed. Acceptance requires a decodable 1,600 × 1,200 JPEG at or below the byte target, exact native/file byte and SHA-256 agreement, no APP1/APP13/comment metadata, upright SSIM of at least 0.90, an upright-over-vertical-flip margin of at least -0.02, the unchanged source, and zero package-output residuals. +0.02, the unchanged source, and zero package-output residuals. The visual +profile requires full-range JPEG inputs and explicitly converts both sides to +limited-range `yuv444p` with Lanczos scaling before comparison, avoiding +version-dependent implicit YUVJ range negotiation. The artifact records the exact checked-out source commit, package source-tree version, workflow run and attempt, runtime, OS build, simulator/emulator, @@ -72,8 +75,12 @@ pnpm verify:economic-resilience-evidence -- \ ``` The replay reports both captured and local ffmpeg versions and gates on the -recalculated decode, geometry, hashes, SSIM, and flip-control report. Identical -version strings are not required when the rounded measurements reproduce. +recalculated decode, geometry, hashes, SSIM, and flip-control report. Both the +captured and replayed reports must independently pass the 0.90 quality and 0.02 +orientation gates; all profile, geometry, check, and digest fields must match. +Only the two six-decimal SSIM values may differ, by at most 0.001. That narrow +tolerance absorbs decoder/scaler implementation drift for this exact bound +fixture; it is not extra quality slack or a claim about other images. ## Capture and verify diff --git a/docs/verification-architecture.md b/docs/verification-architecture.md index 85eac22..74c8ed4 100644 --- a/docs/verification-architecture.md +++ b/docs/verification-architecture.md @@ -16,7 +16,7 @@ from the npm package. | Public documentation site structure, claims, local links, and npm exclusion | `scripts/verify-site.mjs` | `pnpm site:check` and `pnpm site:build` | | Native demo result metrics, source/output/screenshot/recording bytes, auto-oriented SSIM and vertical-flip control, ordered walkthrough timing, parsed video-track duration, timestamp normalization, digests, platform provenance, and exact source identity | `test/demoEvidence.test.mjs`, `test/demoVisualAgreement.test.mjs`, `test/guidedDemoCore.test.mjs`, `test/demoCaptureScriptContract.test.ts`, `scripts/demo-evidence-core.mjs`, `scripts/demo-visual-agreement-core.mjs`, and `scripts/guided-demo-core.mjs` | Native Demo Evidence workflow and `pnpm verify:demo-evidence` | | Native baseline and exact-plan implementation comparison metrics, balanced sample positions, comparator identity, fixture/plan bytes, digests, and platform provenance | `test/benchmark.test.mjs`, `test/benchmarkComparison.test.mjs`, `scripts/benchmark-core.mjs`, and `scripts/benchmark-comparison-core.mjs` | Native Demo Evidence workflow, `pnpm verify:benchmark-evidence`, and `pnpm verify:benchmark-comparison-evidence` | -| Kit-only 12 MP source/output bytes, exact environment and capabilities, call-only timing, decode/geometry, a `strip` request with no APP1/APP13/JPEG comments, SSIM/flip control, signed byte difference, and zero package-output residuals | `test/economicResilienceBenchmark.test.mjs`, `test/economicResilienceEvidence.test.mjs`, `test/economicResilienceNativeSourceContract.test.mjs`, and `scripts/economic-resilience-evidence-core.mjs` | Native Demo Evidence workflow and `pnpm verify:economic-resilience-evidence` | +| Kit-only 12 MP source/output bytes, exact environment and capabilities, call-only timing, decode/geometry, a `strip` request with no APP1/APP13/JPEG comments, explicit full-to-limited-range SSIM/flip control with a 0.001 replay tolerance, signed byte difference, and zero package-output residuals | `test/economicResilienceBenchmark.test.mjs`, `test/economicResilienceEvidence.test.mjs`, `test/economicResilienceNativeSourceContract.test.mjs`, and `scripts/economic-resilience-evidence-core.mjs` | Native Demo Evidence workflow and `pnpm verify:economic-resilience-evidence` | | Packed-consumer compatibility lane definitions | `test/compatibilityMatrix.test.mjs` and `scripts/compatibility-matrix-core.mjs` | `pnpm fixtures:compatibility:check` and the Compatibility workflow | | Built public-site performance, accessibility, and SEO | `scripts/verify-site-quality.mjs` | `pnpm site:build && pnpm site:quality` | | Repository metadata, security features, Actions policy, rulesets, environments, and Pages | `test/repositorySettings.test.mjs`, `docs/repository-settings.json`, and `scripts/repository-settings-core.mjs` | `pnpm fixtures:repository-settings:check` and `pnpm audit:repository-settings` | diff --git a/scripts/capture-android-demo.sh b/scripts/capture-android-demo.sh index f00d3f0..0669a1b 100644 --- a/scripts/capture-android-demo.sh +++ b/scripts/capture-android-demo.sh @@ -270,6 +270,7 @@ node scripts/measure-demo-visual-agreement.mjs \ --resize-mode contain \ --max-width 1600 \ --max-height 1200 \ + --comparison-profile jpeg-full-range-to-limited-yuv444p-v1 \ --report /tmp/rnick-economic-raw/visual-agreement.json react_native_version=$(node -e "process.stdout.write(require('./example/package.json').dependencies['react-native'])") os_build=$(adb shell getprop ro.build.id | tr -d '\r') diff --git a/scripts/demo-visual-agreement-core.mjs b/scripts/demo-visual-agreement-core.mjs index 879b0b3..b9cd244 100644 --- a/scripts/demo-visual-agreement-core.mjs +++ b/scripts/demo-visual-agreement-core.mjs @@ -1,13 +1,62 @@ import { createHash } from 'node:crypto'; +import { isDeepStrictEqual } from 'node:util'; export const DEMO_VISUAL_AGREEMENT_ALGORITHM = 'ffmpeg-auto-oriented-contain-ssim-v2'; +export const PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT = Object.freeze({ + profile: 'jpeg-full-range-to-limited-yuv444p-v1', + inputColorRange: 'pc', + comparisonColorRange: 'tv', + pixelFormat: 'yuv444p', + scaler: 'lanczos', + scoreTolerance: 0.001, +}); +export const PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE = + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.profile; +export const PORTABLE_DEMO_VISUAL_AGREEMENT_ALGORITHM = + 'ffmpeg-auto-oriented-contain-limited-range-ssim-v3'; +export const PORTABLE_DEMO_VISUAL_AGREEMENT_REPLAY_TOLERANCE = + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.scoreTolerance; export const DEMO_VISUAL_AGREEMENT_THRESHOLD = 0.9; export const DEMO_VISUAL_AGREEMENT_MARGIN = 0.02; const DEMO_VISUAL_OUTCOMES = new Set(['passed', 'failed']); const LEGACY_DEMO_VISUAL_AGREEMENT_ALGORITHM = 'ffmpeg-auto-oriented-ssim-v1'; +const PORTABLE_DEMO_VISUAL_AGREEMENT_FIELDS = [ + 'schemaVersion', + 'status', + 'algorithm', + 'comparisonProfile', + 'inputColorRange', + 'comparisonColorRange', + 'comparisonPixelFormat', + 'comparisonScaler', + 'scoreTolerance', + 'sourceColorRange', + 'outputColorRange', + 'resizeMode', + 'maxWidth', + 'maxHeight', + 'sourceWidth', + 'sourceHeight', + 'expectedWidth', + 'expectedHeight', + 'width', + 'height', + 'uprightSimilarity', + 'verticalFlipSimilarity', + 'minimumSimilarity', + 'minimumOrientationMargin', + 'checks', + 'sourceSha256', + 'outputSha256', +].sort(); +const DEMO_VISUAL_AGREEMENT_CHECK_FIELDS = [ + 'geometry', + 'minimumSimilarity', + 'orientationMargin', +].sort(); export function calculateContainDimensions({ sourceWidth, @@ -46,7 +95,18 @@ export function createDemoVisualAgreementReport({ maxHeight, uprightSimilarity, verticalFlipSimilarity, + comparisonProfile, + sourceColorRange, + outputColorRange, }) { + if ( + comparisonProfile !== undefined && + comparisonProfile !== PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE + ) { + throw new Error('comparisonProfile is unsupported'); + } + const portable = + comparisonProfile === PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE; const expected = calculateContainDimensions({ sourceWidth, sourceHeight, @@ -64,9 +124,28 @@ export function createDemoVisualAgreementReport({ verticalFlipSimilarity: roundedVerticalFlipSimilarity, }); return { - schemaVersion: 2, + schemaVersion: portable ? 3 : 2, status: deriveOutcome(checks), - algorithm: DEMO_VISUAL_AGREEMENT_ALGORITHM, + algorithm: portable + ? PORTABLE_DEMO_VISUAL_AGREEMENT_ALGORITHM + : DEMO_VISUAL_AGREEMENT_ALGORITHM, + ...(portable + ? { + comparisonProfile, + inputColorRange: + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.inputColorRange, + comparisonColorRange: + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.comparisonColorRange, + comparisonPixelFormat: + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.pixelFormat, + comparisonScaler: + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.scaler, + scoreTolerance: + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.scoreTolerance, + sourceColorRange, + outputColorRange, + } + : {}), resizeMode, maxWidth, maxHeight, @@ -94,13 +173,66 @@ export function inspectDemoVisualAgreement( return inspectLegacyDemoVisualAgreement(report, { sourceBytes, outputBytes }); } const errors = []; - if (report?.schemaVersion !== 2) errors.push('schemaVersion must be 2'); + if ( + report?.schemaVersion === 3 && + !exactKeys(report, PORTABLE_DEMO_VISUAL_AGREEMENT_FIELDS) + ) { + errors.push('portable visual agreement fields drifted'); + } + if ( + report?.schemaVersion === 3 && + !exactKeys(report?.checks, DEMO_VISUAL_AGREEMENT_CHECK_FIELDS) + ) { + errors.push('portable visual agreement check fields drifted'); + } + const modernContract = report?.schemaVersion === 2 + ? { + algorithm: DEMO_VISUAL_AGREEMENT_ALGORITHM, + comparisonProfile: undefined, + } + : report?.schemaVersion === 3 + ? { + algorithm: PORTABLE_DEMO_VISUAL_AGREEMENT_ALGORITHM, + comparisonProfile: PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, + inputColorRange: + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.inputColorRange, + comparisonColorRange: + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.comparisonColorRange, + comparisonPixelFormat: + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.pixelFormat, + comparisonScaler: + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.scaler, + scoreTolerance: + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.scoreTolerance, + } + : null; + if (modernContract === null) errors.push('schemaVersion must be 2 or 3'); if (!DEMO_VISUAL_OUTCOMES.has(report?.status)) { errors.push('status must be passed or failed'); } - if (report?.algorithm !== DEMO_VISUAL_AGREEMENT_ALGORITHM) { + if (report?.algorithm !== modernContract?.algorithm) { errors.push('algorithm is unsupported'); } + if (report?.comparisonProfile !== modernContract?.comparisonProfile) { + errors.push('comparison profile does not match the visual schema'); + } + for (const field of [ + 'inputColorRange', + 'comparisonColorRange', + 'comparisonPixelFormat', + 'comparisonScaler', + 'scoreTolerance', + ]) { + if (report?.[field] !== modernContract?.[field]) { + errors.push(`${field} does not match the visual schema`); + } + } + if ( + report?.schemaVersion === 3 && + (report?.sourceColorRange !== 'pc' || report?.outputColorRange !== 'pc') + ) { + errors.push('portable visual inputs must be full-range JPEG frames'); + } if (report?.resizeMode !== 'contain') { errors.push('resizeMode must be contain'); } @@ -181,6 +313,99 @@ export function inspectDemoVisualAgreement( }; } +export function comparePortableDemoVisualAgreement( + captured, + replayed +) { + const exactFields = [ + 'schemaVersion', + 'status', + 'algorithm', + 'comparisonProfile', + 'inputColorRange', + 'comparisonColorRange', + 'comparisonPixelFormat', + 'comparisonScaler', + 'scoreTolerance', + 'sourceColorRange', + 'outputColorRange', + 'resizeMode', + 'maxWidth', + 'maxHeight', + 'sourceWidth', + 'sourceHeight', + 'expectedWidth', + 'expectedHeight', + 'width', + 'height', + 'minimumSimilarity', + 'minimumOrientationMargin', + 'checks', + 'sourceSha256', + 'outputSha256', + ]; + const stableCaptured = Object.fromEntries( + exactFields.map((field) => [field, captured?.[field]]) + ); + const stableReplayed = Object.fromEntries( + exactFields.map((field) => [field, replayed?.[field]]) + ); + const uprightDelta = absoluteDelta( + captured?.uprightSimilarity, + replayed?.uprightSimilarity + ); + const verticalFlipDelta = absoluteDelta( + captured?.verticalFlipSimilarity, + replayed?.verticalFlipSimilarity + ); + const outcomesPassed = [captured, replayed].every( + (report) => + report?.status === 'passed' && + report?.checks?.geometry === true && + report?.checks?.minimumSimilarity === true && + report?.checks?.orientationMargin === true + ); + const measurementsMatch = + uprightDelta !== null && + verticalFlipDelta !== null && + uprightDelta <= PORTABLE_DEMO_VISUAL_AGREEMENT_REPLAY_TOLERANCE && + verticalFlipDelta <= PORTABLE_DEMO_VISUAL_AGREEMENT_REPLAY_TOLERANCE; + const stableFieldsMatch = isDeepStrictEqual(stableCaptured, stableReplayed); + const portableSchema = + captured?.schemaVersion === 3 && + replayed?.schemaVersion === 3 && + captured?.comparisonProfile === PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE && + replayed?.comparisonProfile === PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE; + const exactShapes = + exactKeys(captured, PORTABLE_DEMO_VISUAL_AGREEMENT_FIELDS) && + exactKeys(replayed, PORTABLE_DEMO_VISUAL_AGREEMENT_FIELDS) && + exactKeys(captured?.checks, DEMO_VISUAL_AGREEMENT_CHECK_FIELDS) && + exactKeys(replayed?.checks, DEMO_VISUAL_AGREEMENT_CHECK_FIELDS); + const status = + portableSchema && + exactShapes && + outcomesPassed && + stableFieldsMatch && + measurementsMatch + ? 'passed' + : 'failed'; + return { + status, + mode: 'portable-tolerance', + measurementMatch: measurementsMatch, + outcomesPassed, + exactShapes, + stableFieldsMatch, + tolerance: PORTABLE_DEMO_VISUAL_AGREEMENT_REPLAY_TOLERANCE, + uprightSimilarityDelta: uprightDelta, + verticalFlipSimilarityDelta: verticalFlipDelta, + error: + status === 'passed' + ? null + : 'portable visual replay fields or measurements differ beyond the allowed contract', + }; +} + export function parseFfmpegSsim(stderr) { const matches = [...String(stderr).matchAll(/\bAll:([0-9]+(?:\.[0-9]+)?)/gu)]; if (matches.length === 0) { @@ -300,3 +525,19 @@ function sha256(bytes) { function roundSix(value) { return Math.round(value * 1_000_000) / 1_000_000; } + +function absoluteDelta(left, right) { + if (!unitInterval(left) || !unitInterval(right)) return null; + const leftMicrounits = Math.round(left * 1_000_000); + const rightMicrounits = Math.round(right * 1_000_000); + return Math.abs(leftMicrounits - rightMicrounits) / 1_000_000; +} + +function exactKeys(value, expected) { + return ( + value !== null && + typeof value === 'object' && + !Array.isArray(value) && + isDeepStrictEqual(Object.keys(value).sort(), expected) + ); +} diff --git a/scripts/economic-resilience-evidence-core.mjs b/scripts/economic-resilience-evidence-core.mjs index 7cd7157..5c16c12 100644 --- a/scripts/economic-resilience-evidence-core.mjs +++ b/scripts/economic-resilience-evidence-core.mjs @@ -3,7 +3,10 @@ import { existsSync, lstatSync, readdirSync, readFileSync } from 'node:fs'; import path from 'node:path'; import { isDeepStrictEqual } from 'node:util'; import { parseChunkedNativePayload, summarizeBenchmarkSamples } from './benchmark-core.mjs'; -import { inspectDemoVisualAgreement } from './demo-visual-agreement-core.mjs'; +import { + inspectDemoVisualAgreement, + PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, +} from './demo-visual-agreement-core.mjs'; export const ECONOMIC_RESILIENCE_SCHEMA_VERSION = 1; export const ECONOMIC_RESILIENCE_SCENARIO_ID = 'kit-only-12mp-jpeg-v1'; @@ -578,6 +581,13 @@ export function buildEconomicResilienceEvidence({ outputBytes, resizeOptions: ECONOMIC_RESILIENCE_OPERATION.resize, }); + if ( + visualAgreement?.schemaVersion !== 3 || + visualAgreement?.comparisonProfile !== + PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE + ) { + errors.push('economic evidence requires the portable visual agreement profile'); + } if (visualReport.status !== 'passed' || visualReport.agreementStatus !== 'passed') { errors.push(`visual agreement failed: ${visualReport.error ?? visualAgreement?.status}`); } @@ -808,6 +818,13 @@ export function inspectEconomicResilienceEvidence(root, evidence) { if (report.status !== 'passed' || report.agreementStatus !== 'passed') { errors.push(`visual agreement asset is invalid: ${report.error}`); } + if ( + visualAgreement?.schemaVersion !== 3 || + visualAgreement?.comparisonProfile !== + PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE + ) { + errors.push('economic evidence requires the portable visual agreement profile'); + } if (!deepEqual(evidence?.visualAgreement, visualAgreement)) { errors.push('embedded visual agreement does not match its asset'); } diff --git a/scripts/measure-demo-visual-agreement.mjs b/scripts/measure-demo-visual-agreement.mjs index 80be8a4..bfb4b84 100644 --- a/scripts/measure-demo-visual-agreement.mjs +++ b/scripts/measure-demo-visual-agreement.mjs @@ -8,6 +8,8 @@ import { createDemoVisualAgreementReport, parseFfmpegFrameDimensions, parseFfmpegSsim, + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT, + PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, } from './demo-visual-agreement-core.mjs'; const options = parseArgs(process.argv.slice(2)); @@ -24,12 +26,27 @@ for (const field of [ if (options.resizeMode !== 'contain') { throw new Error('--resize-mode must be contain'); } +if ( + options.comparisonProfile !== undefined && + options.comparisonProfile !== PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE +) { + throw new Error('--comparison-profile is unsupported'); +} const maxWidth = positiveInteger(options.maxWidth, '--max-width'); const maxHeight = positiveInteger(options.maxHeight, '--max-height'); const source = path.resolve(options.source); const output = path.resolve(options.output); const sourceDimensions = inspectAutoOrientedDimensions(source); const outputDimensions = inspectDimensions(output); +const portable = + options.comparisonProfile === PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE; +const sourceColorRange = portable ? inspectColorRange(source) : undefined; +const outputColorRange = portable ? inspectColorRange(output) : undefined; +if (portable && (sourceColorRange !== 'pc' || outputColorRange !== 'pc')) { + throw new Error( + '--comparison-profile requires full-range source and output JPEG frames' + ); +} const expectedDimensions = calculateContainDimensions({ sourceWidth: sourceDimensions.width, sourceHeight: sourceDimensions.height, @@ -40,13 +57,15 @@ const uprightSimilarity = measureSimilarity( source, output, expectedDimensions, - false + false, + options.comparisonProfile ); const verticalFlipSimilarity = measureSimilarity( source, output, expectedDimensions, - true + true, + options.comparisonProfile ); const report = createDemoVisualAgreementReport({ sourceBytes: readFileSync(source), @@ -60,6 +79,9 @@ const report = createDemoVisualAgreementReport({ maxHeight, uprightSimilarity, verticalFlipSimilarity, + comparisonProfile: options.comparisonProfile, + sourceColorRange, + outputColorRange, }); writeFileSync(path.resolve(options.report), `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`${JSON.stringify(report)}\n`); @@ -93,11 +115,47 @@ function inspectDimensions(file) { return { width: stream.width, height: stream.height }; } -function measureSimilarity(source, output, { width, height }, flipVertically) { +function inspectColorRange(file) { + const result = mustRun('ffprobe', [ + '-v', 'error', + '-select_streams', 'v:0', + '-show_entries', 'stream=color_range', + '-of', 'json', + file, + ]); + const colorRange = JSON.parse(result.stdout).streams?.[0]?.color_range; + if (typeof colorRange !== 'string' || colorRange.length === 0) { + throw new Error('ffprobe did not return an input color range'); + } + return colorRange; +} + +function measureSimilarity( + source, + output, + { width, height }, + flipVertically, + comparisonProfile +) { + const rangeContract = + comparisonProfile === PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE + ? `:in_range=${PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.inputColorRange}` + + `:out_range=${PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.comparisonColorRange}` + : ''; + const scaler = portableValue( + comparisonProfile, + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.scaler, + 'lanczos' + ); + const pixelFormat = portableValue( + comparisonProfile, + PORTABLE_DEMO_VISUAL_AGREEMENT_CONTRACT.pixelFormat, + 'yuv444p' + ); const referenceFilters = [ - `scale=${width}:${height}:flags=lanczos`, + `scale=${width}:${height}:flags=${scaler}${rangeContract}`, ...(flipVertically ? ['vflip'] : []), - 'format=yuv444p', + `format=${pixelFormat}`, ].join(','); const result = mustRun('ffmpeg', [ '-hide_banner', @@ -106,7 +164,7 @@ function measureSimilarity(source, output, { width, height }, flipVertically) { '-i', output, '-filter_complex', `[0:v]${referenceFilters}[reference];` + - `[1:v]scale=${width}:${height}:flags=lanczos,format=yuv444p[candidate];` + + `[1:v]scale=${width}:${height}:flags=${scaler}${rangeContract},format=${pixelFormat}[candidate];` + '[reference][candidate]ssim', '-frames:v', '1', '-f', 'null', @@ -115,6 +173,12 @@ function measureSimilarity(source, output, { width, height }, flipVertically) { return parseFfmpegSsim(result.stderr); } +function portableValue(profile, portable, legacy) { + return profile === PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE + ? portable + : legacy; +} + function mustRun(command, args) { const result = spawnSync(command, args, { encoding: 'utf8', diff --git a/scripts/verify-economic-resilience-evidence.mjs b/scripts/verify-economic-resilience-evidence.mjs index b17cd3f..0b82744 100644 --- a/scripts/verify-economic-resilience-evidence.mjs +++ b/scripts/verify-economic-resilience-evidence.mjs @@ -21,6 +21,10 @@ import { ECONOMIC_RESILIENCE_ASSET_FILES, inspectEconomicResilienceEvidence, } from './economic-resilience-evidence-core.mjs'; +import { + comparePortableDemoVisualAgreement, + PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, +} from './demo-visual-agreement-core.mjs'; const SCRIPT_DIRECTORY = path.dirname(fileURLToPath(import.meta.url)); @@ -46,6 +50,13 @@ let report = { capturedFfprobeVersion: evidence?.environment?.toolchain?.ffprobe ?? null, ffprobeVersionsMatch: null, measurementMatch: null, + measurementMode: null, + measurementTolerance: null, + outcomesPassed: null, + exactShapes: null, + stableFieldsMatch: null, + uprightSimilarityDelta: null, + verticalFlipSimilarityDelta: null, }, }; if (structuralReport.status === 'passed') { @@ -73,6 +84,13 @@ if (structuralReport.status === 'passed') { ? null : error.localFfprobeVersion === evidence?.environment?.toolchain?.ffprobe, measurementMatch: false, + measurementMode: error.measurementMode ?? null, + measurementTolerance: error.measurementTolerance ?? null, + outcomesPassed: error.outcomesPassed ?? null, + exactShapes: error.exactShapes ?? null, + stableFieldsMatch: error.stableFieldsMatch ?? null, + uprightSimilarityDelta: error.uprightSimilarityDelta ?? null, + verticalFlipSimilarityDelta: error.verticalFlipSimilarityDelta ?? null, }, error: `visual replay failed: ${error.message}`, }; @@ -115,6 +133,8 @@ function replayVisualAgreement(root, evidence) { '1600', '--max-height', '1200', + '--comparison-profile', + PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, '--report', replay, ], @@ -122,24 +142,51 @@ function replayVisualAgreement(root, evidence) { ); if (result.error) throw result.error; if (result.status !== 0 || !existsSync(replay)) { - throw new Error(result.stderr.trim() || result.stdout.trim() || 'measurement failed'); + const error = new Error( + result.stderr.trim() || result.stdout.trim() || 'measurement failed' + ); + error.localFfmpegVersion = versionLine; + error.localFfprobeVersion = probeVersionLine; + throw error; } const measured = JSON.parse(readFileSync(replay, 'utf8')); - if (JSON.stringify(measured) !== JSON.stringify(evidence.visualAgreement)) { - const error = new Error('replayed SSIM, flip control, geometry, or hashes differ'); + const ffmpegVersionsMatch = + versionLine === evidence.environment.toolchain.ffmpeg; + const ffprobeVersionsMatch = + probeVersionLine === evidence.environment.toolchain.ffprobe; + const comparison = comparePortableDemoVisualAgreement( + evidence.visualAgreement, + measured + ); + if (comparison.status !== 'passed') { + const error = new Error(comparison.error); error.localFfmpegVersion = versionLine; error.localFfprobeVersion = probeVersionLine; + error.measurementMode = comparison.mode; + error.measurementTolerance = comparison.tolerance; + error.outcomesPassed = comparison.outcomesPassed; + error.exactShapes = comparison.exactShapes; + error.stableFieldsMatch = comparison.stableFieldsMatch; + error.uprightSimilarityDelta = comparison.uprightSimilarityDelta; + error.verticalFlipSimilarityDelta = comparison.verticalFlipSimilarityDelta; throw error; } return { status: 'passed', localFfmpegVersion: versionLine, capturedFfmpegVersion: evidence.environment.toolchain.ffmpeg, - ffmpegVersionsMatch: versionLine === evidence.environment.toolchain.ffmpeg, + ffmpegVersionsMatch, localFfprobeVersion: probeVersionLine, capturedFfprobeVersion: evidence.environment.toolchain.ffprobe, - ffprobeVersionsMatch: probeVersionLine === evidence.environment.toolchain.ffprobe, - measurementMatch: true, + ffprobeVersionsMatch, + measurementMatch: comparison.measurementMatch, + measurementMode: comparison.mode, + measurementTolerance: comparison.tolerance, + outcomesPassed: comparison.outcomesPassed, + exactShapes: comparison.exactShapes, + stableFieldsMatch: comparison.stableFieldsMatch, + uprightSimilarityDelta: comparison.uprightSimilarityDelta, + verticalFlipSimilarityDelta: comparison.verticalFlipSimilarityDelta, }; } finally { rmSync(temporary, { recursive: true, force: true }); diff --git a/test/demoVisualAgreement.test.mjs b/test/demoVisualAgreement.test.mjs index 82bff4a..5958cdc 100644 --- a/test/demoVisualAgreement.test.mjs +++ b/test/demoVisualAgreement.test.mjs @@ -1,10 +1,12 @@ import { describe, expect, it } from 'vitest'; import { createDemoVisualAgreementReport, + comparePortableDemoVisualAgreement, inspectDemoVisualAgreement, calculateContainDimensions, parseFfmpegFrameDimensions, parseFfmpegSsim, + PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, } from '../scripts/demo-visual-agreement-core.mjs'; const sourceBytes = Buffer.from('asymmetric source'); @@ -128,7 +130,7 @@ describe('native demo visual agreement', () => { }); expect(inspection.status).toBe('failed'); for (const message of [ - 'schemaVersion must be 2', + 'schemaVersion must be 2 or 3', 'status must be passed or failed', 'algorithm is unsupported', 'resizeMode must be contain', @@ -153,6 +155,86 @@ describe('native demo visual agreement', () => { })).toEqual({ width: null, height: null }); }); + it('binds the portable range contract and allows only narrow score drift', () => { + const captured = createDemoVisualAgreementReport({ + sourceBytes, + outputBytes, + sourceWidth: 4_000, + sourceHeight: 3_000, + width: 1_600, + height: 1_200, + resizeMode: 'contain', + maxWidth: 1_600, + maxHeight: 1_200, + uprightSimilarity: 0.944431, + verticalFlipSimilarity: 0.690423, + comparisonProfile: PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, + sourceColorRange: 'pc', + outputColorRange: 'pc', + }); + const replayed = { + ...captured, + uprightSimilarity: 0.944398, + verticalFlipSimilarity: 0.690907, + }; + + expect(captured).toMatchObject({ + schemaVersion: 3, + algorithm: 'ffmpeg-auto-oriented-contain-limited-range-ssim-v3', + inputColorRange: 'pc', + comparisonColorRange: 'tv', + comparisonPixelFormat: 'yuv444p', + comparisonScaler: 'lanczos', + scoreTolerance: 0.001, + sourceColorRange: 'pc', + outputColorRange: 'pc', + }); + expect(comparePortableDemoVisualAgreement(captured, replayed)).toMatchObject({ + status: 'passed', + mode: 'portable-tolerance', + measurementMatch: true, + outcomesPassed: true, + exactShapes: true, + stableFieldsMatch: true, + tolerance: 0.001, + uprightSimilarityDelta: 0.000033, + verticalFlipSimilarityDelta: 0.000484, + }); + expect( + comparePortableDemoVisualAgreement(captured, { + ...replayed, + uprightSimilarity: 0.943, + }) + ).toMatchObject({ status: 'failed', measurementMatch: false }); + const failedPair = { + ...captured, + status: 'failed', + checks: { ...captured.checks, minimumSimilarity: false }, + }; + expect(comparePortableDemoVisualAgreement(failedPair, failedPair)).toMatchObject({ + status: 'failed', + outcomesPassed: false, + }); + expect( + comparePortableDemoVisualAgreement( + { ...captured, perceptuallyLossless: true }, + replayed + ) + ).toMatchObject({ status: 'failed', exactShapes: false }); + expect( + inspectDemoVisualAgreement( + { ...captured, checks: { ...captured.checks, extra: true } }, + { sourceBytes, outputBytes } + ).error + ).toContain('portable visual agreement check fields drifted'); + expect( + inspectDemoVisualAgreement( + { ...captured, comparisonColorRange: 'pc' }, + { sourceBytes, outputBytes } + ).error + ).toContain('comparisonColorRange does not match the visual schema'); + }); + it('calculates rounded contain geometry and parses auto-oriented dimensions', () => { expect(calculateContainDimensions({ sourceWidth: 320, diff --git a/test/economicResilienceEvidence.test.mjs b/test/economicResilienceEvidence.test.mjs index c4ddc40..ccc690c 100644 --- a/test/economicResilienceEvidence.test.mjs +++ b/test/economicResilienceEvidence.test.mjs @@ -23,7 +23,10 @@ import { inspectJpegStructure, inspectNativeEconomicResiliencePayload, } from '../scripts/economic-resilience-evidence-core.mjs'; -import { createDemoVisualAgreementReport } from '../scripts/demo-visual-agreement-core.mjs'; +import { + createDemoVisualAgreementReport, + PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, +} from '../scripts/demo-visual-agreement-core.mjs'; import { createChunkedNativeLogMessages } from '../example/src/nativeBenchmarkLog.ts'; const SOURCE = readFileSync('example/fixtures/kit-only-12mp-v1.jpg'); @@ -482,6 +485,33 @@ describe('kit-only 12 MP economic resilience evidence', () => { ); expect(valid.status, valid.stderr).toBe(0); + const evidencePath = path.join( + artifact.root, + 'economic-resilience.json' + ); + const environmentPath = path.join(artifact.root, 'environment.json'); + const evidence = JSON.parse(readFileSync(evidencePath, 'utf8')); + evidence.environment.toolchain.ffmpeg = 'ffmpeg version different-build'; + evidence.environment.toolchain.ffprobe = 'ffprobe version different-build'; + writeFileSync( + environmentPath, + `${JSON.stringify(evidence.environment, null, 2)}\n` + ); + writeFileSync(evidencePath, `${JSON.stringify(evidence, null, 2)}\n`); + const crossVersion = spawnSync( + process.execPath, + [VERIFIER, '--artifact-dir', artifact.root], + { cwd: os.tmpdir(), encoding: 'utf8' } + ); + expect(crossVersion.status, crossVersion.stderr).toBe(0); + expect(JSON.parse(crossVersion.stdout).replay).toMatchObject({ + status: 'passed', + ffmpegVersionsMatch: false, + ffprobeVersionsMatch: false, + measurementMode: 'portable-tolerance', + measurementTolerance: 0.001, + }); + const forgedArtifact = createArtifact(); const forged = spawnSync( process.execPath, @@ -509,6 +539,10 @@ describe('kit-only 12 MP economic resilience evidence', () => { expect(JSON.parse(valid.stdout).replay).toMatchObject({ status: 'passed', measurementMatch: true, + measurementMode: 'portable-tolerance', + measurementTolerance: 0.001, + outcomesPassed: true, + stableFieldsMatch: true, }); expect(readFileSync(evidencePath)).toEqual(originalEvidence); @@ -625,6 +659,9 @@ describe('kit-only 12 MP economic resilience evidence', () => { maxHeight: 1200, uprightSimilarity: 0.95, verticalFlipSimilarity: 0.5, + comparisonProfile: PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, + sourceColorRange: 'pc', + outputColorRange: 'pc', }); const files = { log: 'native.log', @@ -687,6 +724,9 @@ function createArtifact() { maxHeight: 1200, uprightSimilarity: 0.95, verticalFlipSimilarity: 0.5, + comparisonProfile: PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, + sourceColorRange: 'pc', + outputColorRange: 'pc', }); const evidence = buildEconomicResilienceEvidence({ payload, @@ -880,6 +920,7 @@ function createReplayableArtifact() { '--resize-mode', 'contain', '--max-width', '1600', '--max-height', '1200', + '--comparison-profile', PORTABLE_DEMO_VISUAL_AGREEMENT_PROFILE, '--report', visualPath, ]); const visualAgreement = JSON.parse(readFileSync(visualPath, 'utf8')); From 2705ade77a2b122b80caaee4e768c0e9dd932fa3 Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 20:01:46 +0900 Subject: [PATCH 09/11] Bind iOS evidence to simulator runtime --- .github/workflows/demo-evidence.yml | 17 +- scripts/inspect-ios-simulator-metadata.mjs | 29 ++++ scripts/ios-simulator-metadata-core.mjs | 111 +++++++++++++ test/demoCaptureScriptContract.test.ts | 4 + test/iosSimulatorMetadata.test.mjs | 172 +++++++++++++++++++++ 5 files changed, 328 insertions(+), 5 deletions(-) create mode 100644 scripts/inspect-ios-simulator-metadata.mjs create mode 100644 scripts/ios-simulator-metadata-core.mjs create mode 100644 test/iosSimulatorMetadata.test.mjs diff --git a/.github/workflows/demo-evidence.yml b/.github/workflows/demo-evidence.yml index c4ccb49..65ed91b 100644 --- a/.github/workflows/demo-evidence.yml +++ b/.github/workflows/demo-evidence.yml @@ -25,6 +25,8 @@ on: - "scripts/economic-resilience-evidence-core.mjs" - "scripts/verify-economic-resilience-evidence.mjs" - "scripts/guided-demo-core.mjs" + - "scripts/inspect-ios-simulator-metadata.mjs" + - "scripts/ios-simulator-metadata-core.mjs" - "scripts/normalize-demo-recording.mjs" - "scripts/verify-benchmark-comparison-evidence.mjs" workflow_dispatch: @@ -178,7 +180,16 @@ jobs: shell: bash run: | set -euo pipefail - udid=$(xcrun simctl list devices booted --json | node -e "let s='';process.stdin.on('data',d=>s+=d).on('end',()=>{const d=Object.values(JSON.parse(s).devices).flat()[0];if(!d)process.exit(1);process.stdout.write(d.udid)})") + xcrun simctl list devices booted --json > /tmp/rnick-sim-devices.json + xcrun simctl list runtimes --json > /tmp/rnick-sim-runtimes.json + node scripts/inspect-ios-simulator-metadata.mjs \ + --devices /tmp/rnick-sim-devices.json \ + --runtimes /tmp/rnick-sim-runtimes.json > /tmp/rnick-sim-metadata.json + udid=$(node -e "process.stdout.write(require('/tmp/rnick-sim-metadata.json').udid)") + runtime=$(node -e "process.stdout.write(require('/tmp/rnick-sim-metadata.json').runtime)") + device=$(node -e "process.stdout.write(require('/tmp/rnick-sim-metadata.json').device)") + os_build=$(node -e "process.stdout.write(require('/tmp/rnick-sim-metadata.json').osBuild)") + abi=$(xcrun simctl spawn "$udid" uname -m | tr -d '\r') app=example/ios/build/Build/Products/Debug-iphonesimulator/ImageCompressionKitExample.app xcrun simctl install "$udid" "$app" pnpm --filter image-compression-kit-example exec react-native start --port 8081 > /tmp/rnick-metro.log 2>&1 & @@ -277,8 +288,6 @@ jobs: NODE cp "$(sed -n '1p' /tmp/rnick-demo-raw/uris.txt)" /tmp/rnick-demo-raw/source.jpg cp "$(sed -n '2p' /tmp/rnick-demo-raw/uris.txt)" /tmp/rnick-demo-raw/output.jpg - runtime=$(xcrun simctl list devices booted --json | node -e "let s='';process.stdin.on('data',d=>s+=d).on('end',()=>{const p=JSON.parse(s);const e=Object.entries(p.devices).find(([,v])=>v.length);process.stdout.write(e[0].replace('com.apple.CoreSimulator.SimRuntime.','').replaceAll('-','.'))})") - device=$(xcrun simctl list devices booted --json | node -e "let s='';process.stdin.on('data',d=>s+=d).on('end',()=>{const d=Object.values(JSON.parse(s).devices).flat()[0];process.stdout.write(d.name)})") node scripts/normalize-demo-recording.mjs \ --input /tmp/rnick-demo-raw/recording-raw.mp4 \ --output /tmp/rnick-demo-raw/recording.mp4 \ @@ -346,8 +355,6 @@ jobs: --max-height 1200 \ --comparison-profile jpeg-full-range-to-limited-yuv444p-v1 \ --report /tmp/rnick-economic-raw/visual-agreement.json - os_build=$(xcrun simctl spawn "$udid" sw_vers -buildVersion | tr -d '\r') - abi=$(xcrun simctl spawn "$udid" uname -m | tr -d '\r') react_native_version=$(node -e "process.stdout.write(require('./example/package.json').dependencies['react-native'])") node_version=$(node --version) ffmpeg_version=$(ffmpeg -version | head -n 1) diff --git a/scripts/inspect-ios-simulator-metadata.mjs b/scripts/inspect-ios-simulator-metadata.mjs new file mode 100644 index 0000000..987c900 --- /dev/null +++ b/scripts/inspect-ios-simulator-metadata.mjs @@ -0,0 +1,29 @@ +#!/usr/bin/env node + +import { readFileSync } from 'node:fs'; +import { inspectBootedIosSimulatorMetadata } from './ios-simulator-metadata-core.mjs'; + +const options = parseArgs(process.argv.slice(2)); +for (const field of ['devices', 'runtimes']) { + if (!options[field]) throw new Error(`--${field} is required`); +} +const report = inspectBootedIosSimulatorMetadata({ + devices: JSON.parse(readFileSync(options.devices, 'utf8')), + runtimes: JSON.parse(readFileSync(options.runtimes, 'utf8')), + udid: options.udid ?? null, +}); +if (report.status !== 'passed') throw new Error(report.error); +process.stdout.write(`${JSON.stringify(report)}\n`); + +function parseArgs(args) { + const parsed = {}; + for (let index = 0; index < args.length; index += 2) { + const flag = args[index]; + const value = args[index + 1]; + if (!flag?.startsWith('--') || !value) { + throw new Error(`invalid argument: ${flag ?? ''}`); + } + parsed[flag.slice(2)] = value; + } + return parsed; +} diff --git a/scripts/ios-simulator-metadata-core.mjs b/scripts/ios-simulator-metadata-core.mjs new file mode 100644 index 0000000..3528569 --- /dev/null +++ b/scripts/ios-simulator-metadata-core.mjs @@ -0,0 +1,111 @@ +const IOS_RUNTIME_PREFIX = 'com.apple.CoreSimulator.SimRuntime.iOS-'; +const CANONICAL_UDID = + /^[0-9A-Fa-f]{8}(?:-[0-9A-Fa-f]{4}){3}-[0-9A-Fa-f]{12}$/; + +export function inspectBootedIosSimulatorMetadata({ + devices, + runtimes, + udid = null, +}) { + const errors = []; + if (udid !== null && !CANONICAL_UDID.test(udid)) { + errors.push('udid must be a canonical simulator identifier'); + } + if (!plainObject(devices?.devices)) { + errors.push('devices payload must contain a devices object'); + } + if (!Array.isArray(runtimes?.runtimes)) { + errors.push('runtimes payload must contain a runtimes array'); + } + + const matches = []; + if (plainObject(devices?.devices)) { + for (const [runtimeIdentifier, candidates] of Object.entries( + devices.devices + )) { + if (!runtimeIdentifier.startsWith(IOS_RUNTIME_PREFIX)) continue; + if (!Array.isArray(candidates)) { + errors.push(`device list must be an array: ${runtimeIdentifier}`); + continue; + } + for (const candidate of candidates) { + if (udid === null || candidate?.udid === udid) { + matches.push({ runtimeIdentifier, candidate }); + } + } + } + } + if (matches.length !== 1) { + errors.push('selection must identify exactly one iOS simulator device'); + } + const match = matches[0]; + if (match?.candidate?.state !== 'Booted') { + errors.push('selected simulator must be booted'); + } + if (match?.candidate?.isAvailable === false) { + errors.push('selected simulator device must be available'); + } + if (!CANONICAL_UDID.test(match?.candidate?.udid ?? '')) { + errors.push('selected simulator udid must be canonical'); + } + if (!safeLabel(match?.candidate?.name)) { + errors.push('selected simulator name is required'); + } + + const runtimeMatches = Array.isArray(runtimes?.runtimes) + ? runtimes.runtimes.filter( + (runtime) => runtime?.identifier === match?.runtimeIdentifier + ) + : []; + if (runtimeMatches.length !== 1) { + errors.push('device runtime must identify exactly one installed runtime'); + } + const runtime = runtimeMatches[0]; + if (runtime?.isAvailable !== true) { + errors.push('selected simulator runtime must be available'); + } + if (!safeLabel(runtime?.name) || !runtime.name.startsWith('iOS ')) { + errors.push('selected simulator runtime name must identify iOS'); + } + if (!safeLabel(runtime?.buildversion)) { + errors.push('selected simulator runtime buildversion is required'); + } + + if (errors.length > 0) { + return failed(errors); + } + return { + status: 'passed', + udid: match.candidate.udid, + runtimeIdentifier: match.runtimeIdentifier, + runtime: runtime.name, + osBuild: runtime.buildversion, + device: match.candidate.name, + error: null, + }; +} + +function failed(errors) { + return { + status: 'failed', + udid: null, + runtimeIdentifier: null, + runtime: null, + osBuild: null, + device: null, + error: errors.join(' | '), + }; +} + +function plainObject(value) { + return value !== null && typeof value === 'object' && !Array.isArray(value); +} + +function safeLabel(value) { + return ( + typeof value === 'string' && + value.length > 0 && + value === value.trim() && + !/[\u0000-\u001f\u007f]/.test(value) + ); +} diff --git a/test/demoCaptureScriptContract.test.ts b/test/demoCaptureScriptContract.test.ts index abe56f2..e0117d6 100644 --- a/test/demoCaptureScriptContract.test.ts +++ b/test/demoCaptureScriptContract.test.ts @@ -84,6 +84,10 @@ describe('Android demo screenshot capture', () => { expect(workflow).toContain('--run-attempt "$GITHUB_RUN_ATTEMPT"'); expect(workflow).toContain('ffprobe_version=$(ffprobe -version | head -n 1)'); expect(workflow).toContain('--ffprobe "$ffprobe_version"'); + expect(workflow).toContain('xcrun simctl list runtimes --json'); + expect(workflow).toContain('inspect-ios-simulator-metadata.mjs'); + expect(workflow).toContain("require('/tmp/rnick-sim-metadata.json').udid"); + expect(workflow).not.toContain('simctl spawn "$udid" sw_vers'); }); it('records the complete guided walkthrough on both native platforms', () => { diff --git a/test/iosSimulatorMetadata.test.mjs b/test/iosSimulatorMetadata.test.mjs new file mode 100644 index 0000000..bf8f1b5 --- /dev/null +++ b/test/iosSimulatorMetadata.test.mjs @@ -0,0 +1,172 @@ +import { describe, expect, it } from 'vitest'; +import { inspectBootedIosSimulatorMetadata } from '../scripts/ios-simulator-metadata-core.mjs'; + +const UDID = 'AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE'; +const RUNTIME_ID = 'com.apple.CoreSimulator.SimRuntime.iOS-26-0'; + +describe('iOS simulator metadata', () => { + it('binds the selected booted device to its installed runtime build', () => { + expect( + inspectBootedIosSimulatorMetadata({ + devices: { + devices: { + [RUNTIME_ID]: [ + { state: 'Booted', name: 'iPhone 16 Pro', udid: UDID }, + ], + }, + }, + runtimes: { + runtimes: [ + { + identifier: RUNTIME_ID, + name: 'iOS 26.0', + buildversion: '23A340', + isAvailable: true, + }, + ], + }, + udid: UDID, + }) + ).toEqual({ + status: 'passed', + udid: UDID, + runtimeIdentifier: RUNTIME_ID, + runtime: 'iOS 26.0', + osBuild: '23A340', + device: 'iPhone 16 Pro', + error: null, + }); + }); + + it('rejects malformed and ambiguous simulator identifiers', () => { + const malformed = inspectBootedIosSimulatorMetadata({ + devices: { devices: {} }, + runtimes: { runtimes: [] }, + udid: 'AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEZ', + }); + expect(malformed.status).toBe('failed'); + expect(malformed.error).toContain('canonical simulator identifier'); + + const ambiguous = inspectBootedIosSimulatorMetadata({ + devices: { + devices: { + [RUNTIME_ID]: [ + { state: 'Booted', name: 'iPhone 16 Pro', udid: UDID }, + { state: 'Booted', name: 'Duplicate', udid: UDID }, + ], + }, + }, + runtimes: { + runtimes: [ + { + identifier: RUNTIME_ID, + name: 'iOS 26.0', + buildversion: '23A340', + isAvailable: true, + }, + ], + }, + udid: UDID, + }); + expect(ambiguous.status).toBe('failed'); + expect(ambiguous.error).toContain('exactly one iOS simulator device'); + }); + + it('rejects non-booted devices and incomplete runtime metadata', () => { + const report = inspectBootedIosSimulatorMetadata({ + devices: { + devices: { + [RUNTIME_ID]: [ + { state: 'Shutdown', name: '', udid: UDID }, + ], + }, + }, + runtimes: { + runtimes: [ + { + identifier: RUNTIME_ID, + name: '', + buildversion: '', + isAvailable: false, + }, + ], + }, + udid: UDID, + }); + expect(report.status).toBe('failed'); + expect(report.error).toContain('selected simulator must be booted'); + expect(report.error).toContain('selected simulator name is required'); + expect(report.error).toContain('runtime must be available'); + expect(report.error).toContain('runtime name must identify iOS'); + expect(report.error).toContain('runtime buildversion is required'); + }); + + it('rejects malformed device and runtime containers', () => { + const report = inspectBootedIosSimulatorMetadata({ + devices: { devices: { [RUNTIME_ID]: null } }, + runtimes: { runtimes: null }, + udid: UDID, + }); + expect(report.status).toBe('failed'); + expect(report.error).toContain('device list must be an array'); + expect(report.error).toContain('runtimes payload must contain a runtimes array'); + }); + + it('ignores booted non-iOS devices while selecting the iOS simulator', () => { + const report = inspectBootedIosSimulatorMetadata({ + devices: { + devices: { + 'com.apple.CoreSimulator.SimRuntime.watchOS-26-0': [ + { state: 'Booted', name: 'Apple Watch', udid: UDID }, + ], + [RUNTIME_ID]: [ + { state: 'Booted', name: 'iPhone 16 Pro', udid: UDID }, + ], + }, + }, + runtimes: { + runtimes: [ + { + identifier: RUNTIME_ID, + name: 'iOS 26.0', + buildversion: '23A340', + isAvailable: true, + }, + ], + }, + }); + expect(report.status).toBe('passed'); + expect(report.runtimeIdentifier).toBe(RUNTIME_ID); + }); + + it('rejects unavailable devices and unsafe runtime labels', () => { + const report = inspectBootedIosSimulatorMetadata({ + devices: { + devices: { + [RUNTIME_ID]: [ + { + state: 'Booted', + name: 'iPhone 16 Pro', + udid: UDID, + isAvailable: false, + }, + ], + }, + }, + runtimes: { + runtimes: [ + { + identifier: RUNTIME_ID, + name: 'watchOS 26.0', + buildversion: '23A340\nforged', + isAvailable: true, + }, + ], + }, + }); + expect(report.status).toBe('failed'); + expect(report.error).toContain('device must be available'); + expect(report.error).toContain('runtime name must identify iOS'); + expect(report.error).toContain('runtime buildversion is required'); + }); +}); From beaf1da87b4538da49232b21b6af48e0ada4e2f2 Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 20:23:54 +0900 Subject: [PATCH 10/11] Read iOS evidence ABI from built app --- .github/workflows/demo-evidence.yml | 12 +++-- scripts/inspect-ios-simulator-metadata.mjs | 8 +++- scripts/ios-simulator-metadata-core.mjs | 30 ++++++++++++ test/demoCaptureScriptContract.test.ts | 4 ++ test/iosSimulatorMetadata.test.mjs | 55 ++++++++++++++++++++++ 5 files changed, 104 insertions(+), 5 deletions(-) diff --git a/.github/workflows/demo-evidence.yml b/.github/workflows/demo-evidence.yml index 65ed91b..9898684 100644 --- a/.github/workflows/demo-evidence.yml +++ b/.github/workflows/demo-evidence.yml @@ -180,17 +180,23 @@ jobs: shell: bash run: | set -euo pipefail + app=example/ios/build/Build/Products/Debug-iphonesimulator/ImageCompressionKitExample.app + app_executable="$app/ImageCompressionKitExample" + test -f "$app_executable" + test ! -L "$app_executable" + app_architectures=$(xcrun lipo -archs "$app_executable" | tr -d '\r') xcrun simctl list devices booted --json > /tmp/rnick-sim-devices.json xcrun simctl list runtimes --json > /tmp/rnick-sim-runtimes.json node scripts/inspect-ios-simulator-metadata.mjs \ --devices /tmp/rnick-sim-devices.json \ - --runtimes /tmp/rnick-sim-runtimes.json > /tmp/rnick-sim-metadata.json + --runtimes /tmp/rnick-sim-runtimes.json \ + --app-architectures "$app_architectures" \ + --runner-arch "$RUNNER_ARCH" > /tmp/rnick-sim-metadata.json udid=$(node -e "process.stdout.write(require('/tmp/rnick-sim-metadata.json').udid)") runtime=$(node -e "process.stdout.write(require('/tmp/rnick-sim-metadata.json').runtime)") device=$(node -e "process.stdout.write(require('/tmp/rnick-sim-metadata.json').device)") os_build=$(node -e "process.stdout.write(require('/tmp/rnick-sim-metadata.json').osBuild)") - abi=$(xcrun simctl spawn "$udid" uname -m | tr -d '\r') - app=example/ios/build/Build/Products/Debug-iphonesimulator/ImageCompressionKitExample.app + abi=$(node -e "process.stdout.write(require('/tmp/rnick-sim-metadata.json').abi)") xcrun simctl install "$udid" "$app" pnpm --filter image-compression-kit-example exec react-native start --port 8081 > /tmp/rnick-metro.log 2>&1 & metro_pid=$! diff --git a/scripts/inspect-ios-simulator-metadata.mjs b/scripts/inspect-ios-simulator-metadata.mjs index 987c900..b3842db 100644 --- a/scripts/inspect-ios-simulator-metadata.mjs +++ b/scripts/inspect-ios-simulator-metadata.mjs @@ -4,12 +4,14 @@ import { readFileSync } from 'node:fs'; import { inspectBootedIosSimulatorMetadata } from './ios-simulator-metadata-core.mjs'; const options = parseArgs(process.argv.slice(2)); -for (const field of ['devices', 'runtimes']) { +for (const field of ['devices', 'runtimes', 'appArchitectures', 'runnerArch']) { if (!options[field]) throw new Error(`--${field} is required`); } const report = inspectBootedIosSimulatorMetadata({ devices: JSON.parse(readFileSync(options.devices, 'utf8')), runtimes: JSON.parse(readFileSync(options.runtimes, 'utf8')), + appArchitectures: options.appArchitectures, + runnerArch: options.runnerArch, udid: options.udid ?? null, }); if (report.status !== 'passed') throw new Error(report.error); @@ -23,7 +25,9 @@ function parseArgs(args) { if (!flag?.startsWith('--') || !value) { throw new Error(`invalid argument: ${flag ?? ''}`); } - parsed[flag.slice(2)] = value; + parsed[ + flag.slice(2).replace(/-([a-z])/g, (_, letter) => letter.toUpperCase()) + ] = value; } return parsed; } diff --git a/scripts/ios-simulator-metadata-core.mjs b/scripts/ios-simulator-metadata-core.mjs index 3528569..83e8c4c 100644 --- a/scripts/ios-simulator-metadata-core.mjs +++ b/scripts/ios-simulator-metadata-core.mjs @@ -5,6 +5,8 @@ const CANONICAL_UDID = export function inspectBootedIosSimulatorMetadata({ devices, runtimes, + appArchitectures, + runnerArch, udid = null, }) { const errors = []; @@ -17,6 +19,7 @@ export function inspectBootedIosSimulatorMetadata({ if (!Array.isArray(runtimes?.runtimes)) { errors.push('runtimes payload must contain a runtimes array'); } + const abi = inspectAppArchitecture(appArchitectures, runnerArch, errors); const matches = []; if (plainObject(devices?.devices)) { @@ -81,6 +84,7 @@ export function inspectBootedIosSimulatorMetadata({ runtime: runtime.name, osBuild: runtime.buildversion, device: match.candidate.name, + abi, error: null, }; } @@ -93,10 +97,36 @@ function failed(errors) { runtime: null, osBuild: null, device: null, + abi: null, error: errors.join(' | '), }; } +function inspectAppArchitecture(appArchitectures, runnerArch, errors) { + if (!safeLabel(appArchitectures)) { + errors.push('built app architectures must be a safe non-empty label'); + return null; + } + const architectures = appArchitectures.split(/\s+/); + if ( + architectures.length !== 1 || + !['arm64', 'x86_64'].includes(architectures[0]) + ) { + errors.push('built simulator app must contain exactly one supported architecture'); + return null; + } + const expectedAbi = { ARM64: 'arm64', X64: 'x86_64' }[runnerArch]; + if (!expectedAbi) { + errors.push('runner architecture must be ARM64 or X64'); + return null; + } + if (architectures[0] !== expectedAbi) { + errors.push('built simulator app architecture must match the runner'); + return null; + } + return architectures[0]; +} + function plainObject(value) { return value !== null && typeof value === 'object' && !Array.isArray(value); } diff --git a/test/demoCaptureScriptContract.test.ts b/test/demoCaptureScriptContract.test.ts index e0117d6..5d983a1 100644 --- a/test/demoCaptureScriptContract.test.ts +++ b/test/demoCaptureScriptContract.test.ts @@ -88,6 +88,10 @@ describe('Android demo screenshot capture', () => { expect(workflow).toContain('inspect-ios-simulator-metadata.mjs'); expect(workflow).toContain("require('/tmp/rnick-sim-metadata.json').udid"); expect(workflow).not.toContain('simctl spawn "$udid" sw_vers'); + expect(workflow).not.toContain('simctl spawn "$udid" uname'); + expect(workflow).toContain('xcrun lipo -archs "$app_executable"'); + expect(workflow).toContain('--runner-arch "$RUNNER_ARCH"'); + expect(workflow).toContain("require('/tmp/rnick-sim-metadata.json').abi"); }); it('records the complete guided walkthrough on both native platforms', () => { diff --git a/test/iosSimulatorMetadata.test.mjs b/test/iosSimulatorMetadata.test.mjs index bf8f1b5..df63cf4 100644 --- a/test/iosSimulatorMetadata.test.mjs +++ b/test/iosSimulatorMetadata.test.mjs @@ -25,6 +25,8 @@ describe('iOS simulator metadata', () => { }, ], }, + appArchitectures: 'arm64', + runnerArch: 'ARM64', udid: UDID, }) ).toEqual({ @@ -34,6 +36,7 @@ describe('iOS simulator metadata', () => { runtime: 'iOS 26.0', osBuild: '23A340', device: 'iPhone 16 Pro', + abi: 'arm64', error: null, }); }); @@ -42,6 +45,8 @@ describe('iOS simulator metadata', () => { const malformed = inspectBootedIosSimulatorMetadata({ devices: { devices: {} }, runtimes: { runtimes: [] }, + appArchitectures: 'arm64', + runnerArch: 'ARM64', udid: 'AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEZ', }); expect(malformed.status).toBe('failed'); @@ -66,6 +71,8 @@ describe('iOS simulator metadata', () => { }, ], }, + appArchitectures: 'arm64', + runnerArch: 'ARM64', udid: UDID, }); expect(ambiguous.status).toBe('failed'); @@ -91,6 +98,8 @@ describe('iOS simulator metadata', () => { }, ], }, + appArchitectures: 'arm64', + runnerArch: 'ARM64', udid: UDID, }); expect(report.status).toBe('failed'); @@ -105,6 +114,8 @@ describe('iOS simulator metadata', () => { const report = inspectBootedIosSimulatorMetadata({ devices: { devices: { [RUNTIME_ID]: null } }, runtimes: { runtimes: null }, + appArchitectures: 'arm64', + runnerArch: 'ARM64', udid: UDID, }); expect(report.status).toBe('failed'); @@ -134,6 +145,8 @@ describe('iOS simulator metadata', () => { }, ], }, + appArchitectures: 'arm64', + runnerArch: 'ARM64', }); expect(report.status).toBe('passed'); expect(report.runtimeIdentifier).toBe(RUNTIME_ID); @@ -163,10 +176,52 @@ describe('iOS simulator metadata', () => { }, ], }, + appArchitectures: 'arm64', + runnerArch: 'ARM64', }); expect(report.status).toBe('failed'); expect(report.error).toContain('device must be available'); expect(report.error).toContain('runtime name must identify iOS'); expect(report.error).toContain('runtime buildversion is required'); }); + + it('binds one built-app architecture to the hosted runner', () => { + const base = { + devices: { + devices: { + [RUNTIME_ID]: [ + { state: 'Booted', name: 'iPhone 16 Pro', udid: UDID }, + ], + }, + }, + runtimes: { + runtimes: [ + { + identifier: RUNTIME_ID, + name: 'iOS 26.0', + buildversion: '23A340', + isAvailable: true, + }, + ], + }, + udid: UDID, + }; + expect( + inspectBootedIosSimulatorMetadata({ + ...base, + appArchitectures: 'x86_64', + runnerArch: 'X64', + }).abi + ).toBe('x86_64'); + + for (const mutation of [ + { appArchitectures: 'arm64 x86_64', runnerArch: 'ARM64' }, + { appArchitectures: 'x86_64', runnerArch: 'ARM64' }, + { appArchitectures: 'arm64', runnerArch: 'unknown' }, + ]) { + expect( + inspectBootedIosSimulatorMetadata({ ...base, ...mutation }).status + ).toBe('failed'); + } + }); }); From 3741abbbd2713628f3258da0ead4d7d41d2f6bd4 Mon Sep 17 00:00:00 2001 From: GGULBAE Date: Thu, 13 Aug 2026 21:10:35 +0900 Subject: [PATCH 11/11] Strip encoder JPEG metadata on iOS --- CHANGELOG.md | 4 + README.md | 8 +- docs/verification-architecture.md | 9 +- ios/RCTImageCompressionJpegMetadata.h | 7 +- ios/RCTImageCompressionJpegMetadata.mm | 22 +- ios/RCTImageCompressionJpegSegmentSanitizer.h | 12 + ...RCTImageCompressionJpegSegmentSanitizer.mm | 129 ++++++++++ ios/RCTImageCompressionUIKitImageEncoder.mm | 12 +- package.json | 1 + react-native-image-compression-kit.podspec | 1 + scripts/android-verification.mjs | 169 ++++++++++++ scripts/ios-validation.mjs | 30 +++ .../RCTImageCompressionJpegMetadataTests.mm | 17 ++ ...ageCompressionJpegSegmentSanitizerTests.mm | 241 ++++++++++++++++++ .../RCTImageCompressionLargeImageTests.mm | 184 ++++++++++++- test/iosSourceContract.test.ts | 103 ++++++++ test/packageContract.test.ts | 2 + website/guide/files-metadata.md | 8 +- 18 files changed, 944 insertions(+), 15 deletions(-) create mode 100644 ios/RCTImageCompressionJpegSegmentSanitizer.h create mode 100644 ios/RCTImageCompressionJpegSegmentSanitizer.mm create mode 100644 test/ios-native/RCTImageCompressionJpegSegmentSanitizerTests.mm diff --git a/CHANGELOG.md b/CHANGELOG.md index f43a28d..a60ed38 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,10 @@ and patch releases remain backward compatible within the current minor line. ### Fixed +- iOS `metadata: 'strip'` now removes encoder-generated JPEG APP1, APP13, and + COM segments after ImageIO encoding. The marker parser rejects malformed, + truncated, or trailing JPEG output through the existing `ERR_ENCODE_FAILED` + path while leaving `safe` and `preserve` encoding unchanged. - iOS no longer vertically inverts pixels after ImageIO has normalized an orientation-bearing input. The default pipeline now verifies EXIF orientations 1–8 through decode, transform, and encode, and native demo diff --git a/README.md b/README.md index f3bf882..8cf7e30 100644 --- a/README.md +++ b/README.md @@ -80,7 +80,7 @@ owned-file cleanup. | Large photos | Decode downsampling, pixel limits, two-operation scheduling | 48 MP → 1.92 MP planned decode; this is not measured peak memory | | Cancellation | `ERR_CANCELLED` without publishing partial output | JS and native suites assert zero residual output at representative boundaries | | Output lifecycle | Narrow `removeCompressionOutput(uri)` ownership check | 0.4.1 candidate tests owned deletion and foreign/path/directory rejection | -| Metadata | Explicit `preserve`, `safe`, and `strip` | Android safe retained 0/7 named sensitive fields; iOS safe/strip copy no source metadata | +| Metadata | Explicit `preserve`, `safe`, and `strip` | Android safe retained 0/7 named sensitive fields; iOS safe copies no source metadata and JPEG strip also removes APP1/APP13/COM segments | | Integration | Packed tarball installed by fresh consumers | 8/8 release-target platform builds passed for v0.4.0 | @@ -352,8 +352,9 @@ Important limitations: - HEIC, HEIF, and AVIF output reject with `ERR_NOT_IMPLEMENTED`. - GIF output and animation preservation for GIF/WebP/AVIF are not implemented. - `metadata: 'preserve'` is supported only for JPEG source to JPEG output. -- Android `safe` copies a privacy-filtered JPEG EXIF allowlist. iOS `safe` and - `strip` re-encode without copying source metadata. +- Android `safe` copies a privacy-filtered JPEG EXIF allowlist. iOS `safe` + re-encodes without copying source metadata; for JPEG output, iOS `strip` + additionally removes encoder-generated APP1, APP13, and COM segments. - The iOS SDK ships a namespaced privacy manifest declaring no tracking or collected data and C617.1 for package-cache file metadata validation. - JPEG orientation is rendered into pixels before resize/encode; preserved @@ -388,6 +389,7 @@ pnpm example:ios:output-test pnpm example:ios:pipeline-test pnpm example:ios:large-image-test pnpm example:ios:metadata-test +pnpm example:ios:jpeg-sanitizer-test pnpm example:ios:transformer-test pnpm docs:check pnpm site:check diff --git a/docs/verification-architecture.md b/docs/verification-architecture.md index 74c8ed4..dba8038 100644 --- a/docs/verification-architecture.md +++ b/docs/verification-architecture.md @@ -24,12 +24,13 @@ from the npm package. | Protected master identity and required source checks | `test/releaseSource.test.mjs` and `scripts/release-source-core.mjs` | `pnpm verify:release-source` and the Trusted Release workflow | | Android registration, typed request/source/decode/transform boundaries, build wiring, fixtures, and native-test presence | `test/androidSourceContract.test.ts` | `pnpm test` and `pnpm android:doctor` | | Android compression behavior | Kotlin unit and instrumentation tests under `android/src/test` and `android/src/androidTest` | `pnpm example:android-unit-test` and `pnpm example:android-instrumentation` | -| iOS bridge, immutable request/source/inspection/decoder/transform/JPEG-metadata/output-encoder/output-persistence/pipeline boundaries, pod, workflow, and native-test/smoke-runner wiring | `test/iosSourceContract.test.ts` | `pnpm test` and `pnpm android:doctor` | +| iOS bridge, immutable request/source/inspection/decoder/transform/JPEG-metadata/JPEG-segment-sanitizer/output-encoder/output-persistence/pipeline boundaries, pod, workflow, and native-test/smoke-runner wiring | `test/iosSourceContract.test.ts` and the structural checks in `scripts/android-verification.mjs` | `pnpm test` and `pnpm android:doctor` | | iOS request validation behavior | Foundation-only table-driven native tests under `test/ios-native` | `pnpm example:ios:request-parser-test` and `pnpm example:ios:smoke` | | iOS source acquisition and format inspection behavior | Foundation/ImageIO table-driven native tests under `test/ios-native` | `pnpm example:ios:input-test` and `pnpm example:ios:smoke` | | iOS decode route, result/error, and executor ownership | Foundation/ImageIO table-driven native tests plus UIKit host smoke | `pnpm example:ios:decoder-test` and `pnpm example:ios:smoke` | | iOS resize geometry, render request/result/error, asymmetric pixel order, EXIF orientations 1–8, background policy, and executor ownership | Foundation/CoreGraphics table-driven native tests, default-pipeline ImageIO round trips, plus UIKit host smoke | `pnpm example:ios:transformer-test`, `pnpm example:ios:large-image-test`, and `pnpm example:ios:smoke` | | iOS JPEG preserve policy, ImageIO source properties, and destination metadata normalization | Foundation/ImageIO table-driven native tests plus UIKit host smoke | `pnpm example:ios:metadata-test` and `pnpm example:ios:smoke` | +| iOS strip-only JPEG APP1/APP13/COM removal, strict SOI/segment/SOS/DNL/entropy/EOI parsing, and unchanged safe/preserve behavior | Foundation table-driven marker tests plus default-pipeline ImageIO decode, geometry, metadata, and persisted-byte integration | `pnpm example:ios:jpeg-sanitizer-test`, `pnpm example:ios:large-image-test`, and `pnpm example:ios:smoke` | | iOS JPEG/PNG/WebP routing, target-size search, WebP availability, codec defaults, and executor ownership | Foundation-only table-driven native tests plus UIKit/ImageIO host smoke | `pnpm example:ios:encoder-test` and `pnpm example:ios:smoke` | | iOS cache path and extension selection, atomic file writes, stable output errors, and result projection | Foundation-only table-driven native tests plus UIKit host smoke | `pnpm example:ios:output-test` and `pnpm example:ios:smoke` | | iOS request-to-output stage order, failure forwarding, runtime capability providers, and smoke observation | Foundation-only table-driven pipeline tests plus UIKit host smoke | `pnpm example:ios:pipeline-test` and `pnpm example:ios:smoke` | @@ -83,9 +84,9 @@ pnpm pack --dry-run ``` Platform workflows additionally run Android unit and instrumentation tests and -the iOS request/input/decoder/transformer/JPEG-metadata/output-encoder, -output-persistence, and pipeline native -tests plus host-app smoke test in their supported environments. +the iOS request/input/decoder/transformer/JPEG-metadata/JPEG-segment-sanitizer, +output-encoder, output-persistence, and pipeline native tests plus host-app +smoke test in their supported environments. ## Change routing diff --git a/ios/RCTImageCompressionJpegMetadata.h b/ios/RCTImageCompressionJpegMetadata.h index 3991f4e..6e74b70 100644 --- a/ios/RCTImageCompressionJpegMetadata.h +++ b/ios/RCTImageCompressionJpegMetadata.h @@ -30,11 +30,16 @@ NS_ASSUME_NONNULL_BEGIN @interface RCTImageCompressionJpegMetadataResult : NSObject +@property (nonatomic, copy, readonly) NSString *metadataPolicy; @property (nonatomic, readonly) BOOL preservingSourceMetadata; +@property (nonatomic, readonly) BOOL stripRequested; @property (nonatomic, copy, readonly, nullable) NSDictionary *sourceProperties; +- (instancetype)initWithMetadataPolicy:(NSString *)metadataPolicy + preservingSourceMetadata:(BOOL)preservingSourceMetadata + sourceProperties:(nullable NSDictionary *)sourceProperties NS_DESIGNATED_INITIALIZER; - (instancetype)initWithPreservingSourceMetadata:(BOOL)preservingSourceMetadata - sourceProperties:(nullable NSDictionary *)sourceProperties NS_DESIGNATED_INITIALIZER; + sourceProperties:(nullable NSDictionary *)sourceProperties; - (instancetype)init NS_UNAVAILABLE; - (NSDictionary *)destinationPropertiesForQuality:(NSInteger)quality diff --git a/ios/RCTImageCompressionJpegMetadata.mm b/ios/RCTImageCompressionJpegMetadata.mm index 56e0694..93c488a 100644 --- a/ios/RCTImageCompressionJpegMetadata.mm +++ b/ios/RCTImageCompressionJpegMetadata.mm @@ -42,17 +42,32 @@ - (instancetype)initWithCode:(NSString *)code message:(NSString *)message @implementation RCTImageCompressionJpegMetadataResult -- (instancetype)initWithPreservingSourceMetadata:(BOOL)preservingSourceMetadata - sourceProperties:(NSDictionary *)sourceProperties +- (instancetype)initWithMetadataPolicy:(NSString *)metadataPolicy + preservingSourceMetadata:(BOOL)preservingSourceMetadata + sourceProperties:(NSDictionary *)sourceProperties { self = [super init]; if (self != nil) { + _metadataPolicy = [metadataPolicy copy]; _preservingSourceMetadata = preservingSourceMetadata; + _stripRequested = [metadataPolicy isEqualToString:RCTImageCompressionKitStripMetadataPolicy]; _sourceProperties = [sourceProperties copy]; } return self; } +- (instancetype)initWithPreservingSourceMetadata:(BOOL)preservingSourceMetadata + sourceProperties:(NSDictionary *)sourceProperties +{ + return [self + initWithMetadataPolicy:preservingSourceMetadata + ? RCTImageCompressionKitPreserveMetadataPolicy + : RCTImageCompressionKitDefaultMetadataPolicy + preservingSourceMetadata:preservingSourceMetadata + sourceProperties:sourceProperties + ]; +} + - (NSDictionary *)destinationPropertiesForQuality:(NSInteger)quality pixelWidth:(NSUInteger)pixelWidth pixelHeight:(NSUInteger)pixelHeight @@ -129,7 +144,8 @@ - (nullable RCTImageCompressionJpegMetadataResult *)prepareRequest:(RCTImageComp ? self.sourcePropertyReader(request.sourceData) : nil; return [[RCTImageCompressionJpegMetadataResult alloc] - initWithPreservingSourceMetadata:preserveRequested + initWithMetadataPolicy:request.metadataPolicy + preservingSourceMetadata:preserveRequested sourceProperties:sourceProperties ]; } diff --git a/ios/RCTImageCompressionJpegSegmentSanitizer.h b/ios/RCTImageCompressionJpegSegmentSanitizer.h new file mode 100644 index 0000000..0d07471 --- /dev/null +++ b/ios/RCTImageCompressionJpegSegmentSanitizer.h @@ -0,0 +1,12 @@ +#import + +NS_ASSUME_NONNULL_BEGIN + +@interface RCTImageCompressionJpegSegmentSanitizer : NSObject + ++ (nullable NSData *)sanitizeJpegData:(NSData *)jpegData + stripRequested:(BOOL)stripRequested; + +@end + +NS_ASSUME_NONNULL_END diff --git a/ios/RCTImageCompressionJpegSegmentSanitizer.mm b/ios/RCTImageCompressionJpegSegmentSanitizer.mm new file mode 100644 index 0000000..1a5bd17 --- /dev/null +++ b/ios/RCTImageCompressionJpegSegmentSanitizer.mm @@ -0,0 +1,129 @@ +#import "RCTImageCompressionJpegSegmentSanitizer.h" + +static BOOL RCTImageCompressionJpegMarkerHasNoLength(uint8_t marker) +{ + return marker == 0x01 || (marker >= 0xd0 && marker <= 0xd9); +} + +static BOOL RCTImageCompressionJpegMarkerCarriesMetadata(uint8_t marker) +{ + return marker == 0xe1 || marker == 0xed || marker == 0xfe; +} + +static BOOL RCTImageCompressionJpegMarkerHasLength(uint8_t marker) +{ + return marker >= 0xc0 && marker <= 0xfe; +} + +@implementation RCTImageCompressionJpegSegmentSanitizer + ++ (nullable NSData *)sanitizeJpegData:(NSData *)jpegData + stripRequested:(BOOL)stripRequested +{ + if (!stripRequested) return [jpegData copy]; + + const uint8_t *bytes = (const uint8_t *)jpegData.bytes; + const NSUInteger length = jpegData.length; + if (length < 4 || bytes[0] != 0xff || bytes[1] != 0xd8) return nil; + + NSMutableData *sanitized = [NSMutableData dataWithCapacity:length]; + [sanitized appendBytes:bytes length:2]; + NSUInteger cursor = 2; + BOOL insideEntropyData = NO; + BOOL resumeEntropyAfterSegment = NO; + BOOL sawScan = NO; + + while (cursor < length) { + if (insideEntropyData) { + NSUInteger entropyStart = cursor; + BOOL foundMarker = NO; + while (cursor < length) { + if (bytes[cursor] != 0xff) { + cursor += 1; + continue; + } + + NSUInteger markerStart = cursor; + cursor += 1; + while (cursor < length && bytes[cursor] == 0xff) cursor += 1; + if (cursor >= length) return nil; + + uint8_t marker = bytes[cursor]; + if (marker == 0x00 || marker == 0x01 || + (marker >= 0xd0 && marker <= 0xd7)) { + cursor += 1; + continue; + } + + [sanitized appendBytes:bytes + entropyStart length:markerStart - entropyStart]; + cursor = markerStart; + insideEntropyData = NO; + resumeEntropyAfterSegment = marker == 0xdc; + foundMarker = YES; + break; + } + if (!foundMarker) return nil; + continue; + } + + if (bytes[cursor] != 0xff) return nil; + NSUInteger markerStart = cursor; + cursor += 1; + while (cursor < length && bytes[cursor] == 0xff) cursor += 1; + if (cursor >= length) return nil; + + uint8_t marker = bytes[cursor]; + cursor += 1; + if (marker == 0x00 || marker == 0xd8 || + (marker >= 0xd0 && marker <= 0xd7)) { + return nil; + } + + if (marker == 0xd9) { + if (!sawScan || cursor != length) return nil; + [sanitized appendBytes:bytes + markerStart length:cursor - markerStart]; + return [sanitized copy]; + } + + if (RCTImageCompressionJpegMarkerHasNoLength(marker)) { + [sanitized appendBytes:bytes + markerStart length:cursor - markerStart]; + continue; + } + + if (!RCTImageCompressionJpegMarkerHasLength(marker)) return nil; + + if (length - cursor < 2) return nil; + NSUInteger segmentLength = ((NSUInteger)bytes[cursor] << 8) | bytes[cursor + 1]; + if (segmentLength < 2 || segmentLength > length - cursor) return nil; + if (marker == 0xda) { + if (segmentLength < 8) return nil; + NSUInteger componentCount = bytes[cursor + 2]; + if (componentCount == 0 || componentCount > 4 || + segmentLength != 6 + (2 * componentCount)) { + return nil; + } + } + if (marker == 0xdc && + (!resumeEntropyAfterSegment || segmentLength != 4)) { + return nil; + } + NSUInteger segmentEnd = cursor + segmentLength; + + if (!RCTImageCompressionJpegMarkerCarriesMetadata(marker)) { + [sanitized appendBytes:bytes + markerStart length:segmentEnd - markerStart]; + } + cursor = segmentEnd; + + if (marker == 0xda) { + sawScan = YES; + insideEntropyData = YES; + } else if (resumeEntropyAfterSegment) { + insideEntropyData = YES; + } + resumeEntropyAfterSegment = NO; + } + + return nil; +} + +@end diff --git a/ios/RCTImageCompressionUIKitImageEncoder.mm b/ios/RCTImageCompressionUIKitImageEncoder.mm index 3b2b8e5..ea8cecb 100644 --- a/ios/RCTImageCompressionUIKitImageEncoder.mm +++ b/ios/RCTImageCompressionUIKitImageEncoder.mm @@ -1,6 +1,7 @@ #import "RCTImageCompressionImageEncoder.h" #import "RCTImageCompressionCGImage.h" +#import "RCTImageCompressionJpegSegmentSanitizer.h" #import @@ -59,7 +60,16 @@ static CGImageRef RCTImageCompressionEncoderCGImage(UIImage *image) pixelWidth:CGImageGetWidth(cgImage) pixelHeight:CGImageGetHeight(cgImage) ]; - return RCTImageCompressionEncodeImage(image, @"public.jpeg", properties); + NSData *encodedData = RCTImageCompressionEncodeImage( + image, + @"public.jpeg", + properties + ); + if (encodedData == nil) return nil; + return [RCTImageCompressionJpegSegmentSanitizer + sanitizeJpegData:encodedData + stripRequested:metadata.stripRequested + ]; } static NSData *RCTImageCompressionEncodeWebP(UIImage *image, NSInteger quality) diff --git a/package.json b/package.json index 61979c6..d28edc0 100644 --- a/package.json +++ b/package.json @@ -50,6 +50,7 @@ "example:ios:pipeline-test": "node scripts/ios-validation.mjs pipeline-test", "example:ios:large-image-test": "node scripts/ios-validation.mjs large-image-test", "example:ios:metadata-test": "node scripts/ios-validation.mjs metadata-test", + "example:ios:jpeg-sanitizer-test": "node scripts/ios-validation.mjs jpeg-sanitizer-test", "example:ios:transformer-test": "node scripts/ios-validation.mjs transformer-test", "example:ios:input-test": "node scripts/ios-validation.mjs input-test", "example:ios:request-parser-test": "node scripts/ios-validation.mjs request-parser-test", diff --git a/react-native-image-compression-kit.podspec b/react-native-image-compression-kit.podspec index cbbd4c1..66355a3 100644 --- a/react-native-image-compression-kit.podspec +++ b/react-native-image-compression-kit.podspec @@ -20,6 +20,7 @@ Pod::Spec.new do |s| "ios/RCTImageCompressionInput.h", "ios/RCTImageCompressionIOSCapabilities.h", "ios/RCTImageCompressionJpegMetadata.h", + "ios/RCTImageCompressionJpegSegmentSanitizer.h", "ios/RCTImageCompressionOutput.h", "ios/RCTImageCompressionPipeline.h", "ios/RCTImageCompressionRequest.h", diff --git a/scripts/android-verification.mjs b/scripts/android-verification.mjs index 8b0a0d8..083e392 100644 --- a/scripts/android-verification.mjs +++ b/scripts/android-verification.mjs @@ -48,6 +48,8 @@ const REQUIRED_FILES = [ 'ios/RCTImageCompressionIOSCapabilities.mm', 'ios/RCTImageCompressionJpegMetadata.h', 'ios/RCTImageCompressionJpegMetadata.mm', + 'ios/RCTImageCompressionJpegSegmentSanitizer.h', + 'ios/RCTImageCompressionJpegSegmentSanitizer.mm', 'ios/RCTImageCompressionOutput.h', 'ios/RCTImageCompressionOutput.mm', 'ios/RCTImageCompressionPipeline.h', @@ -145,6 +147,8 @@ const REQUIRED_FILES = [ 'test/ios-native/RCTImageCompressionOutputTests.mm', 'test/ios-native/RCTImageCompressionPipelineTests.mm', 'test/ios-native/RCTImageCompressionJpegMetadataTests.mm', + 'test/ios-native/RCTImageCompressionJpegSegmentSanitizerTests.mm', + 'test/ios-native/RCTImageCompressionLargeImageTests.mm', 'test/ios-native/RCTImageCompressionImageTransformerTests.mm', 'test/verificationArchitecture.test.ts', 'test/releaseEvidence.test.mjs', @@ -290,6 +294,7 @@ function runDoctor() { checkIOSImageDecoderAuthorities(), checkIOSImageTransformerAuthorities(), checkIOSJpegMetadataAuthorities(), + checkIOSJpegSegmentSanitizerAuthorities(), checkIOSImageEncoderAuthorities(), checkIOSOutputAuthorities(), checkIOSPipelineAuthorities(), @@ -1471,6 +1476,170 @@ function checkIOSJpegMetadataAuthorities() { }; } +function checkIOSJpegSegmentSanitizerAuthorities() { + const sanitizerHeader = readText( + 'ios/RCTImageCompressionJpegSegmentSanitizer.h' + ); + const sanitizerCore = readText( + 'ios/RCTImageCompressionJpegSegmentSanitizer.mm' + ); + const metadataHeader = readText('ios/RCTImageCompressionJpegMetadata.h'); + const metadataCore = readText('ios/RCTImageCompressionJpegMetadata.mm'); + const uiKitEncoder = readText( + 'ios/RCTImageCompressionUIKitImageEncoder.mm' + ); + const nativeTests = readText( + 'test/ios-native/RCTImageCompressionJpegSegmentSanitizerTests.mm' + ); + const largeImageTests = readText( + 'test/ios-native/RCTImageCompressionLargeImageTests.mm' + ); + const validationRunner = readText('scripts/ios-validation.mjs'); + const podspec = readText('react-native-image-compression-kit.podspec'); + const packageJson = readJson('package.json'); + const nativeTestNames = [ + ...nativeTests.matchAll(/static void (Test\w+)\(void\)/gu), + ].map((match) => match[1]); + const requiredNativeTests = [ + 'TestRemovesMetadataBeforeAndBetweenScans', + 'TestPreservesStuffedRestartAndNonSensitiveSegments', + 'TestBypassesSafeAndPreserveOutputs', + 'TestRejectsMalformedHeadersAndSegmentLengths', + 'TestRejectsMalformedScanTermination', + ]; + const largeImageRunnerStart = validationRunner.indexOf( + 'function runLargeImageTests()' + ); + const largeImageRunnerEnd = validationRunner.indexOf( + 'function runImageTransformerTests()', + largeImageRunnerStart + ); + const largeImageRunner = + largeImageRunnerStart >= 0 && largeImageRunnerEnd > largeImageRunnerStart + ? validationRunner.slice(largeImageRunnerStart, largeImageRunnerEnd) + : ''; + const structureChecks = [ + { + ok: + sanitizerHeader.includes( + '@interface RCTImageCompressionJpegSegmentSanitizer : NSObject' + ) && + sanitizerHeader.includes('sanitizeJpegData:(NSData *)jpegData') && + sanitizerHeader.includes('stripRequested:(BOOL)stripRequested'), + name: 'Foundation JPEG sanitizer boundary', + }, + { + ok: + !/#import <(?:UIKit|ImageIO|React)/u.test(sanitizerCore) && + sanitizerCore.includes( + 'if (!stripRequested) return [jpegData copy]' + ), + name: 'safe and preserve bypass outside platform codec APIs', + }, + { + ok: + sanitizerCore.includes( + 'bytes[0] != 0xff || bytes[1] != 0xd8' + ) && + sanitizerCore.includes( + 'marker == 0xe1 || marker == 0xed || marker == 0xfe' + ) && + sanitizerCore.includes( + 'segmentLength < 2 || segmentLength > length - cursor' + ) && + sanitizerCore.includes('if (!sawScan || cursor != length) return nil'), + name: 'strict SOI segment EOI and trailing-byte validation', + }, + { + ok: + sanitizerCore.includes('marker == 0x00 || marker == 0x01') && + sanitizerCore.includes('marker >= 0xd0 && marker <= 0xd7') && + sanitizerCore.includes('resumeEntropyAfterSegment = marker == 0xdc'), + name: 'entropy stuffing restart TEM and multi-scan preservation', + }, + { + ok: + sanitizerCore.includes( + 'segmentLength != 6 + (2 * componentCount)' + ) && + sanitizerCore.includes( + 'componentCount == 0 || componentCount > 4' + ) && + sanitizerCore.includes( + '!resumeEntropyAfterSegment || segmentLength != 4' + ), + name: 'SOS component table and DNL semantic validation', + }, + { + ok: + metadataHeader.includes( + '@property (nonatomic, readonly) BOOL stripRequested;' + ) && + metadataCore.includes( + 'initWithMetadataPolicy:request.metadataPolicy' + ) && + uiKitEncoder.includes( + '#import "RCTImageCompressionJpegSegmentSanitizer.h"' + ) && + uiKitEncoder.includes('stripRequested:metadata.stripRequested'), + name: 'metadata policy propagation into default ImageIO encoder', + }, + { + ok: + nativeTestNames.length === 5 && + requiredNativeTests.every((name) => nativeTestNames.includes(name)), + name: 'table-driven native JPEG sanitizer test authority', + }, + { + ok: + largeImageTests.includes( + 'TestStripSanitizesJpegWithoutChangingGeometry' + ) && + largeImageTests.includes( + '@"strip result metrics and persisted bytes use the sanitized JPEG"' + ) && + largeImageTests.includes( + '@"preserve output retains source TIFF artist metadata"' + ), + name: 'ImageIO decode geometry persistence and preserve integration', + }, + { + ok: + packageJson.scripts?.['example:ios:jpeg-sanitizer-test'] === + 'node scripts/ios-validation.mjs jpeg-sanitizer-test' && + validationRunner.includes("if (mode === 'jpeg-sanitizer-test')") && + validationRunner.includes('function runJpegSegmentSanitizerTests()') && + /runLargeImageTests\(\);\s*runJpegSegmentSanitizerTests\(\);/u.test( + validationRunner + ), + name: 'sanitizer native tests integrated into iOS smoke', + }, + { + ok: + largeImageRunner.includes('JPEG_SEGMENT_SANITIZER_CORE_SOURCE') && + validationRunner.includes( + "'RCTImageCompressionJpegSegmentSanitizer.mm'" + ) && + podspec.includes( + '"ios/RCTImageCompressionJpegSegmentSanitizer.h"' + ), + name: 'native linker CocoaPods and pod-refresh source inventory', + }, + ]; + const violations = structureChecks + .filter((check) => !check.ok) + .map((check) => check.name); + + return { + ok: violations.length === 0, + label: 'iOS JPEG segment sanitizer boundary and native tests are present', + detail: + violations.length === 0 + ? 'strip-only APP1/APP13/COM removal, strict marker/SOS/DNL parsing, ImageIO integration, and five native groups are aligned' + : `contract violations: ${violations.join(' | ')}`, + }; +} + function checkIOSImageEncoderAuthorities() { const encoderHeader = readText('ios/RCTImageCompressionImageEncoder.h'); const encoderCore = readText('ios/RCTImageCompressionImageEncoder.mm'); diff --git a/scripts/ios-validation.mjs b/scripts/ios-validation.mjs index 13b90b3..83014fc 100644 --- a/scripts/ios-validation.mjs +++ b/scripts/ios-validation.mjs @@ -126,6 +126,17 @@ const JPEG_METADATA_TEST_SOURCE = path.join( 'ios-native', 'RCTImageCompressionJpegMetadataTests.mm' ); +const JPEG_SEGMENT_SANITIZER_CORE_SOURCE = path.join( + ROOT, + 'ios', + 'RCTImageCompressionJpegSegmentSanitizer.mm' +); +const JPEG_SEGMENT_SANITIZER_TEST_SOURCE = path.join( + ROOT, + 'test', + 'ios-native', + 'RCTImageCompressionJpegSegmentSanitizerTests.mm' +); const IOS_VALIDATION_CONFIG = createIOSValidationConfig(process.env); const METRO_PORT = IOS_VALIDATION_CONFIG.metroPort; const METRO_READY_TIMEOUT_MS = IOS_VALIDATION_CONFIG.metroReadyTimeoutMs; @@ -204,6 +215,11 @@ async function main() { return; } + if (mode === 'jpeg-sanitizer-test') { + runJpegSegmentSanitizerTests(); + return; + } + if (mode === 'build') { checkIOSBuildEnvironment(); ensurePodsInstalled(); @@ -225,6 +241,7 @@ async function main() { runOutputTests(); runPipelineTests(); runLargeImageTests(); + runJpegSegmentSanitizerTests(); ensurePackageJSBuild(); ensurePodsInstalled(); const simulator = selectSimulator(); @@ -355,6 +372,7 @@ function runLargeImageTests() { path.join(ROOT, 'ios', 'RCTImageCompressionCGImage.mm'), path.join(ROOT, 'ios', 'RCTImageCompressionUIKitImageDecoder.mm'), path.join(ROOT, 'ios', 'RCTImageCompressionUIKitImageTransformer.mm'), + JPEG_SEGMENT_SANITIZER_CORE_SOURCE, path.join(ROOT, 'ios', 'RCTImageCompressionUIKitImageEncoder.mm'), path.join(ROOT, 'ios', 'RCTImageCompressionDefaultPipeline.mm'), LARGE_IMAGE_TEST_SOURCE, @@ -388,6 +406,17 @@ function runJpegMetadataTests() { ); } +function runJpegSegmentSanitizerTests() { + runNativeTests( + 'RCTImageCompressionJpegSegmentSanitizerTests', + [ + JPEG_SEGMENT_SANITIZER_CORE_SOURCE, + JPEG_SEGMENT_SANITIZER_TEST_SOURCE, + ], + ['Foundation'] + ); +} + function runNativeTests(executableName, sourceFiles, frameworks) { mustRun('xcrun', ['--sdk', 'macosx', '--show-sdk-path'], { failureHint: 'Install Xcode Command Line Tools with the macOS SDK.', @@ -539,6 +568,7 @@ function ensurePodsInstalled() { 'RCTImageCompressionImageEncoder.mm', 'RCTImageCompressionImageTransformer.mm', 'RCTImageCompressionJpegMetadata.mm', + 'RCTImageCompressionJpegSegmentSanitizer.mm', 'RCTImageCompressionUIKitImageDecoder.mm', 'RCTImageCompressionUIKitImageEncoder.mm', 'RCTImageCompressionUIKitImageTransformer.mm', diff --git a/test/ios-native/RCTImageCompressionJpegMetadataTests.mm b/test/ios-native/RCTImageCompressionJpegMetadataTests.mm index 10d7f12..8f6a098 100644 --- a/test/ios-native/RCTImageCompressionJpegMetadataTests.mm +++ b/test/ios-native/RCTImageCompressionJpegMetadataTests.mm @@ -160,6 +160,12 @@ static void TestReadsSourcePropertiesOnlyForSupportedPreserve(void) RCTImageCompressionJpegMetadataResult *preserve = [metadata prepareRequest:preserveRequest error:nil]; RCTMetadataAssert(preserve.preservingSourceMetadata, @"supported preserve marks result as preserving"); + RCTMetadataAssertEqualObjects( + preserve.metadataPolicy, + RCTImageCompressionKitPreserveMetadataPolicy, + @"supported preserve retains its policy" + ); + RCTMetadataAssert(!preserve.stripRequested, @"supported preserve does not request stripping"); RCTMetadataAssertEqualObjects(preserve.sourceProperties, expectedProperties, @"supported preserve retains reader properties"); RCTMetadataAssertEqualObjects(receivedSource, expectedSource, @"reader receives immutable request source bytes"); @@ -169,6 +175,11 @@ static void TestReadsSourcePropertiesOnlyForSupportedPreserve(void) error:nil ]; RCTMetadataAssert(!result.preservingSourceMetadata, @"safe and strip do not preserve source metadata"); + RCTMetadataAssertEqualObjects(result.metadataPolicy, policy, @"safe and strip retain the selected policy"); + RCTMetadataAssert( + result.stripRequested == [policy isEqualToString:RCTImageCompressionKitStripMetadataPolicy], + @"only strip requests marker sanitization" + ); RCTMetadataAssert(result.sourceProperties == nil, @"safe and strip expose no source properties"); } RCTMetadataAssert(readerCalls == 1, @"only supported preserve reads source properties"); @@ -224,6 +235,12 @@ static void TestNormalizesPreservedMetadataWithoutMutatingSource(void) initWithPreservingSourceMetadata:YES sourceProperties:source ]; + RCTMetadataAssertEqualObjects( + result.metadataPolicy, + RCTImageCompressionKitPreserveMetadataPolicy, + @"legacy preserving initializer maps to preserve policy" + ); + RCTMetadataAssert(!result.stripRequested, @"legacy preserving initializer does not strip"); NSDictionary *properties = [result destinationPropertiesForQuality:85 pixelWidth:640 diff --git a/test/ios-native/RCTImageCompressionJpegSegmentSanitizerTests.mm b/test/ios-native/RCTImageCompressionJpegSegmentSanitizerTests.mm new file mode 100644 index 0000000..0e543c0 --- /dev/null +++ b/test/ios-native/RCTImageCompressionJpegSegmentSanitizerTests.mm @@ -0,0 +1,241 @@ +#import + +#import "RCTImageCompressionJpegSegmentSanitizer.h" + +#include + +static NSUInteger RCTJpegSanitizerAssertionCount = 0; +static NSUInteger RCTJpegSanitizerFailureCount = 0; + +static void RCTJpegSanitizerAssert(BOOL condition, NSString *context) +{ + RCTJpegSanitizerAssertionCount += 1; + if (!condition) { + RCTJpegSanitizerFailureCount += 1; + fprintf(stderr, "FAIL: %s\n", context.UTF8String); + } +} + +static NSData *RCTJpegSanitizerData(std::initializer_list bytes) +{ + return [NSData dataWithBytes:bytes.begin() length:bytes.size()]; +} + +static void RCTJpegSanitizerAssertEqualData( + NSData *actual, + NSData *expected, + NSString *context +) { + RCTJpegSanitizerAssert( + actual != nil && [actual isEqualToData:expected], + [NSString stringWithFormat: + @"%@ (actual=%@ expected=%@)", + context, + actual, + expected + ] + ); +} + +static NSData *RCTMetadataRichMultiScanJpeg(void) +{ + return RCTJpegSanitizerData({ + 0xff, 0xd8, + 0xff, 0xe0, 0x00, 0x04, 0x10, 0x11, + 0xff, 0xe1, 0x00, 0x05, 0x20, 0x21, 0x22, + 0xff, 0xe2, 0x00, 0x05, 0x49, 0x43, 0x43, + 0xff, 0xed, 0x00, 0x03, 0x30, + 0xff, 0xfe, 0x00, 0x04, 0x40, 0x41, + 0xff, 0xdb, 0x00, 0x04, 0x50, 0x51, + 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0xa1, 0xff, 0x00, 0xa2, 0xff, 0xd0, 0xa3, + 0xff, 0xe1, 0x00, 0x04, 0x60, 0x61, + 0xff, 0xc4, 0x00, 0x04, 0x70, 0x71, + 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0xb1, 0xff, 0xd7, 0xb2, + 0xff, 0xed, 0x00, 0x03, 0x80, + 0xff, 0xfe, 0x00, 0x03, 0x81, + 0xff, 0xd9, + }); +} + +static void TestRemovesMetadataBeforeAndBetweenScans(void) +{ + NSData *actual = [RCTImageCompressionJpegSegmentSanitizer + sanitizeJpegData:RCTMetadataRichMultiScanJpeg() + stripRequested:YES + ]; + NSData *expected = RCTJpegSanitizerData({ + 0xff, 0xd8, + 0xff, 0xe0, 0x00, 0x04, 0x10, 0x11, + 0xff, 0xe2, 0x00, 0x05, 0x49, 0x43, 0x43, + 0xff, 0xdb, 0x00, 0x04, 0x50, 0x51, + 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0xa1, 0xff, 0x00, 0xa2, 0xff, 0xd0, 0xa3, + 0xff, 0xc4, 0x00, 0x04, 0x70, 0x71, + 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0xb1, 0xff, 0xd7, 0xb2, + 0xff, 0xd9, + }); + RCTJpegSanitizerAssertEqualData( + actual, + expected, + @"removes APP1, APP13, and COM around multiple scans" + ); +} + +static void TestPreservesStuffedRestartAndNonSensitiveSegments(void) +{ + NSData *input = RCTJpegSanitizerData({ + 0xff, 0xd8, + 0xff, 0xff, 0xe0, 0x00, 0x02, + 0xff, 0xe2, 0x00, 0x04, 0x11, 0x22, + 0xff, 0xec, 0x00, 0x04, 0x33, 0x44, + 0xff, 0x01, + 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0x55, 0xff, 0x00, 0x66, 0xff, 0xd1, 0x77, 0xff, 0x01, 0x88, + 0xff, 0xdc, 0x00, 0x04, 0x00, 0x08, 0x99, + 0xff, 0xff, 0xd9, + }); + NSData *actual = [RCTImageCompressionJpegSegmentSanitizer + sanitizeJpegData:input + stripRequested:YES + ]; + RCTJpegSanitizerAssertEqualData( + actual, + input, + @"preserves APP0, ICC/APP2, other APP markers, fill, TEM, DNL, stuffed bytes, and restart markers" + ); +} + +static void TestBypassesSafeAndPreserveOutputs(void) +{ + NSData *input = RCTMetadataRichMultiScanJpeg(); + NSData *safe = [RCTImageCompressionJpegSegmentSanitizer + sanitizeJpegData:input + stripRequested:NO + ]; + NSData *preserve = [RCTImageCompressionJpegSegmentSanitizer + sanitizeJpegData:input + stripRequested:NO + ]; + RCTJpegSanitizerAssertEqualData(safe, input, @"safe output bytes remain unchanged"); + RCTJpegSanitizerAssertEqualData( + preserve, + input, + @"preserve output bytes remain unchanged" + ); +} + +static void TestRejectsMalformedHeadersAndSegmentLengths(void) +{ + NSArray *invalid = @[ + [NSData data], + RCTJpegSanitizerData({0xff, 0xd8}), + RCTJpegSanitizerData({0x00, 0xd8, 0xff, 0xd9}), + RCTJpegSanitizerData({0xff, 0xd8, 0x00, 0xd9}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0x00, 0xff, 0xd9}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0x02, 0x00, 0x02, 0xff, 0xd9}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xd8, 0xff, 0xd9}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xd0, 0xff, 0xd9}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xe1}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xe1, 0x00}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xe1, 0x00, 0x01, 0xff, 0xd9}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xe1, 0x00, 0x05, 0x11, 0xff, 0xd9}), + RCTJpegSanitizerData({ + 0xff, 0xd8, + 0xff, 0xdc, 0x00, 0x04, 0x00, 0x08, + 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0xff, 0xd9, + }), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xda, 0x00, 0x02, 0xff, 0xd9}), + RCTJpegSanitizerData({ + 0xff, 0xd8, + 0xff, 0xda, 0x00, 0x08, 0x00, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0xff, 0xd9, + }), + RCTJpegSanitizerData({ + 0xff, 0xd8, + 0xff, 0xda, 0x00, 0x0a, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0x00, 0x00, + 0xff, 0xd9, + }), + RCTJpegSanitizerData({ + 0xff, 0xd8, + 0xff, 0xda, 0x00, 0x10, 0x05, + 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x04, 0x00, 0x05, 0x00, + 0x00, 0x3f, 0x00, + 0xff, 0xd9, + }), + RCTJpegSanitizerData({ + 0xff, 0xd8, + 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0x11, + 0xff, 0xdc, 0x00, 0x03, 0x00, + 0xff, 0xd9, + }), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xd9}), + ]; + for (NSUInteger index = 0; index < invalid.count; index += 1) { + RCTJpegSanitizerAssert( + [RCTImageCompressionJpegSegmentSanitizer + sanitizeJpegData:invalid[index] + stripRequested:YES + ] == nil, + [NSString stringWithFormat:@"rejects malformed header/segment case %lu", (unsigned long)index] + ); + } +} + +static void TestRejectsMalformedScanTermination(void) +{ + NSArray *invalid = @[ + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, 0x11}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, 0x11, 0xff}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, 0x11, 0xff, 0xd8}), + RCTJpegSanitizerData({0xff, 0xd8, 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, 0x11, 0xff, 0xd9, 0x00}), + RCTJpegSanitizerData({ + 0xff, 0xd8, + 0xff, 0xda, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x3f, 0x00, + 0x11, + 0xff, 0xe1, 0x00, 0x04, 0x22, 0x33, + 0x44, + 0xff, 0xd9, + }), + ]; + for (NSUInteger index = 0; index < invalid.count; index += 1) { + RCTJpegSanitizerAssert( + [RCTImageCompressionJpegSegmentSanitizer + sanitizeJpegData:invalid[index] + stripRequested:YES + ] == nil, + [NSString stringWithFormat:@"rejects malformed scan/termination case %lu", (unsigned long)index] + ); + } +} + +int main(void) +{ + @autoreleasepool { + TestRemovesMetadataBeforeAndBetweenScans(); + TestPreservesStuffedRestartAndNonSensitiveSegments(); + TestBypassesSafeAndPreserveOutputs(); + TestRejectsMalformedHeadersAndSegmentLengths(); + TestRejectsMalformedScanTermination(); + if (RCTJpegSanitizerFailureCount > 0) { + fprintf( + stderr, + "iOS JPEG segment sanitizer tests failed: %lu/%lu assertions failed.\n", + (unsigned long)RCTJpegSanitizerFailureCount, + (unsigned long)RCTJpegSanitizerAssertionCount + ); + return 1; + } + printf( + "iOS JPEG segment sanitizer tests passed: %lu assertions across 5 groups.\n", + (unsigned long)RCTJpegSanitizerAssertionCount + ); + } + return 0; +} diff --git a/test/ios-native/RCTImageCompressionLargeImageTests.mm b/test/ios-native/RCTImageCompressionLargeImageTests.mm index 9bfed19..fcb6c94 100644 --- a/test/ios-native/RCTImageCompressionLargeImageTests.mm +++ b/test/ios-native/RCTImageCompressionLargeImageTests.mm @@ -2,6 +2,7 @@ #import #import "RCTImageCompressionImageEncoder.h" +#import "RCTImageCompressionJpegSegmentSanitizer.h" #import "RCTImageCompressionOutput.h" #import "RCTImageCompressionPipeline.h" @@ -17,6 +18,14 @@ static void RCTLargeAssert(BOOL condition, NSString *message) } } +static void RCTLargeAssertEqualObjects(id actual, id expected, NSString *message) +{ + RCTLargeAssert( + actual == expected || [actual isEqual:expected], + [NSString stringWithFormat:@"%@ (actual=%@ expected=%@)", message, actual, expected] + ); +} + static NSData *RCTEncodeImage(CGImageRef image, NSString *type, NSDictionary *properties) { NSMutableData *data = [NSMutableData data]; @@ -122,6 +131,9 @@ static void RCTLargeAssert(BOOL condition, NSString *message) @{ (__bridge NSString *)kCGImageDestinationLossyCompressionQuality : @0.92, (__bridge NSString *)kCGImagePropertyOrientation : @(orientation), + (__bridge NSString *)kCGImagePropertyTIFFDictionary : @{ + (__bridge NSString *)kCGImagePropertyTIFFArtist : @"metadata-test-artist", + }, } ); CGImageRelease(image); @@ -198,16 +210,17 @@ static CGFloat RCTMeanAbsoluteRgbDifference(NSData *left, NSData *right) return path; } -static RCTImageCompressionPipelineResult *RCTCompress( +static RCTImageCompressionPipelineResult *RCTCompressWithMetadata( NSString *sourcePath, NSString *format, NSDictionary *resize, + NSString *metadataPolicy, RCTImageCompressionPipelineError **error ) { NSMutableDictionary *options = [@{ @"source" : @{ @"uri" : [NSURL fileURLWithPath:sourcePath].absoluteString }, @"output" : @{ @"format" : format, @"quality" : @82 }, - @"metadata" : @"safe", + @"metadata" : metadataPolicy, } mutableCopy]; if (resize != nil) options[@"resize"] = resize; RCTImageCompressionPipeline *pipeline = [RCTImageCompressionPipeline defaultPipeline]; @@ -217,6 +230,21 @@ static CGFloat RCTMeanAbsoluteRgbDifference(NSData *left, NSData *right) ]; } +static RCTImageCompressionPipelineResult *RCTCompress( + NSString *sourcePath, + NSString *format, + NSDictionary *resize, + RCTImageCompressionPipelineError **error +) { + return RCTCompressWithMetadata( + sourcePath, + format, + resize, + @"safe", + error + ); +} + static NSArray *RCTCenterPixel(NSString *outputURI) { NSURL *URL = [NSURL URLWithString:outputURI]; @@ -378,6 +406,157 @@ static void TestExifOrientationMatrixPreservesDisplayedLayout(void) } } +static void TestStripSanitizesJpegWithoutChangingGeometry(void) +{ + NSData *jpeg = RCTCreateOrientedQuadrantJpeg(6); + NSString *sourcePath = RCTWriteFixture(jpeg, @"jpg"); + CGImageRef expected = RCTCreateUprightThumbnail(jpeg); + RCTLargeAssert(expected != nil, @"strip integration creates upright reference"); + + RCTImageCompressionPipelineError *stripError = nil; + RCTImageCompressionPipelineResult *stripResult = RCTCompressWithMetadata( + sourcePath, + @"jpeg", + nil, + @"strip", + &stripError + ); + RCTLargeAssert( + stripResult != nil && stripError == nil, + @"strip integration compresses oriented JPEG" + ); + NSURL *stripURL = stripResult == nil + ? nil + : [NSURL URLWithString:stripResult.outputResult.uri]; + NSData *stripData = stripURL == nil ? nil : [NSData dataWithContentsOfURL:stripURL]; + NSData *resanitizedStripData = stripData == nil + ? nil + : [RCTImageCompressionJpegSegmentSanitizer + sanitizeJpegData:stripData + stripRequested:YES + ]; + RCTLargeAssert( + stripData.length > 0 && [stripData isEqualToData:resanitizedStripData], + @"strip output is a strict JPEG with no remaining APP1, APP13, or COM segments" + ); + RCTLargeAssert( + stripResult.outputResult.byteSize == stripData.length, + @"strip result metrics and persisted bytes use the sanitized JPEG" + ); + + CGImageSourceRef stripSource = stripData == nil + ? nil + : CGImageSourceCreateWithData((__bridge CFDataRef)stripData, nil); + CGImageRef stripImage = stripSource == nil + ? nil + : CGImageSourceCreateImageAtIndex(stripSource, 0, nil); + NSDictionary *stripProperties = stripSource == nil + ? nil + : CFBridgingRelease(CGImageSourceCopyPropertiesAtIndex(stripSource, 0, nil)); + if (stripSource != nil) CFRelease(stripSource); + RCTLargeAssert(stripImage != nil, @"strict strip output decodes"); + NSDictionary *stripTiff = stripProperties[ + (__bridge NSString *)kCGImagePropertyTIFFDictionary + ]; + RCTLargeAssert( + stripTiff[(__bridge NSString *)kCGImagePropertyTIFFArtist] == nil, + @"strip output removes source TIFF artist metadata" + ); + NSInteger stripOrientation = [stripProperties[ + (__bridge NSString *)kCGImagePropertyOrientation + ] integerValue]; + RCTLargeAssert( + stripOrientation == 0 || stripOrientation == 1, + @"strip output keeps normalized orientation metadata" + ); + + if (expected != nil && stripImage != nil) { + size_t expectedWidth = CGImageGetWidth(expected); + size_t expectedHeight = CGImageGetHeight(expected); + RCTLargeAssert( + CGImageGetWidth(stripImage) == expectedWidth && + CGImageGetHeight(stripImage) == expectedHeight && + stripResult.outputResult.width == expectedWidth && + stripResult.outputResult.height == expectedHeight, + @"strip output keeps normalized displayed dimensions" + ); + NSData *expectedPixels = RCTRenderedPixels( + expected, + expectedWidth, + expectedHeight + ); + NSData *stripPixels = RCTRenderedPixels( + stripImage, + expectedWidth, + expectedHeight + ); + RCTLargeAssert( + RCTMeanAbsoluteRgbDifference(expectedPixels, stripPixels) < 18.0, + @"strip output keeps upright displayed pixels" + ); + } + + RCTImageCompressionPipelineError *preserveError = nil; + RCTImageCompressionPipelineResult *preserveResult = RCTCompressWithMetadata( + sourcePath, + @"jpeg", + nil, + @"preserve", + &preserveError + ); + RCTLargeAssert( + preserveResult != nil && preserveError == nil, + @"preserve integration compresses oriented JPEG" + ); + NSURL *preserveURL = preserveResult == nil + ? nil + : [NSURL URLWithString:preserveResult.outputResult.uri]; + NSData *preserveData = preserveURL == nil + ? nil + : [NSData dataWithContentsOfURL:preserveURL]; + NSData *sanitizedPreserveData = preserveData == nil + ? nil + : [RCTImageCompressionJpegSegmentSanitizer + sanitizeJpegData:preserveData + stripRequested:YES + ]; + RCTLargeAssert( + sanitizedPreserveData != nil && + ![preserveData isEqualToData:sanitizedPreserveData], + @"preserve output keeps marker metadata that strip would remove" + ); + CGImageSourceRef preserveSource = preserveData == nil + ? nil + : CGImageSourceCreateWithData((__bridge CFDataRef)preserveData, nil); + NSDictionary *preserveProperties = preserveSource == nil + ? nil + : CFBridgingRelease( + CGImageSourceCopyPropertiesAtIndex(preserveSource, 0, nil) + ); + if (preserveSource != nil) CFRelease(preserveSource); + NSDictionary *preserveTiff = preserveProperties[ + (__bridge NSString *)kCGImagePropertyTIFFDictionary + ]; + RCTLargeAssertEqualObjects( + preserveTiff[(__bridge NSString *)kCGImagePropertyTIFFArtist], + @"metadata-test-artist", + @"preserve output retains source TIFF artist metadata" + ); + NSInteger preserveOrientation = [preserveProperties[ + (__bridge NSString *)kCGImagePropertyOrientation + ] integerValue]; + RCTLargeAssert( + preserveOrientation == 0 || preserveOrientation == 1, + @"preserve output keeps normalized orientation metadata" + ); + + if (expected != nil) CGImageRelease(expected); + if (stripImage != nil) CGImageRelease(stripImage); + RCTRemoveResult(stripResult); + RCTRemoveResult(preserveResult); + [[NSFileManager defaultManager] removeItemAtPath:sourcePath error:nil]; +} + static void TestCancellationRemovesPublishedOutput(void) { NSData *jpeg = RCTCreateSolidImageData(64, 48, YES, @"public.jpeg"); @@ -421,6 +600,7 @@ int main(void) TestDownsamples48MPBeforeTransform(); TestAlphaAndJpegBackgroundDecodeBack(); TestExifOrientationMatrixPreservesDisplayedLayout(); + TestStripSanitizesJpegWithoutChangingGeometry(); TestCancellationRemovesPublishedOutput(); if (RCTLargeImageFailures > 0) { fprintf(stderr, "iOS large-image tests failed: %lu/%lu assertions.\n", diff --git a/test/iosSourceContract.test.ts b/test/iosSourceContract.test.ts index cf13cfd..76f3054 100644 --- a/test/iosSourceContract.test.ts +++ b/test/iosSourceContract.test.ts @@ -64,6 +64,9 @@ describe('iOS source contract', () => { expect(podspec).toContain('"ios/RCTImageCompressionImageEncoder.h"'); expect(podspec).toContain('"ios/RCTImageCompressionImageTransformer.h"'); expect(podspec).toContain('"ios/RCTImageCompressionJpegMetadata.h"'); + expect(podspec).toContain( + '"ios/RCTImageCompressionJpegSegmentSanitizer.h"' + ); expect(podspec).toContain('"ios/RCTImageCompressionOutput.h"'); expect(podspec).toContain('"ios/RCTImageCompressionPipeline.h"'); expect(podspec).toContain('"ios/RCTImageCompressionInput.h"'); @@ -485,6 +488,8 @@ describe('iOS source contract', () => { '@interface RCTImageCompressionJpegMetadataResult : NSObject', '@interface RCTImageCompressionJpegMetadata : NSObject', 'RCTImageCompressionJpegSourcePropertyReader', + '@property (nonatomic, copy, readonly) NSString *metadataPolicy;', + '@property (nonatomic, readonly) BOOL stripRequested;', ]) { expect(header).toContain(identifier); } @@ -505,6 +510,12 @@ describe('iOS source contract', () => { expect(metadata).not.toMatch( /(?:CGImageDestinationCreateWithData|CGImageDestinationAddImage|CGImageDestinationFinalize|UIImage|maxBytes|writeToFile:|RCTPromise)/ ); + expect(metadata).toContain( + 'initWithMetadataPolicy:request.metadataPolicy' + ); + expect(metadata).toContain( + '_stripRequested = [metadataPolicy isEqualToString:RCTImageCompressionKitStripMetadataPolicy]' + ); expect(defaultPipeline).toContain( '[RCTImageCompressionJpegMetadata defaultMetadata]' ); @@ -541,6 +552,98 @@ describe('iOS source contract', () => { ); }); + it('strictly strips encoder-generated JPEG metadata markers only for strip policy', () => { + const header = readProjectFile( + 'ios/RCTImageCompressionJpegSegmentSanitizer.h' + ); + const sanitizer = readProjectFile( + 'ios/RCTImageCompressionJpegSegmentSanitizer.mm' + ); + const uiKitEncoder = readProjectFile( + 'ios/RCTImageCompressionUIKitImageEncoder.mm' + ); + const metadataTests = readProjectFile( + 'test/ios-native/RCTImageCompressionJpegMetadataTests.mm' + ); + const nativeTests = readProjectFile( + 'test/ios-native/RCTImageCompressionJpegSegmentSanitizerTests.mm' + ); + const largeImageTests = readProjectFile( + 'test/ios-native/RCTImageCompressionLargeImageTests.mm' + ); + const runner = readProjectFile('scripts/ios-validation.mjs'); + const podspec = readProjectFile( + 'react-native-image-compression-kit.podspec' + ); + const sanitizerTestNames = [ + ...nativeTests.matchAll(/static void (Test\w+)\(void\)/g), + ].map((match) => match[1]); + const largeImageRunner = runner.slice( + runner.indexOf('function runLargeImageTests()'), + runner.indexOf('function runImageTransformerTests()') + ); + + expect(header).toContain( + '@interface RCTImageCompressionJpegSegmentSanitizer : NSObject' + ); + expect(header).toContain('sanitizeJpegData:(NSData *)jpegData'); + expect(header).toContain('stripRequested:(BOOL)stripRequested'); + expect(sanitizer).not.toMatch(/#import <(?:UIKit|ImageIO|React)/); + expect(sanitizer).toContain('if (!stripRequested) return [jpegData copy]'); + expect(sanitizer).toContain('bytes[0] != 0xff || bytes[1] != 0xd8'); + expect(sanitizer).toContain('marker == 0xe1 || marker == 0xed || marker == 0xfe'); + expect(sanitizer).toContain('marker == 0x00 || marker == 0x01'); + expect(sanitizer).toContain('marker >= 0xd0 && marker <= 0xd7'); + expect(sanitizer).toContain('segmentLength < 2 || segmentLength > length - cursor'); + expect(sanitizer).toContain('segmentLength != 6 + (2 * componentCount)'); + expect(sanitizer).toContain('componentCount == 0 || componentCount > 4'); + expect(sanitizer).toContain( + '!resumeEntropyAfterSegment || segmentLength != 4' + ); + expect(sanitizer).toContain('if (!sawScan || cursor != length) return nil'); + expect(sanitizer).toContain('resumeEntropyAfterSegment = marker == 0xdc'); + expect(uiKitEncoder).toContain( + '#import "RCTImageCompressionJpegSegmentSanitizer.h"' + ); + expect(uiKitEncoder).toContain('stripRequested:metadata.stripRequested'); + expect(metadataTests).toContain( + '@"only strip requests marker sanitization"' + ); + expect(sanitizerTestNames).toEqual( + expect.arrayContaining([ + 'TestRemovesMetadataBeforeAndBetweenScans', + 'TestPreservesStuffedRestartAndNonSensitiveSegments', + 'TestBypassesSafeAndPreserveOutputs', + 'TestRejectsMalformedHeadersAndSegmentLengths', + 'TestRejectsMalformedScanTermination', + ]) + ); + expect(sanitizerTestNames).toHaveLength(5); + expect(largeImageTests).toContain( + 'TestStripSanitizesJpegWithoutChangingGeometry' + ); + expect(largeImageTests).toContain( + '@"preserve output retains source TIFF artist metadata"' + ); + expect(packageJson.scripts['example:ios:jpeg-sanitizer-test']).toBe( + 'node scripts/ios-validation.mjs jpeg-sanitizer-test' + ); + expect(runner).toContain("if (mode === 'jpeg-sanitizer-test')"); + expect(runner).toContain('function runJpegSegmentSanitizerTests()'); + expect(runner).toMatch( + /runLargeImageTests\(\);\s*runJpegSegmentSanitizerTests\(\);/ + ); + expect(largeImageRunner).toContain( + 'JPEG_SEGMENT_SANITIZER_CORE_SOURCE' + ); + expect(runner).toContain( + "'RCTImageCompressionJpegSegmentSanitizer.mm'" + ); + expect(podspec).toContain( + '"ios/RCTImageCompressionJpegSegmentSanitizer.h"' + ); + }); + it('isolates output encoding and target-size search behind native tables', () => { const header = readProjectFile('ios/RCTImageCompressionImageEncoder.h'); const encoder = readProjectFile('ios/RCTImageCompressionImageEncoder.mm'); diff --git a/test/packageContract.test.ts b/test/packageContract.test.ts index a9f22c6..04505f4 100644 --- a/test/packageContract.test.ts +++ b/test/packageContract.test.ts @@ -160,6 +160,8 @@ describe('npm package contract', () => { 'node scripts/ios-validation.mjs encoder-test', 'example:ios:metadata-test': 'node scripts/ios-validation.mjs metadata-test', + 'example:ios:jpeg-sanitizer-test': + 'node scripts/ios-validation.mjs jpeg-sanitizer-test', 'example:ios:transformer-test': 'node scripts/ios-validation.mjs transformer-test', 'example:ios:input-test': 'node scripts/ios-validation.mjs input-test', diff --git a/website/guide/files-metadata.md b/website/guide/files-metadata.md index 366e5ae..bac78ac 100644 --- a/website/guide/files-metadata.md +++ b/website/guide/files-metadata.md @@ -56,9 +56,15 @@ and backend effects. | Policy | Behavior | | --- | --- | | `safe` | Default. Avoids forwarding privacy-sensitive source metadata. Android copies a filtered JPEG EXIF allowlist; iOS re-encodes without source metadata. | -| `strip` | Re-encodes without copying source metadata. | +| `strip` | Re-encodes without copying source metadata. For iOS JPEG output, it also removes every APP1, APP13, and COM segment generated by ImageIO after encoding. | | `preserve` | Supported only for JPEG source to JPEG output. Orientation is rendered into pixels and normalized. | +On iOS, `safe` prevents source metadata from being forwarded but otherwise +keeps the encoder output unchanged. JPEG `strip` adds a strict marker-level +pass: malformed, truncated, or trailing encoder output fails with +`ERR_ENCODE_FAILED` instead of publishing a partially parsed file. APP0, ICC +profiles in APP2, and other non-target JPEG segments remain intact. + The application remains responsible for its own consent, retention, upload, and privacy disclosures. Verify output metadata if legal or product policy requires stronger guarantees than the package contract.