Trying to understand a job error

So i setup this fairly simply script to try out IJobEntity (instead of the simpler foreach loop). After using ScheduleParallel() like in the docs, i decided to try Run() but started getting spammed with errors that i’m missing something even though this is the only system i have operating over this entity:

Here’s the code:

using Unity.Entities;
using Unity.Mathematics;
using Unity.Transforms;
using Unity.Collections;
using Unity.Burst;

public partial struct SateliteSystem : ISystem
{
    EntityQuery query;

    public void OnCreate(ref SystemState state)
    {
        var builder = new EntityQueryBuilder(Allocator.Temp);
        builder.WithAll<SateliteComponent>();
        builder.WithAllRW<Translation>();
        builder.WithAllRW<Rotation>();
        query = builder.Build(ref state);
    }

    public void OnDestroy(ref SystemState state)
    {
    }

    public void OnUpdate(ref SystemState state)
    {
        var dt = SystemAPI.Time.DeltaTime;

        new TestJob{ deltaTime = dt }.Run(query);
    }
}

[BurstCompile]
public partial struct TestJob : IJobEntity
{
    public float deltaTime;

    void Execute(ref Translation transform)
    {
        transform.Value += new float3(0, 1 * deltaTime, 0);
    }
}

Here’s the full error:

You have to call state.CompleteDependency(); before running a job in a struct implementing ISystem

Great, that does stop the errors!

And I’m guessing this is just for when i’m using Run(), not when i’m using the various Schedule…() methods?

Not seeing much info on this (or ISystem) on the docs