A soft fork is almost always safe,
Not true.
Soft forks generally require a significant
majority of the hash power to all run the new software.
If a significant
minority of the hash power is running the new software, then the chain will fork.
If there is a
nearly even split of hash power between the old and new software, then it will be a complete disaster for those running the new software. They will risk seeing transactions with many confirmations simply vanish. Miners on the new software will carry significant risk of losing revenue.
This is why soft forks generally will have a method for miners to announce in their blocks that their software has been upgraded and the software will generally have a "trigger" that requires a significant percentage of blocks to all include the announcement before the new changes take effect.
Lets look at the scenarios...
Soft fork with a significant majority of the hash power:
Miners on the new software create blocks faster than miners on the old software. Since the change is backwards compatible, miners on the old software accept these blocks. Since the old software is not "forward compatible", if any miner on the old software creates a block it will be ignored by all the miners on the new software. Miners on the new software will just build on top of the most recent new-software-compatible block. Once a few new-software-compatible blocks have been created, the chain will be longer than the blocks that have been added by miners that are still running the old software. Since the change is backwards compatible, all miners on the old software accept this new longer chain and orphan the few old-software blocks. In this way, the new software enforces the new rules. Miners running the old software have a HUGE incentive to upgrade to the new software, since ALL of their blocks will get orphaned, and they won't be able to earn any block rewards until they upgrade. Continuing to mine on the old software is a HUGE waste of time, money, and resources.
Soft fork with a significant minority of the hash power:
A miner on the new software gets lucky and creates a block. Since the change is backwards compatible, all miners accept this block. Since the old-software miners have the majority of the hash power, they eventually mine a block. All miners on the new software ignore this new block. All miners on the old software accept this new block and build on top of it. The miners on the old software mine several blocks on top of that. This forms an old-software-fork. Meanwhile, miners on the new software do not see any of these old-software blocks. They continue to build on top of the one new-software block. Since the old-software miners have much more hash power, their fork is always longer than the new-software fork. Therefore, the old-software miners never switch over to the shorter new-software fork. Meanwhile, since the new-software miners are attempting to enforce the new rule, they see the longer old-software fork as invalid and never switch over to it. Merchants and users that continue to run the old software will ONLY see transactions that occur on the old-software fork. Merchants and users that upgrade to the new software will ONLY see transactions that occur on the new-software fork.
Soft fork with a nearly even amounts of the hash power:
The same scenario as the "soft fork with a significant minority" EXCEPT that, due to luck, occasionally the old-software fork will grow longer than the new-software fork. When that happens, all users, merchants, and miners that are running the new software will switch to the longer old-software fork. All transactions that were confirmed in the new-software fork will immediately lose all their confirmations. Many of those transactions will invalid on the old-software fork and will therefore vanish. Then eventually a miner running the new software will solve a block and another new-software fork will begin again (until the old-software fork gets lucky enough to exceed the new-software fork in length and the whole process begins again). Additionally, miners running the new software have a HUGE incentive to downgrade to the old software, since their blocks are likely to eventually get orphaned they are likely to lose block rewards until they upgrade. Continuing to mine on the new software is a HUGE risk of wasting time, money, and resources.