field_ios

In-the-field app for Radroots on iOS
git clone https://radroots.dev/git/field_ios.git
Log | Files | Refs | README | LICENSE

commit 8f06cfe1bc6a4a8c9b0748cdb2943d2e879c0fc8
parent fa86c989087da82a902f8f439b7761c850eeaa71
Author: triesap <tyson@radroots.org>
Date:   Thu,  6 Aug 2026 19:31:13 +0000

mobile: preserve swift ffi module identities

- restore RadrootsKitBindings as the Swift module
- restore RadrootsFFI as the native FFI module
- keep canonical radroots_mobile package ownership internal
- assert exact host-visible UniFFI configuration

Diffstat:
Mcore/crates/tera_ffi/tests/uniffi_contract.rs | 9+++++++++
Mcore/crates/tera_ffi/uniffi.toml | 4++--
2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/core/crates/tera_ffi/tests/uniffi_contract.rs b/core/crates/tera_ffi/tests/uniffi_contract.rs @@ -1,5 +1,14 @@ use radroots_mobile_ffi::{RadrootsAppError, RadrootsRuntime, SdkErrorRecord}; +#[test] +fn swift_module_names_preserve_the_host_contract() { + let config = include_str!("../uniffi.toml"); + assert_eq!( + config, + "[bindings.swift]\nmodule_name = \"RadrootsKitBindings\"\nffi_module_name = \"RadrootsFFI\"\n" + ); +} + #[tokio::test] async fn final_mobile_abi_uses_async_sdk_dtos_and_versioned_errors() { let runtime = RadrootsRuntime::new().expect("runtime"); diff --git a/core/crates/tera_ffi/uniffi.toml b/core/crates/tera_ffi/uniffi.toml @@ -1,3 +1,3 @@ [bindings.swift] -module_name = "RadrootsMobileCoreBindings" -ffi_module_name = "RadrootsMobileCoreFFI" +module_name = "RadrootsKitBindings" +ffi_module_name = "RadrootsFFI"