• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

iotaledger / iota / 26925129393

03 Jun 2026 01:06PM UTC coverage: 66.98% (-0.06%) from 67.038%
26925129393

push

github

web-flow
feat: replace `MultiSig` with SDK version (#11505)

This PR is part of the ongoing effort to consolidate blockchain types in
the
canonical `iota-rust-sdk`. Types that are needed by both clients/SDK
consumers
and the node should live in `iota-rust-sdk` and be imported from there,
instead
of being defined twice (once in `iota-types`, once in the SDK).

Following [#11433](https://github.com/iotaledger/iota/pull/11433) for
`ProgrammableTransaction`, this PR replaces the in-house `MultiSig` and
`MultiSigPublicKey` (previously defined in `iota-types::multisig`) with
the SDK
versions. To keep the diff small and avoid touching every call site, the
SDK
types are re-exported from `iota-types::multisig` under the original
names, so
most existing imports continue to work unchanged.

## Description of change

- `iota-types::multisig::MultiSig` is now a re-export of
  `iota_sdk_types::crypto::MultisigAggregatedSignature`, and
  `iota-types::multisig::MultiSigPublicKey` a re-export of
  `iota_sdk_types::crypto::MultisigCommittee`. The companion types
`MultisigMember`, `MultisigMemberSignature`, `BitmapUnit`,
`ThresholdUnit`,
  and `WeightUnit` are also re-exported from `iota-sdk-types`. The local
  `MultiSig { sigs, bitmap, multisig_pk, bytes }` struct and its
  `PartialEq`/`Eq`/`Hash` impls have been removed.
- Signature verification in `impl AuthenticatorTrait for MultiSig` now
goes
through `iota_sdk_crypto::multisig::MultisigVerifier` and reads members
/
  signatures / indices off the SDK type (`committee()`, `signatures()`,
  `get_indices()`) instead of the removed inherent fields. The
  passkey-in-multisig gate keeps the same semantics, now expressed via
  `has_scheme_signatures(SignatureScheme::PasskeyAuthenticator)`.
- API shape changes that callers need to know about:
- `MultiSigPublicKey::new(members: Vec<MultisigMember>, threshold)`
instead of
    `MultiSigPublicKey::new(pks, weights, threshold)`.
  - `MultiSig::new(sigs, pk)` instead of `MultiSig::combine... (continued)

66 of 136 new or added lines in 9 files covered. (48.53%)

647 existing lines in 43 files now uncovered.

152817 of 228154 relevant lines covered (66.98%)

461507.56 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

91.26
/crates/iota-core/src/execution_cache/writeback_cache.rs


Source Not Available

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc