feat: align Android SDK with core update document API

Merged
SE
7d ago
+6980-4825

Align the Android SDK and WebView bridge with core’s update-document API, refresh FFI to prerelease/f62e1f4, and initialize Android TLS verification.

Validated release build/lint, HTTPS integration, and 33 UI E2E tests. Prepares the SDK for the Maven 0.0.1 release.


Summary by cubic

Aligns the Android SDK's WebView bridge with core's update-document API: refreshes the FFI to prerelease/f62e1f4, reworks bridge commands and JSON shapes, and adds Android TLS verification through WvbAndroid.initialize().

  • E2E drops the live playground remote in favor of a local fixture remote (passed via a new wvbRemoteUrl launch argument), updates the testbed from 0.2.0 to 0.4.x, and covers download, install, and rollback.
  • Adds an instrumented TLS integration test (via rustls-platform-verifier from a new raw GitHub Maven repo) and validated release build/lint plus 33 UI E2E tests.
  • Errors now carry core.* codes, and the source/remote/updater bridge commands follow the update-document flow (sourceListBuiltinBundles, sourceStageRemoteBundle, remoteGetUpdate, updaterDownload, updaterInstall, updaterRollback, etc.).

Breaking changes

  • Public API renames: makeBundleSource() → makeSource(), BundleSource → Source; WebViewBundleRemoteConfig.endpoint becomes baseUrl (with optional options); updater config now uses integrity, signature, and updateFilepath.
  • Bridge method names and payloads change for source/remote/updater clients; JSON keys like type move to source/status, and result kinds nest under result.type.

Summary by CodeRabbit

  • New Features
    • Added Android initialization for TLS support, including platform certificate verification.
    • Expanded bridge support for managing bundles, retrieving remote updates, staging changes, and installing or rolling back updates.
    • Added configurable remote URLs and update settings, including integrity and signature options.
  • Bug Fixes
    • Error responses now include available error codes, and invalid bridge parameters are reported explicitly.
  • Tests
    • Expanded Android end-to-end coverage for update, installation, rollback, and invalid-input scenarios.