Like most Staking models, the program can indeed run for certain time-periods. For v1 dDAFI we will likely run the program for 1 month, before extending it further.
To create a lightweight architecture, we’re able to track users rewards through weights.
It calculates how much dDAFI is being distributed within the elapsed time per staked DAFI across the entire pool. It is then added to an ongoing pool weight.
Each time any user behaves within the protocol, by staking, unstaking or claiming, the weight is recalculated for the whole network. One user simply acts, and everyone is synchronised.