On May 15th, 2018, Logan and Philippe hosted a webinar about the latest concept of the claiming mechanism for the Chronos protocol. You can view it at https://youtu.be/GL7jG-eBxnY
They walked through the prior claiming mechanism in the Ethereum Alarm Clock and talked about why ChronoLogic decided to do something different in Chronos. The hosts showed from a high level perspective, the current design of the mechanism and talked about steps for implementation.
In Chronos, ChronoLogic uses the DAY Token as a staking token for the TimeNodes to prioritize certain executions based on the amount of DAY held.
17. X
50 DAY
Y
175 DAY
Z1
200 DAY
Z2
100 DAY
SCHEDULER
ScheduledTransaction
ScheduledTransaction
ScheduledTransaction
ScheduledTransaction
18. TimeNode
X
Bal: 0 DAY
TimeNode
Y
Bal: 0 DAY
TimeNode
Z
Bal: 0 DAY
X
50 DAY
Y
175 DAY
Z1
200 DAY
Z2
100 DAY
ScheduledTransaction
ScheduledTransaction
ScheduledTransaction
ScheduledTransaction
19. TimeNode
X
Bal: 0 DAY
TimeNode
Y
Bal: 0 DAY
TimeNode
Z
Bal: 0 DAY
X
50 DAY
Y
175 DAY
Z1
200 DAY
Z2
100 DAY
ScheduledTransaction
ScheduledTransaction
ScheduledTransaction
ScheduledTransaction
Window Start:
4500
Window Start:
7000
Window Start:
6000
Window Start:
5500
20. TimeNode
X
Bal: 0 DAY
TimeNode
Y
Bal: 0 DAY
TimeNode
Z
Bal: 0 DAY
X
50 DAY
Y
175 DAY
Z1
200 DAY
Z2
100 DAY
ScheduledTransaction
ScheduledTransaction
ScheduledTransaction
ScheduledTransaction
Window Start:
4500
Window Start:
7000
Window Start:
6000
Window Start:
5500
21. TimeNode
X
Bal: 0 DAY
TimeNode
Y
Bal: 0 DAY
TimeNode
Z
Bal: 200
DAY
X
50 DAY
Y
175 DAY
Z2
100 DAY
ScheduledTransaction
ScheduledTransaction
ScheduledTransaction
Window Start:
7000
Window Start:
6000
Window Start:
5500
22. TimeNode
X
Bal: 0 DAY
TimeNode
Y
Bal: 0 DAY
TimeNode
Z
Bal: 200
DAY
X
50 DAY
Y
175 DAY
Z2
100 DAY
ScheduledTransaction
ScheduledTransaction
ScheduledTransaction
Window Start:
7000
Window Start:
6000
Window Start:
5500
23. TimeNode
X
Bal: 50 DAY
TimeNode
Y
Bal: 0 DAY
TimeNode
Z
Bal: 200
DAY
Y
175 DAY
Z2
100 DAY
ScheduledTransaction
ScheduledTransaction
Window Start:
7000
Window Start:
6000
24. TimeNode
X
Bal: 50 DAY
TimeNode
Y
Bal: 0 DAY
TimeNode
Z
Bal: 200
DAY
Y
175 DAY
Z2
100 DAY
ScheduledTransaction
ScheduledTransaction
Window Start:
7000
Window Start:
6000
25. TimeNode
X
Bal: 50 DAY
TimeNode
Y
Bal: 0 DAY
TimeNode
Z
Bal: 200
DAY
Y
175 DAY
Z2
100 DAY
ScheduledTransaction
ScheduledTransaction
Window Start:
7000
Window Start:
6000
At block
6025
32. Problems
- Miner front running. The miner can see when a new ScheduledTransaction
comes in with a very high bounty and can order the transactions in the block
so that any TimeNodes joining in the same block could be at a disadvantage.
- If n of ScheduledTransactions > the number of claims in Queue, not all of
those transactions will be claimed. This may not actually be a problem, since
a schelling point could be reached between TimeNodes.