Subject protocol-level types to versioning
Opened this issue · 1 comments
tiller-tolbus commented
To allow for the possibility of protocol upgrades, protocol-level types need to be handled in such a way that manual action is not required for a node to be compliant with a pending upgrade.
Typically this would be done by adding numbers to the names of our types, such as $block-0
, $txn-0
, etc.
Because %token
aims to be kelvin-versioned, we may want to consider counting down from the Hoon version of each type. Ex. $block-139
, $txn-139
.
We also may want to consider handling the versioning at a different level from usual, such as in the name of the .hoon
file. Ex. /sur/token-139/hoon
.
sigilante commented
See vanes (e.g. Ames) for examples of upgrade arms as well, which sequester the logic as necessary.