completenginecom
completethe unfinishedfuture
A concurrent event simulation engine where queues, locks, forks, and callbacks become one deterministic completion.
touch the wheel · scroll to advance ticks
phase 01 / fork futures
spawn three futures
Promises split into bright fibers, carry separate clocks, and keep their causality pinned to the loom.
evt.spawn({ futures: 3, drift: bounded })
phase 02 / scheduler loom
choose the next tick
The timing wheel rotates through hungry callbacks while queue spools compress pending work into a readable cadence.
q:readyq:blockedq:deferred
phase 03 / race chamber
race without collision
Magenta contenders flash at the switch, cyan paths bend around each other, and the mutex clasp holds the unsafe branch.
race.detected → lock.hold(18ms)
phase 04 / resolver gate
merge without losing causality
Resolver teeth turn amber as fibers snap into a single completion band and pending ghosts become committed events.
waitGroup.done === futures.length
phase 05 / completion stamp
complete
The replay closes the open loop: every branch accounted for, every callback settled, every ending aligned on the final tick.
COMPLETE