schedule

fun schedule(parent: GroupId): Int

Run allocation rounds at parent until nothing more can be delegated: build the policy input from the active children, their EdgeSummarys, and the folded live demand, then apply each HeddlePolicy.pick grant to the ledger before the next round (design §7.3). A bad local decision only misplaces entitlement — it can never create any, so partitioned peers may schedule divergently and still converge on heal.

Return

the count of grants applied this call.