From 6e5ff295d9145da46620947e75f2a262983c5bfe Mon Sep 17 00:00:00 2001 From: Kurdistan Tech Ministry Date: Mon, 2 Feb 2026 17:43:29 +0300 Subject: [PATCH] fix: add AuthorizeCall user extension to signing registry Added PEZKUWI_USER_EXTENSIONS with AuthorizeCall to the signing request registry. This ensures proper transaction signing for PezkuwiChain networks even when chain metadata is not available. Without this fix, transactions fail with "bad signature" errors because the AuthorizeCall extension is not properly included in the signed payload. --- .../extension-ui/src/Popup/Signing/Request/index.tsx | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/extension-ui/src/Popup/Signing/Request/index.tsx b/packages/extension-ui/src/Popup/Signing/Request/index.tsx index 259b9fe..7080cd9 100644 --- a/packages/extension-ui/src/Popup/Signing/Request/index.tsx +++ b/packages/extension-ui/src/Popup/Signing/Request/index.tsx @@ -39,6 +39,14 @@ export const CMD_SIGN_MESSAGE = 3; // keep it global, we can and will re-use this across requests const registry = new TypeRegistry(); +// PezkuwiChain requires AuthorizeCall signed extension for all transactions +const PEZKUWI_USER_EXTENSIONS = { + AuthorizeCall: { + extrinsic: {}, + payload: {} + } +}; + function isRawPayload (payload: SignerPayloadJSON | SignerPayloadRaw): payload is SignerPayloadRaw { return !!(payload as SignerPayloadRaw).data; } @@ -67,7 +75,8 @@ export default function Request ({ account: { accountIndex, addressOffset, genes payload: null }); } else { - registry.setSignedExtensions(payload.signedExtensions); + // Always include PezkuwiChain user extensions + registry.setSignedExtensions(payload.signedExtensions, PEZKUWI_USER_EXTENSIONS); setData({ hexBytes: null,