Author: Chris Priest 2015-12-08 22:27:48
Published on: 2015-12-08T22:27:48+00:00
In the world of Bitcoin, wallets don't receive transactions from other wallets, nodes do. In the early days of Bitcoin, all wallets were nodes, but now most wallets are just wallets without any specific node. The nature of the work that nodes perform is such that they should broadcast what features they support. Nodes that don't produce blocks are kind of just there, serving whoever happens to connect. Vincent Truong proposed that wallet devs indicate if they are ready for soft forks, hard forks or features by testing them and validating that they don't break their nodes or wallet software. Chris Priest proposed in his Wildcard Inputs BIP that the version field be split into two, with the first 4 bytes used for version number and the second 4 bits used for transaction type. He believes that a new transaction feature should get a new "type" number and that any new feature can't happen until the nodes support it. Vincent Truong suggested extending/copying isSupermajority() for a new secondary/non-critical function to also look for a similar BIP 9 style version bit in txns. If a majority of transactions have been sent and flagged as ready, it would indicate that they're good to go.
Updated on: 2023-06-11T01:52:30.384549+00:00