Changelog
1.1.0 — June 2026
Second stable release. Adds two new LLM example apps, a zero-code ExecuTorch interceptor, GenerationConfig and ApiMeta telemetry types, gzip batch compression, and a suite of bug fixes and performance improvements.
New zero-code interceptor
- ExecuTorch LLM (
.execuTorchLLM) — intercepts on-device LLM inference through ExecuTorch at the ObjC runtime level without any code changes in the host app
New SDK types
GenerationConfig— typed struct inCoreTypescoveringtemperature,top_p,top_k,max_tokens,repetition_penalty,frequency_penalty,presence_penalty,seed, andstop_sequences_count; matches thegeneration_configevent schemaApiMeta— capturesresolved_model_id,system_fingerprint, andservice_tierfrom LLM API responsesInterceptorspublicOptionSet— set-literal syntax for selecting which zero-code interceptors to install
Compression and diagnostics
- Gzip compression for outgoing event batches, with benchmarks and tests
SDKDiagnostics— exposes memory usage, queue size, andjsonSerialisationMsapp_versionis now auto-detected from the host bundle; no manual configuration needed
New examples
- LLaMA.cpp example — on-device LLM inference with Liquid AI model catalog sourced from LEAP, Metal tensor warmup on load, and accurate per-phase performance telemetry (tokenize / prefill / generation ms, tok/s)
- ExecuTorch LLM example — on-device LLM inference via ExecuTorch with WildEdge telemetry
CarScannerExample improvements
- Settings popup (gear button left of Scan) with persistent image size (256 / 512 / 1024 / 2048 px) and compression quality (0.1–1.0) controls; shows estimated upload file size with a background-computed preview
- Thumbs up / down feedback buttons per inference result
- Enriched inference telemetry and structured error reporting
run_idlinks Both-mode inferences across providers in a single session- Rebranded to WE Scan
Bug fixes
trackInferencedurationMsin ONNX processor paths now reports actual ML processing time instead of audio recording lengthsanitizeFloatsrounds allDouble/Floatvalues to 3 decimal places, eliminating full-precision JSON output such as0.90000000000000002WILDEDGE_DEBUGis now correctly read fromInfo.plistinBuilder.debugand during auto-initORTInterceptorTestshardened against concurrentactiveClientoverwrites- Release build failure fixed:
@_cdecl("wildedge_auto_init")changed topublicto prevent dead-stripping under-Owholemodule DetectionOutputMetaincludes absolute pixel bounding box for car inference events- Device model resolves to marketing name via
sysctlbyname; raw hardware identifier remains accessible ISO8601DateFormattercached inisoNow()— 16× fasterbuildInferenceEvent
Infrastructure
- BlobStore-backed event queues with NDJSON disk persistence for crash durability
- Binary size report added to CI pipeline
Full Changelog: v1.0.11...v1.1.0