You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/keys/proxies/create-proxy.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -94,7 +94,7 @@ After submitting the transaction, check the Polkadot.JS web app's **Explorer** p
94
94
95
95
:::warning
96
96
97
-
- With the SmallTransfer proxy type, transfers are limited to less than 0.5 TAO (500,000,000 RAO). Use the Transfer proxy type for amounts above this limit.
97
+
- With the SmallTransfer proxy type, transfers are limited to less than 0.5 TAO (500,000,000 RAO). Use the Transfer proxy type for amounts above this limit. See [source code: SmallTransfer limit definition](https://github.com/opentensor/subtensor/blob/main/common/src/lib.rs#L43).
98
98
- The delegate account must hold enough funds to cover transaction fees, which are approximately 25 µTAO (0.000025 TAO).
99
99
:::
100
100
@@ -178,9 +178,9 @@ After the announcement waiting period has passed, the delegate account can now e
178
178
179
179
## Troubleshooting
180
180
181
-
-`proxy.Duplicate`: A proxy with the same configuration already exists on the real account.
182
-
-`proxy.Unannounced`: A non-zero delay proxy requires an announcement; announce and wait the delay.
183
-
-`proxy.Unproxyable`/`system.CallFiltered`: The call is not permitted under the current `ProxyType`.
184
-
-`proxy.TooMany`: You exceeded `MaxProxies` or `MaxPending`. Remove unused proxies/announcements.
185
-
-`proxy.NotProxy`: Ensure you’re submitting from the delegate account and referencing the correct real account.
181
+
-`proxy.Duplicate`: A proxy with the same configuration already exists on the real account. See [source code: `Duplicate` error](https://github.com/opentensor/subtensor/blob/main/pallets/proxy/src/lib.rs#L739).
182
+
-`proxy.Unannounced`: A non-zero delay proxy requires an announcement; announce and wait the delay. See [source code: `Unannounced` error](https://github.com/opentensor/subtensor/blob/main/pallets/proxy/src/lib.rs#L743).
183
+
-`proxy.Unproxyable`/`system.CallFiltered`: The call is not permitted under the current `ProxyType`. See [source code: `Unproxyable` error](https://github.com/opentensor/subtensor/blob/main/pallets/proxy/src/lib.rs#L737).
184
+
-`proxy.TooMany`: You exceeded `MaxProxies` or `MaxPending`. Remove unused proxies/announcements. See [source code: `TooMany` error](https://github.com/opentensor/subtensor/blob/main/pallets/proxy/src/lib.rs#L731).
185
+
-`proxy.NotProxy`: Ensure you're submitting from the delegate account and referencing the correct real account. See [source code: `NotProxy` error](https://github.com/opentensor/subtensor/blob/main/pallets/proxy/src/lib.rs#L735).
186
186
-`Token.FundsUnavailable`: Ensure that your real account has enough available funds to cover the transaction.
|`Governance`| Covers both senate and triumvirate governance operations. |
71
71
|`Staking`| Allows staking-related operations. |
@@ -77,6 +77,8 @@ The following table shows the available `ProxyType` options and their descriptio
77
77
|`SwapHotkey`| Allows hotkey swap operations. |
78
78
|`SubnetLeaseBeneficiary`| Allows management of leased subnets. |
79
79
80
+
See [source code: ProxyType enum definition](https://github.com/opentensor/subtensor/blob/main/common/src/lib.rs#L144-L162) and [source code: proxy filtering implementation](https://github.com/opentensor/subtensor/blob/main/runtime/src/lib.rs#L678-L884).
81
+
80
82
### Choosing the Right `ProxyType`
81
83
82
84
When setting up proxies, always follow the principle of least privilege. Choose the narrowest `ProxyType` that covers the intended actions instead of defaulting to broad permissions. For example:
@@ -92,8 +94,8 @@ Only use the unrestricted `Any` type when no other option fits. If a proxy call
92
94
93
95
To ensure scalability and prevent abuse, proxy usage is subject to certain limits as shown:
94
96
95
-
-**`MaxProxies`**: This refers to the maximum number of delegate accounts that can be linked to a single real account. Each account can register up to 20 proxies in total. See [source code](https://github.com/opentensor/subtensor/blob/main/runtime/src/lib.rs#L644).
96
-
-**`MaxPending`**: This refers to the maximum number of pending announcements that a delegate account can have. This limit helps prevent excessive queuing. Each account can have up to 75 pending announcements at a time. See [source code](https://github.com/opentensor/subtensor/blob/main/runtime/src/lib.rs#L645).
97
+
-**`MaxProxies`**: This refers to the maximum number of delegate accounts that can be linked to a single real account. Each account can register up to 20 proxies in total. See [source code: MaxProxies configuration](https://github.com/opentensor/subtensor/blob/main/runtime/src/lib.rs#L670).
98
+
-**`MaxPending`**: This refers to the maximum number of pending announcements that a delegate account can have. This limit helps prevent excessive queuing. Each account can have up to 75 pending announcements at a time. See [source code: MaxPending configuration](https://github.com/opentensor/subtensor/blob/main/runtime/src/lib.rs#L671).
Copy file name to clipboardExpand all lines: docs/keys/proxies/pure-proxies.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -25,7 +25,7 @@ All transactions involving a pure proxy must be signed by the delegator account.
25
25
When submitting calls with the `proxy(real, forceProxyType, call)` extrinsic, the pure proxy account is passed as the `real` argument, while the delegator signs the transaction. This effectively reverses the usual proxy relationship where the proxy account only authorizes the transaction, while the real account appears as the origin on chain.
26
26
27
27
:::info
28
-
You can modify who signs for a pure proxy by assigning another account as its _any proxy_. This is done by executing a proxy call that creates a standard proxy with the `Any` proxy type. The new account can then sign on behalf of the pure proxy—for example, when updating signers in a multisig wallet.
28
+
You can modify who signs for a pure proxy by assigning another account as its _any proxy_. This is done by executing a proxy call that creates a standard proxy with the `Any` proxy type. The new account can then sign on behalf of the pure proxy—for example, when updating signers in a multisig wallet. See [source code: pure proxy account generation](https://github.com/opentensor/subtensor/blob/main/pallets/proxy/src/lib.rs#L827-L850).
29
29
:::
30
30
31
31
## Prerequisites
@@ -39,7 +39,7 @@ You can modify who signs for a pure proxy by assigning another account as its _a
39
39
40
40
## Create a pure proxy
41
41
42
-
Use the `proxy::createPure` extrinsic to create a pure proxy as shown:
42
+
Use the `proxy::createPure` extrinsic to create a pure proxy as shown. See [source code: `createPure` implementation](https://github.com/opentensor/subtensor/blob/main/pallets/proxy/src/lib.rs#L328-L360):
43
43
44
44
1. In the navbar menu, navigate to **Developers** → **Extrinsics**.
45
45
2. Under “using the selected account”, pick the delegator account.
@@ -92,7 +92,7 @@ Importing the proxy account makes it selectable in the Polkadot-JS web app UI.
92
92
93
93
### Kill a pure proxy
94
94
95
-
Pure proxies are killed using the `killPure` extrinsic as shown:
95
+
Pure proxies are killed using the `killPure` extrinsic as shown. See [source code: `killPure` implementation](https://github.com/opentensor/subtensor/blob/main/pallets/proxy/src/lib.rs#L380-L406):
96
96
97
97
1. Go to **Developer** → **Extrinsics**.
98
98
2. Under “using the selected account”, choose the pure proxy account.
@@ -114,6 +114,6 @@ Killing a pure proxy permanently deletes the account and releases its reserved d
114
114
## Troubleshooting
115
115
116
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.
117
+
-`proxy.NotProxy`: Ensure you're executing the pure proxy correctly—from the creator account and referencing the pure proxy account as `real`. See [source code: `NotProxy` error](https://github.com/opentensor/subtensor/blob/main/pallets/proxy/src/lib.rs#L735).
118
+
-`Proxy.NoPermission`: The `killPure` call is not permitted under the current. See [source code: `NoPermission` error](https://github.com/opentensor/subtensor/blob/main/pallets/proxy/src/lib.rs#L741).
119
119
-`system.CallFiltered`: The call is not permitted under the current `ProxyType`.
0 commit comments