How are forks resolved?

I understand forks can only be generated by an account owner who owns the key to sign transactions, but I'm curious about the technical details of how they are resolved. In general terms the original whitepaper discusses how each representative node will vote on the block that it sees first and once quorum is reached on one of the forks it will be the block confirmed and stored in the ledger. But with PoW priority and active transactions how is this handled, is it any different?

For example, someone sends one block at 1x PoW multiplier, and then creates a fork at 5x PoW multiplier. If the nodes are saturated and PoW is being prioritized would that impact which block nodes vote on or would they store whichever block they see first and only that one would enter the active transactions queue on that node?

2 Likes

Every node holds only an unforked chain of confirmed blocks per address.

Every node makes its own decision on when to mark a block as confirmed, and once done, never reverses that decision. On an unmodified node, that's, by default, when it sees 50% of online votes in a block's favour, with a minimum threshold of 60m votes of a possible 133m.