fix: add AuthorizeCall signed extension for PezkuwiChain

PezkuwiChain requires AuthorizeCall as the first signed extension in
the TxExtension tuple. This commit adds:

- AuthorizeCall.kt: FixedValueTransactionExtension with empty payload
  (PhantomData equivalent)
- CustomTransactionExtensions: Detects PezkuwiChain via metadata and
  adds AuthorizeCall extension
- ExtrinsicBuilderFactory/ExtrinsicSplitter: Uses CustomTransactionExtensions

Without this fix, transactions fail with "bad signature" errors and
fee calculation (payment_queryInfo) fails with WASM trap errors.
This commit is contained in:
2026-02-02 17:43:59 +03:00
parent a5cc31f82c
commit bb189aeb8a
4 changed files with 54 additions and 2 deletions
@@ -153,7 +153,7 @@ internal class RealExtrinsicSplitter @Inject constructor(
setTransactionExtension(CheckSpecVersion(0))
setTransactionExtension(CheckTxVersion(0))
CustomTransactionExtensions.defaultValues().forEach(::setTransactionExtension)
CustomTransactionExtensions.defaultValues(runtime).forEach(::setTransactionExtension)
call(call)