-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
Description
Stages was removed in M4 for number of reasons.
API wise:
- Turns out timing constraints can depend on state, so
Stagescannot be used to implement for example vesting - They complicate CEMScript class and in conversations it seem to be an issue for understanding API
Implementation wise:
- Plutus has problems with nested type families, needs hacks to work with that
- Without
Stagesnow user can completely remove Plutus compilation step (if they want to). - Probably would increase script size and in general bring different compilation path/API from all other constraints
Proposed solution:
- Create new
CheckIntervalconstraint. Enforce single such constraint per transition. - One could add
Stringnames to them, to discover "StageofTransition"-like labels on state graph , if one wants to.