One job, many hands.
A relay carries one job through several resources, in order, with gaps. A leg is asked, never taken: each hand says yes, no, or ‘at this time instead’.
The cast.
Hours 06–23 shown.
Each is a World with its own bit strip. A planner World runs the relay.
The story in seven steps.
-
01 take in hands
The planner copies each hand’s busy time.
makerprintercourier -
02 lay relay
maker 4h — gap 2 → printer 2h — gap 3 → courier 1h.
maker · 4 hgap 2
printer · 2 hgap 3
courier · 1 h -
03 windows
Every start where all legs fit, in one AND over every hand’s free bits: 9, 10, 11, 12.
starts -
04 ask @ 9
One ask per leg. Nothing is held until each hand says yes.
makerprintercourier -
05 sync
maker held · printer refused · courier held.
makerprintercourier -
06 delegate leg 1 → printer2
Ask another hand for that leg, at the same slots. printer2 accepts.
printerprinter2 -
07 sync
All held.
makerprinter2courier
withdraw takes every ask and every held leg back, on every record.
held or busy asked, laid out, or a window refused
Standing, read off the record.
- leg statesone per leg
- unasked
- asked
- held
- refused
- withdrawn
- released
- relay statethe whole relay
- mixed
- possiblethe acts allowed now
- ask
- sync
- withdraw
- delegate
The hand’s side: the inbox.
accept claims through the hand’s own door, so it can be refused too.
| GET | /v1/worlds/{w}/asks | what planners want of you |
| POST | /v1/worlds/{w}/asks/{token}/answer | accept · reject · takeBack · moveTo |
- accept
- reject
- takeBack
- moveTo
Across organisations Coming soon
Today a relay’s hands must be in the planner’s workspace.
POST /v1/worlds/planner/relays
{
"name": "order-17",
"legs": [
{
"hand": "maker",
"length": 4,
"gapAfter": 2
},
{
"hand": "printer",
"length": 2,
"gapAfter": 3
},
{
"hand": "courier",
"length": 1
}
]
}