loop://root.tick 00:00:01.337

events complete when causality closes

A living simulator for futures that fork, wait, collide, and finally agree on one trace.

vc12081903
spawn → queue
actor.alpha
mailbox.beta
queue.gamma
await.delta
scheduler.sort(stable, lamport)

unclaimed sparks drift into visible lanes

Every capsule carries a timestamp and a promise: wait without disappearing, advance without lying about order.

race window
Δt < quantum / contested

simultaneous pulses overlap without becoming a grid

The engine lets uncertainty glow before it chooses a deterministic path.

vc212122
resolve
JOIN
deadlock_hint: released / semaphore: open

a deadlock untangles into one causal braid

Branches fold inward, locks leave negative space, and the trace becomes explainable after the collision.

complete
trace.commit / all actors quiescent

the event loop leaves a quiet afterimage

Completion is not the absence of motion. It is motion with every cause accounted for.

await token.e37 fork actor.beta race resolved