Pull requests (PR) are requests to modify code. No longer all requests to modify code are associated with the validity of blocks or transactions. As Pietter Wuille stated, just a very small share of PR do.
When code introduces a transformation within the laws of validity, we’ve a fork.
If nodes that don’t improve to the brand new code are nonetheless in a position to imagine the brand new blocks legitimate, we’ve a comfortable fork. If no longer, we’ve a troublesome fork.
Most of the time of thumb, everytime the PR thightens some rule, we’ve a comfortable fork. If the PR loosens some rule, we’ve a troublesome fork, but it surely must be analyzed case via case.
As an example, an building up of block measurement (ex: 10 MB) can be a troublesome fork, since previous nodes would no longer settle for the brand new blocks (they’re too large). However, if the trade used to be to lower the block measurement (ex: 0.5MB) that might be a comfortable fork, since previous nodes would nonetheless settle for the brand new blocks.