devsper-scheduler
Scheduler facade over devsper-graph's GraphHandle. Provides a task-scheduling API oriented around the executor's needs: get ready nodes, claim one, mark done or failed.
The scheduler does not own state — all state lives in the GraphActor. This makes it safe to create multiple Scheduler instances from the same GraphHandle.
Usage
[]
= "0.1"
use Scheduler;
use ;
let = spawn;
let scheduler = new;
// Poll for work
let ready = scheduler.get_ready.await;
// Race to claim — only one executor wins
if scheduler.claim.await
Distributed claiming
claim() is optimistic and race-safe. Multiple worker nodes can call it simultaneously; only the first to succeed executes the node. This is the foundation for distributed execution across a devsper-cluster.
License
GPL-3.0-or-later — see repository.