Duplicate Child

How the DuplicateChild error blocks a schedule_children call that lists the same child hotkey more than once for a parent on a subnet.

DuplicateChild is a documented Subtensor standard error raised by the schedule_children extrinsic. The standard-errors reference describes it as “Duplicate child when setting children” (Subtensor Standard Errors).

What It Means

A schedule_children call submits a full list of child hotkeys for a parent on a subnet, each paired with its own stake proportion. do_schedule_children scans that list for repeats before accepting it, and raises DuplicateChild as soon as it finds the same child hotkey listed a second time (Subtensor source: set_children.rs).

The scan looks only at the child identities in the submitted list. It does not compare the list against any existing children already recorded for the parent; a brand-new list with an internal repeat fails the same way a list that happens to repeat an existing child would (Subtensor source: set_children.rs).

Why It Appears

do_schedule_children runs this duplicate scan after confirming the rate limit, subnet existence, and coldkey ownership, and before it checks the list against the broader consistency rules that also cover the five-child cap and the proportion total. A list built by merging child entries from more than one source, where the same hotkey ends up added twice, fails here before those later checks are ever reached (Subtensor source: set_children.rs).

Distinction from Too Many Children

DuplicateChild and TooManyChildren both inspect the same submitted child list but at different points. DuplicateChild is a single, early scan inside do_schedule_children for repeated entries. TooManyChildren is a separate, later count check against the five-child limit, and unlike DuplicateChild it also applies when a hotkey swap re-validates a parent’s existing child relations, not only when new children are first scheduled (Too Many Children, Subtensor source: set_children.rs).

  • DuplicateChild — the same child hotkey is listed more than once in one call.
  • TooManyChildren — the (deduplicated) child list still has more than five entries.

Reader Boundary

This page defines the meaning of the error label and the duplicate scan that raises it. It does not describe how child hotkeys are scheduled, how child take is calculated, or the consistency checks that run after this scan; those are documented separately (Child Hotkeys, Subtensor source: set_children.rs).

Further Reading

Topics StakingErrors