On 02/11/15 14:33, Gavin Andresen via bitcoin-dev wrote: > I like those guidelines, although I'm sure there may be lots of arguing > over what fits under "protects the integrity of the network" or what > constitutes "reasonable notice" (publish a BIP at least 30 days before > rolling out a change? 60 days? a year?) If Bitcoin were perfect. then it would be the case that any transaction that was valid at the time it was signed would always remain valid until spent regardless of any protocol changes which occurred in the interim. Certainly, that property, if it was possible to achieve, would give Bitcoin maximum possible utility compared to alternative properties. There are cases in which that guarantee can be met, and there are some pathological cases where it can not be met. It's not possible to know if the pathological cases are actually a real problem in practice, because the possible existence of unbroadcast transactions which would trigger them is unknowable. A possible lazy/optimistic strategy is to implement as much non-pathological backward compatibility as possible, and treat unhandled cases as outstanding bugs whose resolution is deferred unless and until they are actually triggered.