Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Signed Extras is handled inside the NET API #22

Open
darkfriend77 opened this issue Sep 1, 2022 · 0 comments
Open

Signed Extras is handled inside the NET API #22

darkfriend77 opened this issue Sep 1, 2022 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@darkfriend77
Copy link
Member

darkfriend77 commented Sep 1, 2022

Description

Since signed extras is handled inside the NET API, and it's static, we can't use different signed extras in the SDK for different nodes, this is causing currently issues in accessing Polakdot, Kusama and other Parachains that use the old ChargeTransactionPayment instead of the new ChargeAssetTxPayment.

image.png

Task

Make the signed extras able to be generated in the Toolchain from the metadata exposed.

ex. from Kusama

   "Extrinsic": {
      "TypeId": 768,
      "Version": 4,
      "SignedExtensions": [
        {
          "SignedIdentifier": "CheckNonZeroSender",
          "SignedExtType": 770,
          "AddSignedExtType": 57
        },
        {
          "SignedIdentifier": "CheckSpecVersion",
          "SignedExtType": 771,
          "AddSignedExtType": 4
        },
        {
          "SignedIdentifier": "CheckTxVersion",
          "SignedExtType": 772,
          "AddSignedExtType": 4
        },
        {
          "SignedIdentifier": "CheckGenesis",
          "SignedExtType": 773,
          "AddSignedExtType": 9
        },
        {
          "SignedIdentifier": "CheckMortality",
          "SignedExtType": 774,
          "AddSignedExtType": 9
        },
        {
          "SignedIdentifier": "CheckNonce",
          "SignedExtType": 776,
          "AddSignedExtType": 57
        },
        {
          "SignedIdentifier": "CheckWeight",
          "SignedExtType": 777,
          "AddSignedExtType": 57
        },
        {
          "SignedIdentifier": "ChargeTransactionPayment",
          "SignedExtType": 778,
          "AddSignedExtType": 57
        }
      ]
    },

ex. from Substrate

    "Extrinsic": {
      "TypeId": 664,
      "Version": 4,
      "SignedExtensions": [
        {
          "SignedIdentifier": "CheckNonZeroSender",
          "SignedExtType": 669,
          "AddSignedExtType": 29
        },
        {
          "SignedIdentifier": "CheckSpecVersion",
          "SignedExtType": 670,
          "AddSignedExtType": 4
        },
        {
          "SignedIdentifier": "CheckTxVersion",
          "SignedExtType": 671,
          "AddSignedExtType": 4
        },
        {
          "SignedIdentifier": "CheckGenesis",
          "SignedExtType": 672,
          "AddSignedExtType": 9
        },
        {
          "SignedIdentifier": "CheckMortality",
          "SignedExtType": 673,
          "AddSignedExtType": 9
        },
        {
          "SignedIdentifier": "CheckNonce",
          "SignedExtType": 675,
          "AddSignedExtType": 29
        },
        {
          "SignedIdentifier": "CheckWeight",
          "SignedExtType": 676,
          "AddSignedExtType": 29
        },
        {
          "SignedIdentifier": "ChargeAssetTxPayment",
          "SignedExtType": 677,
          "AddSignedExtType": 29
        }
      ]
    },

Acceptance Criteria

  • Toolchain can add a node specific signature of the extrinsic.
@darkfriend77 darkfriend77 added the enhancement New feature or request label Sep 1, 2022
@darkfriend77 darkfriend77 self-assigned this Sep 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant