hyperledger-identus / hyperledger-identus/sdk-rust
Bindings React Native: qualify a UniFFI-compatible TurboModule adapter
- Dominant language
- Rust
- Stars
- 0
- Forks
- 0
- Avg merge
- 39m
- Merged PRs (30d)
- 153
Description
Parent: #163. Research decision: #215. ADR: `docs/adr/0097-use-proc-macro-uniffi-for-the-first-native-did-slice.md`.
## Question
Can a maintained `uniffi-bindgen-react-native` release consume the SDK's selected UniFFI line and provide a production-worthy React Native New Architecture/TurboModule adapter without coupling generic crates to JSI or mobile build systems?
## Current stop condition
The assessed `uniffi-bindgen-react-native 0.31.0-5` source at `0f7fc67e8dd98ad43af3787d45c3c570d469a145` is MPL-2.0 and pins UniFFI 0.31. The SDK native direction selected in #215 uses UniFFI 0.32. Do not mix these generator/runtime contracts or depend on an unreleased branch.
## Scope
- Reassess only after an exact released UniFFI 0.32-compatible candidate exists.
- Pin npm/Cargo artifacts, source revisions, licenses, Node/Yarn/React Native versions and dependency cones.
- Keep Rust domain and native binding crates free of JSI/TurboModule types.
- Spike the bounded DID/DID URL surface on iOS and Android New Architecture runtimes.
- Test Metro/codegen, async/runtime/thread behavior, exceptions, memory ownership, generated API drift and package reproducibility.
## Acceptance
A research OpenSpec/ADR records go/no-go, exact iOS/Android runtime evidence, security/native/unsafe and maintenance posture, rollback and reconsideration triggers. No support claim, production dependency, downstream edit, publication or release occurs in the research issue.
Contributor guide
Research direction
Start with docs/adr/0097-use-proc-macro-uniffi-for-the-first-native-did-slice.md and research decision #215, then verify that an exact released UniFFI 0.32-compatible candidate exists; do not mix it with the assessed 0.31.0-5 source. Spike the bounded DID/DID URL surface on iOS and Android New Architecture runtimes, testing the listed runtime, ownership, exception, drift and reproducibility concerns. Done means an OpenSpec/ADR records go/no-go, exact runtime evidence, maintenance and security posture, rollback and reconsideration triggers.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, ios, react-native, rust
- Domain
- api, mobile-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100