Skip to content

Commit 8e467c1

Browse files
committed
pure proxies done
1 parent 187e1a1 commit 8e467c1

File tree

3 files changed

+34
-11
lines changed

3 files changed

+34
-11
lines changed

docs/keys/proxies/create-proxy.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ After the announcement waiting period has passed, the delegate account can now e
163163

164164
</details>
165165

166-
## Step 4: Remove a Proxy (Revoke Access)
166+
## Step 4: Remove a Proxy
167167

168168
1. In the navbar menu, navigate to **Developers****Extrinsics**.
169169
2. Under “using the selected account”, pick the delegator account.

docs/keys/proxies/pure-proxies.md

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ Use the `proxy::createPure` extrinsic to create a pure proxy as shown:
4646
3. Under “submit the following extrinsic”, choose the `proxy` pallet and call `createPure(proxyType, delay, index)`.
4747
4. Fill the parameters:
4848

49-
- `proxyType`: select `SmallTransfer`; this should allow us transfer amounts that do not exceed 0.5τ.
49+
- `proxyType`: select `Any`; this grants full permissions to the proxy, including the ability to make transfers and kill the proxy.
5050
- `delay`: optionally, include a delay in blocks.
5151
- `index`: leave as zero.
5252

@@ -90,7 +90,30 @@ Importing the proxy account makes it selectable in the Polkadot-JS web app UI.
9090
- Ensure the pure proxy account holds enough funds to cover both the transfer and associated fees.
9191
:::
9292

93+
### Kill a pure proxy
94+
95+
Pure proxies are killed using the `killPure` extrinsic as shown:
96+
97+
1. Go to **Developer****Extrinsics**.
98+
2. Under “using the selected account”, choose the pure proxy account.
99+
3. Select the `proxy` pallet and choose `killPure(spawner, proxyType, index, height, extIndex)`.
100+
4. Fill the parameters:
101+
- `spawner`: select the account that created the proxy from th UI.
102+
- `proxyType`: select the proxy type.
103+
- `index`: leave as `0`.
104+
- `height`: input the block number that the proxy was created at.
105+
- `extIndex`: input the extrinsic index of the `proxy.PureCreated` event.
106+
5. Click **Submit Transaction** and sign the transaction from the delegate account.
107+
108+
Ensure that all parameters are correct before making this call. The call will fail with a `Proxy.NoPermission` error if any parameter is invalid or if the origin account lacks permission to perform the action.
109+
110+
:::info Removing vs. Killing a Pure Proxy
111+
Killing a pure proxy permanently deletes the account and releases its reserved deposit. Removing a proxy, on the other hand, only detaches it from the account that initiates the transaction. The pure proxy remains on-chain and can still be used if it has other proxies linked to it, but it becomes inactive once all proxy relationships are removed. For more information on how to remove a proxy, see [Remove a proxy](create-proxy.md#step-4-remove-a-proxy).
112+
:::
113+
93114
## Troubleshooting
94115

95-
- funds unavailable
96-
- cant sign with locked key pair: using pure proxy as signer
116+
- `Token.FundsUnavailable`: Ensure thhat the pure proxy account has been funded and has enough funds to cover the transfer.
117+
- `proxy.NotProxy`: Ensure you’re executing the pure proxy correctly—from the creator account and referencing the pure proxy account as `real`.
118+
- `Proxy.NoPermission`: The `killPure` call is not permitted under the current.
119+
- `system.CallFiltered`: The call is not permitted under the current `ProxyType`.

sidebars.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,13 @@ const sidebars = {
7676
"resources/community-links",
7777
],
7878
},
79+
{
80+
type: "category",
81+
label: "Research",
82+
collapsible: true,
83+
collapsed: true,
84+
items: ["research/synchronized-halving", "research/halvings-problem"],
85+
},
7986
{
8087
type: "category",
8188
label: "Wallets and Keys",
@@ -98,13 +105,6 @@ const sidebars = {
98105
"keys/schedule-coldkey-swap",
99106
],
100107
},
101-
{
102-
type: "category",
103-
label: "Research",
104-
collapsible: true,
105-
collapsed: true,
106-
items: ["research/synchronized-halving", "research/halvings-problem"],
107-
},
108108
{
109109
type: "category",
110110
label: "Staking/Delegation",

0 commit comments

Comments
 (0)