def requirements
import bendvy-ecs-core@0.1.0.4/schedule_provision.bend as ScheduleProvisionimport Base
64# Collect authored requirements left before right, retaining duplicates.
65# build deduplicates this list for its provisioned schedule.
66def requirements(~S: Data,plan: Plan<S>) -> List<&2,Requirement<S>>:
67 match plan:
68 case Empty{}: []
69 case Entry{_,needs}: needs
70 case Sequence{left,right}: List.append(&2,Requirement<S>,requirements(~S,left),requirements(~S,right))