.Schedule and .ScheduleParallel have an optional JobHandle parameter, but trying to schedule a ForEach after an arbitrary job gives an error clusterfluck.
InvalidOperationException: The previously scheduled job DetectIdleAgentSystem:smile:etectIdleAgentJob writes to the NativeArray DetectIdleAgentJob.needsPath. You must call JobHandle.Complete() on the job DetectIdleAgentSystem:smile:etectIdleAgentJob, before you can write to the NativeArray safely.
Only calling .Complete() on the job and scheduling without a dependency makes ForEach to work