A wallet-chain-substrate adapter crate (or module of wallet-data; decide and note why) carrying a subxt Config whose Signature is DilithiumSignatureScheme, whose address is AccountId32, and whose extrinsic params include ReversibleTransactionExtension and WormholeProofRecorderExtension (no signed bytes). Build the signing payload offline, hand it to wallet_core::Signer with the profile's context, and assemble the signed extrinsic with the signature-with-public-key wire form. Prefer subxt's dynamic API for calls and storage so a runtime upgrade does not require regenerating code; keep a metadata blob per profile only for tests.
Acceptance
An extrinsic built and signed here for a Balances::transfer_keep_alive is accepted by a dev node (author_submitExtrinsic) and by Heisenberg. The same test with the context deliberately empty is rejected by the node.
Depends on
Chain profiles; ML-DSA key schemes.
Parent: #3
## Scope
A `wallet-chain-substrate` adapter crate (or module of `wallet-data`; decide and note why) carrying a subxt `Config` whose `Signature` is `DilithiumSignatureScheme`, whose address is `AccountId32`, and whose extrinsic params include `ReversibleTransactionExtension` and `WormholeProofRecorderExtension` (no signed bytes). Build the signing payload offline, hand it to `wallet_core::Signer` with the profile's context, and assemble the signed extrinsic with the signature-with-public-key wire form. Prefer subxt's dynamic API for calls and storage so a runtime upgrade does not require regenerating code; keep a metadata blob per profile only for tests.
## Acceptance
An extrinsic built and signed here for a `Balances::transfer_keep_alive` is accepted by a dev node (`author_submitExtrinsic`) and by Heisenberg. The same test with the context deliberately empty is rejected by the node.
## Depends on
Chain profiles; ML-DSA key schemes.
grenade
added the child label 2026-09-15 12:39:01 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Parent: #3
Scope
A
wallet-chain-substrateadapter crate (or module ofwallet-data; decide and note why) carrying a subxtConfigwhoseSignatureisDilithiumSignatureScheme, whose address isAccountId32, and whose extrinsic params includeReversibleTransactionExtensionandWormholeProofRecorderExtension(no signed bytes). Build the signing payload offline, hand it towallet_core::Signerwith the profile's context, and assemble the signed extrinsic with the signature-with-public-key wire form. Prefer subxt's dynamic API for calls and storage so a runtime upgrade does not require regenerating code; keep a metadata blob per profile only for tests.Acceptance
An extrinsic built and signed here for a
Balances::transfer_keep_aliveis accepted by a dev node (author_submitExtrinsic) and by Heisenberg. The same test with the context deliberately empty is rejected by the node.Depends on
Chain profiles; ML-DSA key schemes.