In the first case, it does seem a lot more reasonable to interrupt and trade-off the productivity of the blocker in favor of the blockee. At worst, that's an even trade and at best it incentivizes not being a blocker.
In the second case, I'd rather not create a distributed denial of concentration scenario for SWEs who are rarely stuck to optimize for those who are more frequently stuck.