Hi
We are considering exposing a small safe wrapper around the current Rust-only RGB PSBT primitives through UniFFI, using only binding-friendly types: PSBT strings, asset ID strings, simple DTOs, and consignment file paths.
The wrapper would avoid exposing raw internals like Fascia, RgbTransfer, BuilderSeal, raw color_psbt, or raw consume_fascia.
We’d appreciate your feedback on the system design:
- Should these primitives be exposed through UniFFI at all, or kept Rust-only?
- Is a higher-level safe wrapper the right approach, instead of exposing raw RGB types?
- Should consignments remain file-path based at the binding boundary?
- Should static blinding be required explicitly in the binding API?
- What invariants should the binding layer validate before calling the Rust primitives?
- Is there a better API shape you would recommend for non-Rust consumers?
The final goal for this is to have an onchain rgb swap with PSBT approach, looking forward to your response.
Hi
We are considering exposing a small safe wrapper around the current Rust-only RGB PSBT primitives through UniFFI, using only binding-friendly types: PSBT strings, asset ID strings, simple DTOs, and consignment file paths.
The wrapper would avoid exposing raw internals like
Fascia,RgbTransfer,BuilderSeal, rawcolor_psbt, or rawconsume_fascia.We’d appreciate your feedback on the system design:
The final goal for this is to have an onchain rgb swap with PSBT approach, looking forward to your response.