TxChildKeyTakeRateLimitSet
Event Re-added v195 → v219, v233 → v247, v252 → v265, v273 → v277, v290 → current #41Emitted when child key take rate limit is changed.
View events on chainThe Big Picture
Child keys can't change their take (commission) constantly - they're rate limited. This protects against take manipulation where a child might lower take to attract stake then immediately raise it. The rate limit ensures stability and gives stakeholders time to react to any changes.
Why This Matters
If you're a child key wanting to change your take, you must wait until the rate limit allows. As a delegator, rate limits protect you from rapid take changes. Changes to this limit affect how quickly child keys can adjust their commission.
Example Scenario
Child key take rate limit was 1000 blocks. To prevent frequent manipulation, it's increased to 5000 blocks. TxChildKeyTakeRateLimitSet fires. Child keys must now wait ~5000 blocks between take changes instead of ~1000. More stability for stakeholders.
Common Questions
- Does this affect parent (delegate) take limits?
- No, delegate take has its own rate limit (TxDelegateTakeRateLimit). Child key and delegate take limits are separate parameters.
- Can I check my current take change cooldown?
- Track when you last changed take and compare to the rate limit. You can change again when blocks_since_last_change >= rate_limit.
- Why have separate rate limits for child and delegate take?
- Different relationships have different trust dynamics. Child-parent relationships may need different protections than delegate-delegator relationships.
Use Cases
- Track child key take change frequency limits
- Plan child key take adjustments around rate limits
- Monitor validator organization policy changes
- Build take management tools
How to Use This Event
- → Monitor rate limit changes affecting child key economics
- → Track governance policies for validator structures
- → Build rate-limit-aware take management tools
From Chain Metadata
setting the childkey take transaction rate limit.
Triggers
Emitted by
Preconditions
- Caller has admin/sudo privileges
Effects
Storage Modified
Postconditions
- Rate limit for child key take changes updated
Side Effects
- Child keys must wait between take changes
Event Data
| # | Name | Type | Description |
|---|---|---|---|
| 0 | arg0 | u64 | Event field #0 (u64) |
Code Examples
import { ApiPromise, WsProvider } from "@polkadot/api";
import { stringCamelCase } from "@polkadot/util";
const provider = new WsProvider("wss://entrypoint-finney.opentensor.ai:443");
const api = await ApiPromise.create({ provider });
// Subscribe to TxChildKeyTakeRateLimitSet events
api.query.system.events((events) => {
events
.filter(({ event }) =>
event.section === stringCamelCase("SubtensorModule") &&
event.method === "TxChildKeyTakeRateLimitSet"
)
.forEach(({ event }) => {
console.log("TxChildKeyTakeRateLimitSet:", event.data.toHuman());
});
});Version History
Runtime Info
View Source- Pallet Index
- 7
- Event Index
- 41
- First Version
- v195
- Current Version
- v393